Module Name: src Committed By: mrg Date: Sat Apr 20 05:53:18 UTC 2019
Modified Files: src/sys/dev/usb: ucom.c umodem_common.c umodemvar.h Log Message: fix umodem(4) detach: - ucom(4) needs kpreempt disabled around softint_schedule() - switch a copied printf() to aprint_error_dev() - use static normally in umodem_common.c - remove unused sc_openings in softc, convert sc_dying to real bool - 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. - umodem_param() and umodem_set() check for sc_dying this fixes pullout out an open ucom@umodem. @skrll. XXX: pullup To generate a diff of this commit: cvs rdiff -u -r1.121 -r1.122 src/sys/dev/usb/ucom.c cvs rdiff -u -r1.26 -r1.27 src/sys/dev/usb/umodem_common.c cvs rdiff -u -r1.9 -r1.10 src/sys/dev/usb/umodemvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.