Checking for image[minor].resource != NULL is not needed since all resources are allocated before device is created.
image[minor].users accounting is deleted because it's not being used. Signed-off-by: Dmitry Kalinkin <dmitry.kalin...@gmail.com> Cc: Igor Alekseev <igor.aleks...@itep.ru> --- drivers/staging/vme/devices/vme_user.c | 44 ---------------------------------- 1 file changed, 44 deletions(-) diff --git a/drivers/staging/vme/devices/vme_user.c b/drivers/staging/vme/devices/vme_user.c index 8e46d60..a72f7a9 100644 --- a/drivers/staging/vme/devices/vme_user.c +++ b/drivers/staging/vme/devices/vme_user.c @@ -99,7 +99,6 @@ struct image_desc { struct mutex mutex; /* Mutex for locking image */ struct device *device; /* Sysfs device */ struct vme_resource *resource; /* VME resource */ - int users; /* Number of current users */ int mmap_count; /* Number of current mmap's */ }; static struct image_desc image[VME_DEVS]; @@ -122,46 +121,6 @@ struct vme_user_vma_priv { }; -static int vme_user_open(struct inode *inode, struct file *file) -{ - int err; - unsigned int minor = MINOR(inode->i_rdev); - - mutex_lock(&image[minor].mutex); - /* Allow device to be opened if a resource is needed and allocated. */ - if (minor < CONTROL_MINOR && image[minor].resource == NULL) { - pr_err("No resources allocated for device\n"); - err = -EINVAL; - goto err_res; - } - - /* Increment user count */ - image[minor].users++; - - mutex_unlock(&image[minor].mutex); - - return 0; - -err_res: - mutex_unlock(&image[minor].mutex); - - return err; -} - -static int vme_user_release(struct inode *inode, struct file *file) -{ - unsigned int minor = MINOR(inode->i_rdev); - - mutex_lock(&image[minor].mutex); - - /* Decrement user count */ - image[minor].users--; - - mutex_unlock(&image[minor].mutex); - - return 0; -} - /* * We are going ot alloc a page during init per window for small transfers. * Small transfers will go VME -> buffer -> user space. Larger (more than a @@ -596,8 +555,6 @@ static int vme_user_mmap(struct file *file, struct vm_area_struct *vma) } static const struct file_operations vme_user_fops = { - .open = vme_user_open, - .release = vme_user_release, .read = vme_user_read, .write = vme_user_write, .llseek = vme_user_llseek, @@ -670,7 +627,6 @@ static int vme_user_probe(struct vme_dev *vdev) mutex_init(&image[i].mutex); image[i].device = NULL; image[i].resource = NULL; - image[i].users = 0; } /* Assign major and minor numbers for the driver */ -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/