Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Jun 2012 08:01:13 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r236503 - in head/sys: amd64/amd64 i386/i386 kern x86/x86
Message-ID:  <201206030801.q5381D7Y043823@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Sun Jun  3 08:01:12 2012
New Revision: 236503
URL: http://svn.freebsd.org/changeset/base/236503

Log:
  free wdog_kern_pat calls in post-panic paths from under SW_WATCHDOG
  
  Those calls are useful with hardware watchdog drivers too.
  
  MFC after:	3 weeks

Modified:
  head/sys/amd64/amd64/minidump_machdep.c
  head/sys/i386/i386/minidump_machdep.c
  head/sys/kern/kern_shutdown.c
  head/sys/kern/vfs_subr.c
  head/sys/x86/x86/dump_machdep.c

Modified: head/sys/amd64/amd64/minidump_machdep.c
==============================================================================
--- head/sys/amd64/amd64/minidump_machdep.c	Sun Jun  3 07:45:42 2012	(r236502)
+++ head/sys/amd64/amd64/minidump_machdep.c	Sun Jun  3 08:01:12 2012	(r236503)
@@ -37,9 +37,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/kernel.h>
 #include <sys/kerneldump.h>
 #include <sys/msgbuf.h>
-#ifdef SW_WATCHDOG
 #include <sys/watchdog.h>
-#endif
 #include <vm/vm.h>
 #include <vm/vm_page.h>
 #include <vm/pmap.h>
@@ -177,9 +175,9 @@ blk_write(struct dumperinfo *di, char *p
 			report_progress(progress, dumpsize);
 			counter &= (1<<24) - 1;
 		}
-#ifdef SW_WATCHDOG
+
 		wdog_kern_pat(WD_LASTVAL);
-#endif
+
 		if (ptr) {
 			error = dump_write(di, ptr, 0, dumplo, len);
 			if (error)

Modified: head/sys/i386/i386/minidump_machdep.c
==============================================================================
--- head/sys/i386/i386/minidump_machdep.c	Sun Jun  3 07:45:42 2012	(r236502)
+++ head/sys/i386/i386/minidump_machdep.c	Sun Jun  3 08:01:12 2012	(r236503)
@@ -36,9 +36,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/kernel.h>
 #include <sys/kerneldump.h>
 #include <sys/msgbuf.h>
-#ifdef SW_WATCHDOG
 #include <sys/watchdog.h>
-#endif
 #include <vm/vm.h>
 #include <vm/pmap.h>
 #include <machine/atomic.h>
@@ -143,9 +141,9 @@ blk_write(struct dumperinfo *di, char *p
 			printf(" %lld", PG2MB(progress >> PAGE_SHIFT));
 			counter &= (1<<24) - 1;
 		}
-#ifdef SW_WATCHDOG
+
 		wdog_kern_pat(WD_LASTVAL);
-#endif
+
 		if (ptr) {
 			error = dump_write(di, ptr, 0, dumplo, len);
 			if (error)

Modified: head/sys/kern/kern_shutdown.c
==============================================================================
--- head/sys/kern/kern_shutdown.c	Sun Jun  3 07:45:42 2012	(r236502)
+++ head/sys/kern/kern_shutdown.c	Sun Jun  3 08:01:12 2012	(r236503)
@@ -66,9 +66,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/sysctl.h>
 #include <sys/sysproto.h>
 #include <sys/vnode.h>
-#ifdef SW_WATCHDOG
 #include <sys/watchdog.h>
-#endif
 
 #include <ddb/ddb.h>
 
@@ -334,9 +332,7 @@ kern_reboot(int howto)
 
 		waittime = 0;
 
-#ifdef SW_WATCHDOG
 		wdog_kern_pat(WD_LASTVAL);
-#endif
 		sys_sync(curthread, NULL);
 
 		/*
@@ -362,9 +358,8 @@ kern_reboot(int howto)
 			if (nbusy < pbusy)
 				iter = 0;
 			pbusy = nbusy;
-#ifdef SW_WATCHDOG
+
 			wdog_kern_pat(WD_LASTVAL);
-#endif
 			sys_sync(curthread, NULL);
 
 #ifdef PREEMPTION

Modified: head/sys/kern/vfs_subr.c
==============================================================================
--- head/sys/kern/vfs_subr.c	Sun Jun  3 07:45:42 2012	(r236502)
+++ head/sys/kern/vfs_subr.c	Sun Jun  3 08:01:12 2012	(r236503)
@@ -73,9 +73,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/syslog.h>
 #include <sys/vmmeter.h>
 #include <sys/vnode.h>
-#ifdef SW_WATCHDOG
 #include <sys/watchdog.h>
-#endif
 
 #include <machine/stdarg.h>
 
@@ -1869,10 +1867,10 @@ sched_sync(void)
 				LIST_INSERT_HEAD(next, bo, bo_synclist);
 				continue;
 			}
-#ifdef SW_WATCHDOG
+
 			if (first_printf == 0)
 				wdog_kern_pat(WD_LASTVAL);
-#endif
+
 		}
 		if (!LIST_EMPTY(gslp)) {
 			mtx_unlock(&sync_mtx);

Modified: head/sys/x86/x86/dump_machdep.c
==============================================================================
--- head/sys/x86/x86/dump_machdep.c	Sun Jun  3 07:45:42 2012	(r236502)
+++ head/sys/x86/x86/dump_machdep.c	Sun Jun  3 08:01:12 2012	(r236503)
@@ -36,9 +36,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/sysctl.h>
 #include <sys/kernel.h>
 #include <sys/kerneldump.h>
-#ifdef SW_WATCHDOG
 #include <sys/watchdog.h>
-#endif
 #include <vm/vm.h>
 #include <vm/pmap.h>
 #include <machine/elf.h>
@@ -198,9 +196,9 @@ cb_dumpdata(struct md_pa *mdp, int seqnr
 			a = pa + i * PAGE_SIZE;
 			va = pmap_kenter_temporary(trunc_page(a), i);
 		}
-#ifdef SW_WATCHDOG
+
 		wdog_kern_pat(WD_LASTVAL);
-#endif
+
 		error = dump_write(di, va, 0, dumplo, sz);
 		if (error)
 			break;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206030801.q5381D7Y043823>