Commit 53b670a7 authored by Frank Mori Hess's avatar Frank Mori Hess Committed by Greg Kroah-Hartman

Staging: comedi: fix bug with invalid minor number usage.

Return error instead of segfaulting if user trys to run comedi_config on
a device file with and invalid minor number.

From: Frank Mori Hess <fmhess@users.sourceforge.net>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: David Schleef <ds@schleef.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent a3cb729e
...@@ -104,9 +104,13 @@ static int comedi_ioctl(struct inode *inode, struct file *file, ...@@ -104,9 +104,13 @@ static int comedi_ioctl(struct inode *inode, struct file *file,
const unsigned minor = iminor(file->f_dentry->d_inode); const unsigned minor = iminor(file->f_dentry->d_inode);
struct comedi_device_file_info *dev_file_info = struct comedi_device_file_info *dev_file_info =
comedi_get_device_file_info(minor); comedi_get_device_file_info(minor);
comedi_device *dev = dev_file_info->device; comedi_device *dev;
int rc; int rc;
if (dev_file_info == NULL || dev_file_info->device == NULL)
return -ENODEV;
dev = dev_file_info->device;
mutex_lock(&dev->mutex); mutex_lock(&dev->mutex);
/* Device config is special, because it must work on /* Device config is special, because it must work on
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment