|
@@ -250,6 +250,7 @@ void ib_uverbs_release_file(struct kref *ref)
|
|
|
if (atomic_dec_and_test(&file->device->refcount))
|
|
|
ib_uverbs_comp_dev(file->device);
|
|
|
|
|
|
+ kobject_put(&file->device->kobj);
|
|
|
kfree(file);
|
|
|
}
|
|
|
|
|
@@ -917,7 +918,6 @@ err:
|
|
|
static int ib_uverbs_close(struct inode *inode, struct file *filp)
|
|
|
{
|
|
|
struct ib_uverbs_file *file = filp->private_data;
|
|
|
- struct ib_uverbs_device *dev = file->device;
|
|
|
|
|
|
mutex_lock(&file->cleanup_mutex);
|
|
|
if (file->ucontext) {
|
|
@@ -939,7 +939,6 @@ static int ib_uverbs_close(struct inode *inode, struct file *filp)
|
|
|
ib_uverbs_release_async_event_file);
|
|
|
|
|
|
kref_put(&file->ref, ib_uverbs_release_file);
|
|
|
- kobject_put(&dev->kobj);
|
|
|
|
|
|
return 0;
|
|
|
}
|