Kirill Korotaev <mailto:[EMAIL PROTECTED]> wrote on Monday, January 24, 2005 1:51 AM:
> Hello Rohit, > >> Thanks for sending the detailed information. Based on our experiments >> and analysis, we believe at this point that this is a known E80 issue >> mentioned in the PIII spec update at this location >> (http://www.intel.com/design/pentiumiii/specupdt/24445351.pdf) > >> Could you please try one of the suggested work arounds for this >> issue. > Yes, double cr3 reload and cpuid helps us. But rdtsc doesn't. > I will have to get back to you about rdtsc. > BTW, can you explain why making pages non-global is the cure? Is it > safe workaround for this bug? There is a boundary condition that can have non-global pages containing the CR3 load to also hit this issue on affected PIII. Though for this to happen, mov to cr3 has to be the very last instruction on a page. And the page following that page (containing CR3 load) has to have different mapping between user and kernel spaces. > Double cr3 reload looks a bit unsafe to me, since interrupts or NMI > can > occur between the reloads and probably reuse stale iTLB mappings... Interruptions will ensure that stale mapping don't exist in ITLB fill buffer. So, you are okay with double CR3 laods. Thanks, 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/