Author: delphij
Date: Mon Aug 30 21:33:33 2010
New Revision: 212028
URL: http://svn.freebsd.org/changeset/base/212028

Log:
  Drain watchdog callouts before detaching.  This prevents a panic while
  unloading the kernel module.
  
  Submitted by: Tom Cough

Modified:
  head/sys/dev/twa/tw_osl_freebsd.c

Modified: head/sys/dev/twa/tw_osl_freebsd.c
==============================================================================
--- head/sys/dev/twa/tw_osl_freebsd.c   Mon Aug 30 21:20:24 2010        
(r212027)
+++ head/sys/dev/twa/tw_osl_freebsd.c   Mon Aug 30 21:33:33 2010        
(r212028)
@@ -903,6 +903,10 @@ twa_shutdown(device_t dev)
        /* Disconnect interrupts. */
        error = twa_teardown_intr(sc);
 
+       /* Stop watchdog task. */
+       callout_drain(&(sc->watchdog_callout[0]));
+       callout_drain(&(sc->watchdog_callout[1]));
+
        /* Disconnect from the controller. */
        if ((error = tw_cl_shutdown_ctlr(&(sc->ctlr_handle), 0))) {
                tw_osli_printf(sc, "error = %d",
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to