summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_shutdown.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2001-09-20 06:08:53 +0000
committerpeter <peter@FreeBSD.org>2001-09-20 06:08:53 +0000
commit0a1f1a713eb2578d653ca5dbb0e9488974b6a46c (patch)
treef5ef7c76c6d90d10408c73f53e38ce0b00b0ad33 /sys/kern/kern_shutdown.c
parent0361b322eb6256561590d8d6fafdd872d866d4dd (diff)
downloadFreeBSD-src-0a1f1a713eb2578d653ca5dbb0e9488974b6a46c.zip
FreeBSD-src-0a1f1a713eb2578d653ca5dbb0e9488974b6a46c.tar.gz
decrement the dumping variable after use so we can call it several times
if needed.
Diffstat (limited to 'sys/kern/kern_shutdown.c')
-rw-r--r--sys/kern/kern_shutdown.c10
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;
OpenPOWER on IntegriCloud