Module Name: src Committed By: riastradh Date: Mon Mar 28 12:42:37 UTC 2022
Modified Files: src/sys/dev/usb: ucom.c Log Message: ucom(4): Rework open/close/attach/detach logic. - Defer sleep after hangup until open. No need to make close hang; we just need to make sure some time has passed before we next try to open. This changes the wchan for the sleep. Oh well. - Use .d_cfdriver/devtounit/cancel to resolve races between attach, detach, open, close, and revoke. - Use a separate .sc_closing flag instead of a UCOM_CLOSING state. ucomcancel/ucomclose owns this flag, and it may be set in any state (except UCOM_DEAD). UCOM_OPENING remains owned by ucomopen, which might be interrupted by cancel/close. - Rework error branches in ucomopen. Much simpler this way. - Nix unnecessary reference counting. To generate a diff of this commit: cvs rdiff -u -r1.129 -r1.130 src/sys/dev/usb/ucom.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.