diff options
| -rw-r--r-- | drivers/hid/hidraw.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/hid/hidraw.c b/drivers/hid/hidraw.c index 47d70c523d93..9eaf6ae5f97f 100644 --- a/drivers/hid/hidraw.c +++ b/drivers/hid/hidraw.c | |||
| @@ -244,6 +244,10 @@ static long hidraw_ioctl(struct file *file, unsigned int cmd, | |||
| 244 | 244 | ||
| 245 | mutex_lock(&minors_lock); | 245 | mutex_lock(&minors_lock); |
| 246 | dev = hidraw_table[minor]; | 246 | dev = hidraw_table[minor]; |
| 247 | if (!dev) { | ||
| 248 | ret = -ENODEV; | ||
| 249 | goto out; | ||
| 250 | } | ||
| 247 | 251 | ||
| 248 | switch (cmd) { | 252 | switch (cmd) { |
| 249 | case HIDIOCGRDESCSIZE: | 253 | case HIDIOCGRDESCSIZE: |
| @@ -317,6 +321,7 @@ static long hidraw_ioctl(struct file *file, unsigned int cmd, | |||
| 317 | 321 | ||
| 318 | ret = -ENOTTY; | 322 | ret = -ENOTTY; |
| 319 | } | 323 | } |
| 324 | out: | ||
| 320 | mutex_unlock(&minors_lock); | 325 | mutex_unlock(&minors_lock); |
| 321 | return ret; | 326 | return ret; |
| 322 | } | 327 | } |
