]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: gadget: gadgetfs: Free memory allocated by memdup_user()
authorMario Schuknecht <mario.schuknecht@dresearch-fe.de>
Tue, 16 Dec 2014 07:58:57 +0000 (08:58 +0100)
committerLuis Henriques <luis.henriques@canonical.com>
Thu, 22 Jan 2015 15:42:53 +0000 (15:42 +0000)
commit b44be2462dbe3e23f0aedff64de52a1e8e47a1cd upstream.

Commit 3b74c73f8d6f053f422e85fce955b61fb181cfe7 switched over to memdup_user()
in ep_write() function and removed kfree (kbuf).
memdup_user() function allocates memory which is never freed.

Fixes: 3b74c73 (usb: gadget: inode: switch over to memdup_user())
Signed-off-by: Mario Schuknecht <mario.schuknecht@dresearch-fe.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
[ luis: backported to 3.16:
  - file rename: drivers/usb/gadget/legacy/inode.c ->
    drivers/usb/gadget/inode.c ]
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
drivers/usb/gadget/inode.c

index 2e4ce7704908bc78e4ed2385842a1e6dbec1d59c..c44dc6ef2500dca45dec7355dd2d1b1f2ec2828c 100644 (file)
@@ -450,6 +450,7 @@ ep_write (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
                data->name, len, (int) value);
 free1:
        mutex_unlock(&data->lock);
+       kfree (kbuf);
        return value;
 }