[PATCH] powerpc: Fix SLB flushing path in hugepage
authorDavid Gibson <david@gibson.dropbear.id.au>
Fri, 9 Dec 2005 05:45:17 +0000 (16:45 +1100)
committerPaul Mackerras <paulus@samba.org>
Fri, 9 Dec 2005 05:57:35 +0000 (16:57 +1100)
commit23ed6cb9a237902cce6018a24d1993c346abddb4
treee74b61d6da509fe85f5ec028a47c7e952bdae71a
parentcbf52afdc0eb88492cf7808cc4b4f58a46f1b1ad
[PATCH] powerpc: Fix SLB flushing path in hugepage

On ppc64, when opening a new hugepage region, we need to make sure any
old normal-page SLBs for the area are flushed on all CPUs.  There was
a bug in this logic - after putting the new hugepage area masks into
the thread structure, we copied it into the paca (read by the SLB miss
handler) only on one CPU, not on all.  This could cause incorrect SLB
entries to be loaded when a multithreaded program was running
simultaneously on several CPUs.  This patch corrects the error,
copying the context information into the PACA on all CPUs using the mm
in question before flushing any existing SLB entries.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/mm/hugetlbpage.c