svn commit: r231188 - stable/9/sys/vm
Alexander Motin
mav at FreeBSD.org
Wed Feb 8 07:30:48 UTC 2012
Author: mav
Date: Wed Feb 8 07:30:48 2012
New Revision: 231188
URL: http://svn.freebsd.org/changeset/base/231188
Log:
MFC 230877:
Fix NULL dereference panic on attempt to turn off (on system shutdown)
disconnected swap device.
This is quick and imperfect solution, as swap device will still be opened
and GEOM will not be able to destroy it. Proper solution would be to
automatically turn off and close disconnected swap device, but with existing
code it will cause panic if there is at least one page on device, even if
it is unimportant page of the user-level process. It needs some work.
Modified:
stable/9/sys/vm/swap_pager.c
Directory Properties:
stable/9/sys/ (props changed)
Modified: stable/9/sys/vm/swap_pager.c
==============================================================================
--- stable/9/sys/vm/swap_pager.c Wed Feb 8 06:56:19 2012 (r231187)
+++ stable/9/sys/vm/swap_pager.c Wed Feb 8 07:30:48 2012 (r231188)
@@ -2521,7 +2521,7 @@ swapgeom_orphan(struct g_consumer *cp)
mtx_lock(&sw_dev_mtx);
TAILQ_FOREACH(sp, &swtailq, sw_list)
if (sp->sw_id == cp)
- sp->sw_id = NULL;
+ sp->sw_flags |= SW_CLOSING;
mtx_unlock(&sw_dev_mtx);
}
More information about the svn-src-stable-9
mailing list