mei: prevent unloading mei hw modules while the device is opened.
chrdev_open() increases reference counter on cdev->owner. Instead of assigning the owner to mei subsystem, the owner has to be set to the underlaying HW module (mei_me or mei_txe), so once the device is opened the HW module cannot be unloaded. Cc: <stable@vger.kernel.org> #3.17+ Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a63444375f
commit
154322f473
|
@ -682,7 +682,7 @@ int mei_register(struct mei_device *dev, struct device *parent)
|
|||
/* Fill in the data structures */
|
||||
devno = MKDEV(MAJOR(mei_devt), dev->minor);
|
||||
cdev_init(&dev->cdev, &mei_fops);
|
||||
dev->cdev.owner = mei_fops.owner;
|
||||
dev->cdev.owner = parent->driver->owner;
|
||||
|
||||
/* Add the device */
|
||||
ret = cdev_add(&dev->cdev, devno, 1);
|
||||
|
|
Loading…
Reference in New Issue