Date: Sat, 07 Jan 2012 01:17:30 -0800 From: Doug Barton <dougb@FreeBSD.org> To: Hans Petter Selasky <hselasky@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r228711 - head/sys/dev/usb/controller Message-ID: <4F080DAA.9030109@FreeBSD.org> In-Reply-To: <201112191535.pBJFZ6hY063597@svn.freebsd.org> References: <201112191535.pBJFZ6hY063597@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Is this the change that is causing all the new usb-related messages when shutting down? If so, can it be hidden behind verbose? Doug On 12/19/2011 07:35, Hans Petter Selasky wrote: > Author: hselasky > Date: Mon Dec 19 15:35:05 2011 > New Revision: 228711 > URL: http://svn.freebsd.org/changeset/base/228711 > > Log: > Add code to wait for USB shutdown to be executed at system shutdown. > Add sysctl which can be used to skip this waiting. > > MFC after: 3 days > > Modified: > head/sys/dev/usb/controller/usb_controller.c > > Modified: head/sys/dev/usb/controller/usb_controller.c > ============================================================================== > --- head/sys/dev/usb/controller/usb_controller.c Mon Dec 19 14:55:14 2011 (r228710) > +++ head/sys/dev/usb/controller/usb_controller.c Mon Dec 19 15:35:05 2011 (r228711) > @@ -87,7 +87,12 @@ SYSCTL_INT(_hw_usb_ctrl, OID_AUTO, debug > static int usb_no_boot_wait = 0; > TUNABLE_INT("hw.usb.no_boot_wait", &usb_no_boot_wait); > SYSCTL_INT(_hw_usb, OID_AUTO, no_boot_wait, CTLFLAG_RDTUN, &usb_no_boot_wait, 0, > - "No device enumerate waiting at boot."); > + "No USB device enumerate waiting at boot."); > + > +static int usb_no_shutdown_wait = 0; > +TUNABLE_INT("hw.usb.no_shutdown_wait", &usb_no_shutdown_wait); > +SYSCTL_INT(_hw_usb, OID_AUTO, no_shutdown_wait, CTLFLAG_RDTUN, &usb_no_shutdown_wait, 0, > + "No USB device waiting at system shutdown."); > > static devclass_t usb_devclass; > > @@ -277,11 +282,20 @@ usb_shutdown(device_t dev) > return (0); > } > > + device_printf(bus->bdev, "Controller shutdown\n"); > + > USB_BUS_LOCK(bus); > usb_proc_msignal(&bus->explore_proc, > &bus->shutdown_msg[0], &bus->shutdown_msg[1]); > + if (usb_no_shutdown_wait == 0) { > + /* wait for shutdown callback to be executed */ > + usb_proc_mwait(&bus->explore_proc, > + &bus->shutdown_msg[0], &bus->shutdown_msg[1]); > + } > USB_BUS_UNLOCK(bus); > > + device_printf(bus->bdev, "Controller shutdown complete\n"); > + > return (0); > } > > -- You can observe a lot just by watching. -- Yogi Berra Breadth of IT experience, and depth of knowledge in the DNS. Yours for the right price. :) http://SupersetSolutions.com/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F080DAA.9030109>