-----Original Message----- From: Hugh Dickins [mailto:[EMAIL PROTECTED] Sent: Friday, April 27, 2007 10:20 PM To: Nick Piggin Cc: [EMAIL PROTECTED]; Mike Stroyan; Andrew Morton; Luck, Tony; [EMAIL PROTECTED]; linux-kernel@vger.kernel.org Subject: Re: Fw: [PATCH] ia64: race flushing icache in do_no_page path
On Sat, 28 Apr 2007, Nick Piggin wrote: > > OIC, you need a virtual address to evict the icache, so you can't > flush at flush_dcache time? Or does ia64 have an instruction to flush > the whole icache? (it would be worth testing, to see how much > performance suffers). IIRC, there is a PAL call to flush the whole cache (but that is quite a heavy call). Though you really don't need to be doing this. >I'm puzzled by that remark: the ia64 flush_icache_range always has a >virtual address, it uses the kernel virtual address; it takes >no interest in whether there's a user virtual address. Caches on Itanium are physical. So, it doesn't matter what virtual address you use to flush a cache line, cache line containing specific physical memory will be flushed. For the cases where you have virtual caches, update_mmu_cache is the API to use. -rohit - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/