diff options
author | peter <peter@FreeBSD.org> | 2001-09-20 06:08:53 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2001-09-20 06:08:53 +0000 |
commit | 0a1f1a713eb2578d653ca5dbb0e9488974b6a46c (patch) | |
tree | f5ef7c76c6d90d10408c73f53e38ce0b00b0ad33 | |
parent | 0361b322eb6256561590d8d6fafdd872d866d4dd (diff) | |
download | FreeBSD-src-0a1f1a713eb2578d653ca5dbb0e9488974b6a46c.zip FreeBSD-src-0a1f1a713eb2578d653ca5dbb0e9488974b6a46c.tar.gz |
decrement the dumping variable after use so we can call it several times
if needed.
-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; |