aboutsummaryrefslogtreecommitdiff
path: root/sys/i386
diff options
context:
space:
mode:
authorStephan Uphoff <ups@FreeBSD.org>2004-12-07 02:56:14 +0000
committerStephan Uphoff <ups@FreeBSD.org>2004-12-07 02:56:14 +0000
commit8b902508c815fa552189c50966a69a04373added (patch)
treee3607e5e45c21a9789fff6dd293953310ca3a6f6 /sys/i386
parentfb805ea785ddb712bcce2a6b2ae91ece90a3ecfa (diff)
downloadsrc-8b902508c815fa552189c50966a69a04373added.tar.gz
src-8b902508c815fa552189c50966a69a04373added.zip
Move reading the current CPU mask in pmap_lazyfix() to where the thread
is protected from migrating to another CPU. Approved by: sam (mentor) MFC after: 4 weeks
Notes
Notes: svn path=/head/; revision=138504
Diffstat (limited to 'sys/i386')
-rw-r--r--sys/i386/i386/pmap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c
index 5a47d874594e..d16bf02123e5 100644
--- a/sys/i386/i386/pmap.c
+++ b/sys/i386/i386/pmap.c
@@ -1276,7 +1276,7 @@ pmap_lazyfix_self(u_int mymask)
static void
pmap_lazyfix(pmap_t pmap)
{
- u_int mymask = PCPU_GET(cpumask);
+ u_int mymask;
u_int mask;
register u_int spins;
@@ -1289,6 +1289,7 @@ pmap_lazyfix(pmap_t pmap)
#else
lazyptd = vtophys(pmap->pm_pdir);
#endif
+ mymask = PCPU_GET(cpumask);
if (mask == mymask) {
lazymask = &pmap->pm_active;
pmap_lazyfix_self(mymask);