Messages in this thread | | | Date | Tue, 24 Aug 1999 19:39:48 +0200 | From | Benjamin Herrenschmidt <> | Subject | Re: Cache incoherencies (WAS: New resources - pls, explain :-( ) |
| |
On Tue, Aug 24, 1999, Philip Blundell <pb@nexus.co.uk> wrote:
>>Non-cache coherent archs should probably >>define a kmalloc flag to allocate non cachable space. (I still don't know >>what is the cleanest way to get non-cachable space. ioremap ?). > >Ioremap won't necessarily work on physical RAM. You should probably define >vmalloc_uncached or some such.
I'm not terribly familiar with Linux VM, and so I'm not completely sure how to implement vmalloc_uncached on ARM. I'm wondering if I need to re-implement all of vmalloc sub-routines (alloc_area_pmd_uncached, alloc_area_pte_uncached) changing the set_pte call to have the appropriate attributes ? (BTW. what's the meaning of L_PTE_BUFFERABLE ?).
or can I just alloc the area and then make pages non-cachable using pte_modify afterwards ? In this case I'm not sure how to walk the PTEs...
Also alloc_are_pte makes several calls to __get_free_page, so I beleive there's no way to make sure they are physically contiguous, is there ? (note that in our case, on page should be plenty enough)
Regards, Benjamin.
-- Perso. e-mail: <mailto:bh40@calva.net> Work e-mail: <mailto:benh@mipsys.com> BenH. Web : <http://calvaweb.calvacom.fr/bh40/>
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |