Don't attempt to trigger the syncer thread final sync code in the

shutdown_pre_sync state if the RB_NOSYNC flag is set.  This is the
likely cause of hangs after a system panic that are keeping crash
dumps from being done.

This is a MFC candidate for RELENG_5.

MFC after:	3 days
This commit is contained in:
truckman 2004-08-20 19:21:47 +00:00
parent 2342e153ab
commit 6250dbb5ce

View File

@ -60,6 +60,7 @@ __FBSDID("$FreeBSD$");
#include <sys/malloc.h>
#include <sys/mount.h>
#include <sys/namei.h>
#include <sys/reboot.h>
#include <sys/sleepqueue.h>
#include <sys/stat.h>
#include <sys/sysctl.h>
@ -1742,6 +1743,8 @@ syncer_shutdown(void *arg, int howto)
{
struct thread *td;
if (howto & RB_NOSYNC)
return;
td = FIRST_THREAD_IN_PROC(updateproc);
sleepq_remove(td, &lbolt);
mtx_lock(&sync_mtx);