--- - branch: MAIN date: Mon Mar 28 12:44:06 UTC 2022 files: - new: '1.89' old: '1.88' path: src/sys/dev/usb/uhidev.c pathrev: src/sys/dev/usb/uhidev.c@1.89 type: modified id: 20220328T124406Z.18ff0f97e2f0613d9a726e3104d6f3999a93a430 log: | uhidev(9): Fix race between uhidev_close and uhidev_intr. uhidev_intr currently relies on the kernel lock to serialize access to struct uhidev::sc_state, but if the driver's sc_intr function sleeps (which it may do, even though this runs is softint context -- it may sleep on an adaptive lock), uhidev_close might return while the driver's sc_intr function is still in flight. This avoids that race, and makes progress toward MP-safe uhidev. module: src subject: 'CVS commit: src/sys/dev/usb' unixtime: '1648471446' user: riastradh