Cache Aliasing

From: Chris Zankel
Date: Thu Mar 16 2006 - 15:36:44 EST


Hi,

I am stuck trying to figure out why the sparc64 implementation for cache aliasing actually works:

From my understanding, any kernel (or driver) function can allocate/free pages with __page_alloc() / free_page(). I couldn't find any place, however, where the cache is flushed in either case, so there might be some residue in the cache.

During allocation of user pages, the sparc64 implementation might temporarily map that page to a cache-coherent location (TLBTEMP_BASE+x) for {clear|copy}_user_page. At that time, however, couldn't there still be dirty lines in the other 'half' of the cache from the previous kernel allocation?

I'd appreciate any direction where I could find more information about this scenario or where I should look in the kernel code.

Thanks,
-Chris

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/