diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 8b478e402f623e1cee997ba4f9f9ae592b218cae..e97989e9186635f57810f715cd22e8ce1ee541b6 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -2585,8 +2585,10 @@ static int nvme_dev_open(struct inode *inode, struct file *file) } nvme_get_ctrl(ctrl); - if (!try_module_get(ctrl->ops->module)) + if (!try_module_get(ctrl->ops->module)) { + nvme_put_ctrl(ctrl); return -EINVAL; + } file->private_data = ctrl; return 0;