Merge branches 'upstream' and 'upstream-fixes' into for-linus

This commit is contained in:
Jiri Kosina
2010-10-23 22:44:36 +02:00
13 changed files with 174 additions and 98 deletions

View File

@@ -218,9 +218,13 @@ static int hidraw_release(struct inode * inode, struct file * file)
unsigned int minor = iminor(inode);
struct hidraw *dev;
struct hidraw_list *list = file->private_data;
int ret;
if (!hidraw_table[minor])
return -ENODEV;
mutex_lock(&minors_lock);
if (!hidraw_table[minor]) {
ret = -ENODEV;
goto unlock;
}
list_del(&list->node);
dev = hidraw_table[minor];
@@ -233,10 +237,12 @@ static int hidraw_release(struct inode * inode, struct file * file)
kfree(list->hidraw);
}
}
kfree(list);
ret = 0;
unlock:
mutex_unlock(&minors_lock);
return 0;
return ret;
}
static long hidraw_ioctl(struct file *file, unsigned int cmd,