Messages in this thread | | | Date | Wed, 16 Mar 2011 09:03:16 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH]x86: flush tlb if PGD entry is changed in i386 PAE mode |
| |
On 03/15/2011 11:37 PM, Shaohua Li wrote: > According to intel CPU manual, every time PGD entry is changed in i386 PAE mode, > we need do a full TLB flush. Current code follows this and there is comment > for this too in the code. But current code misses the multi-threaded case. A > changed page table might be used by several CPUs, every such CPU should flush > TLB. > Usually this isn't a problem, because we prepopulate all PGD entries at process > fork. But when the process does munmap and follows new mmap, this issue will be > triggered. When it happens, some CPUs will keep doing page fault. > > See: http://marc.info/?l=linux-kernel&m=129915020508238&w=2 > > Reported-by: Yasunori Goto<y-goto@jp.fujitsu.com> > Signed-off-by: Shaohua Li<shaohua.li@intel.com> > Tested-by: Yasunori Goto<y-goto@jp.fujitsu.com>
Reviewed-by: Rik van Riel <riel@redhat.com>
-- All rights reversed
| |