diff --git a/drivers/staging/most/aim-cdev/cdev.c b/drivers/staging/most/aim-cdev/cdev.c index d5fb4a0e0818..cfc32dff6512 100644 --- a/drivers/staging/most/aim-cdev/cdev.c +++ b/drivers/staging/most/aim-cdev/cdev.c @@ -124,9 +124,9 @@ static int aim_close(struct inode *inode, struct file *filp) cdev_del(&channel->cdev); kfifo_free(&channel->fifo); list_del(&channel->list); - kfree(channel); ida_simple_remove(&minor_id, MINOR(channel->devno)); wake_up_interruptible(&channel->wq); + kfree(channel); return 0; } mutex_unlock(&channel->io_mutex);