diff options
Diffstat (limited to 'sys/kern/kern_shutdown.c')
-rw-r--r-- | sys/kern/kern_shutdown.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index 61efa8d..d493599 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -485,10 +485,6 @@ dumpsys(void) int error; savectx(&dumppcb); - if (dumping++) { - printf("Dump already in progress, bailing...\n"); - return; - } if (!dodump) return; if (dumpdev == NODEV) @@ -497,10 +493,16 @@ dumpsys(void) return; if (!(devsw(dumpdev)->d_dump)) return; + if (dumping++) { + dumping--; + printf("Dump already in progress, bailing...\n"); + return; + } dumpsize = Maxmem; printf("\ndumping to dev %s, offset %ld\n", devtoname(dumpdev), dumplo); printf("dump "); error = (*devsw(dumpdev)->d_dump)(dumpdev); + dumping--; if (error == 0) { printf("succeeded\n"); return; |