diff options
author | Jiri Kosina <jkosina@suse.cz> | 2011-05-20 10:50:13 +0200 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2011-05-20 10:50:13 +0200 |
commit | 6cb4b040795c555c7ab4b1ba29b0dba2b5a42beb (patch) | |
tree | ddc3db5bb24691ecd5da6bbc4dec044d2a4a5e78 /kernel/timeconst.pl | |
parent | HID: assorted usage updates from hut 1.12 (diff) | |
download | linux-6cb4b040795c555c7ab4b1ba29b0dba2b5a42beb.tar.xz linux-6cb4b040795c555c7ab4b1ba29b0dba2b5a42beb.zip |
HID: hiddev: fix race between hiddev_disconnect and hiddev_release
When hiddev_disconnect() runs with chardev open, it will proceed with
usbhid_close(). When userspace in parallel runs the hiddev_release(),
it sees !hiddev->exists (as it has been already set so by
hiddev_disconnect()) and kfrees hiddev while hiddev_disconnect() hasn't
finished yet.
Serialize the access to hiddev->exists and hiddev->open by existancelock.
Reported-by: mike-@cinci.rr.com
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'kernel/timeconst.pl')
0 files changed, 0 insertions, 0 deletions