diff options
author | Oliver Neukum <oliver@neukum.org> | 2008-12-16 10:55:15 +0100 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2009-01-04 01:00:53 +0100 |
commit | 079034073faf974973baa0256b029451f6e768ad (patch) | |
tree | 4f6c083dcf3585e28b7540d7358e3f89bdbc9b0c /block | |
parent | 42859e0bd21daba9974757fcfe4a4dde265fe28d (diff) |
HID: hiddev cleanup -- handle all error conditions properly
This is a cleanup of hiddev and fixes the following issues:
- thread safety by locking in read & ioctl, introducing a per device mutex
- race between ioctl and disconnect, introducing a flag and locking
in form of a per low level device mutex
- race between open and other methods, making sure only successfully
opened devices are put on the list, changing order of events
- range checking both upper and lower limits of the minor range
- make sure further calls to open fail for unplugged devices even if
the device still has opened files
- error checking for low level open
- possible loss of wakeup events, using standard waiting macros
- race in initialisation by moving registration after full initialisation
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions