Re: [rfc] generic allocator and mspec driver

From: Jesse Barnes <jbarnes_at_engr.sgi.com>
Date: 2005-02-04 04:06:53
On Thursday, February 3, 2005 12:38 am, Jes Sorensen wrote:
> Jack> ...  + printk(KERN_WARNING "smp_call_function failed for " +
> Jack> "mspec_ipi_visibility! (%i)\n", status); + } + +
> Jack> sn_flush_all_caches((unsigned long)tmp, IA64_GRANULE_SIZE);
>
> Jack> Don't the TLBs need to be flushed before you flush
> Jack> caches. Otherwise, the cpu may reload data via speculation.
>
> Jack> I dont see any TLB flushing of the kernel TLB entries that map
> Jack> the chunks. That needs to be done.  ...
>
> I thought about this one a fair bit after reading your comments and I
> don't think it's an issue. The pages in the kernel's cached mapping
> are identity mapped which means we shouldn't see any tlbs for this,
> which leaves us with just tlbs for pages that have explicitly been
> mapped somewhere - user tlbs should be removed when a process is shot
> down or pages unmapped and vfree() calls flush_tlb_all(). Or, am I
> missing something?

Even identity mapped regions have TLB entries associated with them.  The 
translation registers only cover the code and static data section, afaik.  
When we take a miss on an identity mapped region, the kernel still does an 
'itc', so you'll still need to purge the TLB.

Jesse
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Feb 3 12:10:43 2005

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:35 EST