mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
USB: memory leak in iowarrior.c
this is a classical memory leak in the ioctl handler. The buffer is simply never freed. This fixes it the obvious way. Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
944dc184f6
commit
fc0f8fc9be
1 changed files with 4 additions and 3 deletions
|
@ -495,8 +495,8 @@ static int iowarrior_ioctl(struct inode *inode, struct file *file,
|
|||
|
||||
/* verify that the device wasn't unplugged */
|
||||
if (!dev->present) {
|
||||
mutex_unlock(&dev->mutex);
|
||||
return -ENODEV;
|
||||
retval = -ENODEV;
|
||||
goto error_out;
|
||||
}
|
||||
|
||||
dbg("%s - minor %d, cmd 0x%.4x, arg %ld", __func__, dev->minor, cmd,
|
||||
|
@ -579,9 +579,10 @@ static int iowarrior_ioctl(struct inode *inode, struct file *file,
|
|||
retval = -ENOTTY;
|
||||
break;
|
||||
}
|
||||
|
||||
error_out:
|
||||
/* unlock the device */
|
||||
mutex_unlock(&dev->mutex);
|
||||
kfree(buffer);
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue