Module Name: src Committed By: mrg Date: Mon May 6 23:46:25 UTC 2019
Modified Files: src/sys/dev/usb: uchcom.c Log Message: revert most of: >fix uchcom(4) detach, like umodem(4) recently: > >- use static normally in umodem_common.c >- add sc_refcnt, sc_lock and sc_detach_cv to softc. usage is: > - sc_dying is protected by sc_lock > - sc_detach_cv is matched with sc_lock for cv operations > - sc_refcnt is increased in open and decreased in close, any time > it is decreased, it is checked for less than zero, and a broadcast > performed on sc_detach_cv. detach waits for sc_refcnt > - uchcom_param() and uchcom_set() check for sc_dying > >this fixes pullout out an open ucom@uchcom. it only fixes the issue by chance (slightly delays, which allows task to run, but there is no guarantee. real fix is incoming for all ucom parents. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/sys/dev/usb/uchcom.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.