diff options
author | Alexander Motin <mav@FreeBSD.org> | 2013-04-24 19:00:45 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2013-04-24 19:00:45 +0000 |
commit | c33c978915c9d302134841492e83c3fb449d1625 (patch) | |
tree | 8a7f582a33904f7291a852bfa9f089fb9f846881 /sys/dev | |
parent | 0be23a54cf8e0e33ccc32b6be6e827269a39210a (diff) | |
download | src-c33c978915c9d302134841492e83c3fb449d1625.tar.gz src-c33c978915c9d302134841492e83c3fb449d1625.zip |
Move hptmv and mpt drivers shutdown a bit later to the SHUTDOWN_PRI_LAST
stage of shutdown_post_sync. That should allow CAM to do final cache flush
at the SHUTDOWN_PRI_DEFAULT without using polling magic.
MFC after: 3 days
Notes
Notes:
svn path=/head/; revision=249849
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/hptmv/entry.c | 6 | ||||
-rw-r--r-- | sys/dev/mpt/mpt_pci.c | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/hptmv/entry.c b/sys/dev/hptmv/entry.c index 248d6558579e..cdc3e181f887 100644 --- a/sys/dev/hptmv/entry.c +++ b/sys/dev/hptmv/entry.c @@ -2605,9 +2605,11 @@ launch_worker_thread(void) * hpt_worker_thread needs to be suspended after shutdown sync, when fs sync finished. */ #if (__FreeBSD_version < 500043) - EVENTHANDLER_REGISTER(shutdown_post_sync, shutdown_kproc, hptdaemonproc, SHUTDOWN_PRI_FIRST); + EVENTHANDLER_REGISTER(shutdown_post_sync, shutdown_kproc, hptdaemonproc, + SHUTDOWN_PRI_LAST); #else - EVENTHANDLER_REGISTER(shutdown_post_sync, kproc_shutdown, hptdaemonproc, SHUTDOWN_PRI_FIRST); + EVENTHANDLER_REGISTER(shutdown_post_sync, kproc_shutdown, hptdaemonproc, + SHUTDOWN_PRI_LAST); #endif } /* diff --git a/sys/dev/mpt/mpt_pci.c b/sys/dev/mpt/mpt_pci.c index f1fb018a660e..d6a1d383ea7b 100644 --- a/sys/dev/mpt/mpt_pci.c +++ b/sys/dev/mpt/mpt_pci.c @@ -563,7 +563,7 @@ mpt_pci_attach(device_t dev) } mpt->eh = EVENTHANDLER_REGISTER(shutdown_post_sync, mpt_pci_shutdown, - dev, SHUTDOWN_PRI_DEFAULT); + dev, SHUTDOWN_PRI_LAST); if (mpt->eh == NULL) { mpt_prt(mpt, "shutdown event registration failed\n"); |