svn commit: r208765 - head/sys/i386/i386
Alan Cox
alc at FreeBSD.org
Thu Jun 3 03:55:23 UTC 2010
Author: alc
Date: Thu Jun 3 03:55:22 2010
New Revision: 208765
URL: http://svn.freebsd.org/changeset/base/208765
Log:
In the unlikely event that pmap_ts_referenced() demoted five superpage
mappings to the same underlying physical page, the calling thread would be
left forever pinned to the same processor.
MFC after: 3 days
Modified:
head/sys/i386/i386/pmap.c
Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c Thu Jun 3 02:24:53 2010 (r208764)
+++ head/sys/i386/i386/pmap.c Thu Jun 3 03:55:22 2010 (r208765)
@@ -4540,7 +4540,7 @@ pmap_ts_referenced(vm_page_t m)
rtval++;
if (rtval > 4) {
PMAP_UNLOCK(pmap);
- return (rtval);
+ goto out;
}
}
}
@@ -4569,6 +4569,7 @@ pmap_ts_referenced(vm_page_t m)
PMAP_UNLOCK(pmap);
} while ((pv = pvn) != NULL && pv != pvf);
}
+out:
sched_unpin();
return (rtval);
}
More information about the svn-src-head
mailing list