Searched hist:"4 c0e268adf5c81b1daa772bdd614385c3bca531a" (Results 1 – 1 of 1) sorted by relevance
/freebsd/sys/i386/i386/ |
H A D | vm_machdep.c | diff 4c0e268adf5c81b1daa772bdd614385c3bca531a Wed Oct 12 03:41:48 CEST 2005 Stephan Uphoff <ups@FreeBSD.org> Ensure that a thread stays on same CPU when calculating per CPU TLB shootdown requirements. Otherwise a CPU may not get the needed TLB invalidation.
The PTE valid and access flags can not be used here to avoid TLB shootdowns unless sf->cpumask == all_cpus. ( Otherwise some CPUs may still hold an even older entry in the TLB) Since sf_buf_alloc mappings are normally always used this is also not really useful and presetting accessed and modified allows the CPU to speculatively load the entry into the TLB.
Both bugs can cause random data corruption.
MFC after: 3 days diff 4c0e268adf5c81b1daa772bdd614385c3bca531a Wed Oct 12 03:41:48 CEST 2005 Stephan Uphoff <ups@FreeBSD.org> Ensure that a thread stays on same CPU when calculating per CPU TLB shootdown requirements. Otherwise a CPU may not get the needed TLB invalidation.
The PTE valid and access flags can not be used here to avoid TLB shootdowns unless sf->cpumask == all_cpus. ( Otherwise some CPUs may still hold an even older entry in the TLB) Since sf_buf_alloc mappings are normally always used this is also not really useful and presetting accessed and modified allows the CPU to speculatively load the entry into the TLB.
Both bugs can cause random data corruption.
MFC after: 3 days
|