summaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2018-12-21 23:42:52 +0300
committerFelipe Balbi <felipe.balbi@linux.intel.com>2019-01-14 10:29:55 +0200
commitdf28169e1538e4a8bcd8b779b043e5aa6524545c (patch)
tree86e8a8cfd978923df8a75c6c22387b943cea1184 /drivers/usb
parent88b1bb1f3b88e0bf20b05d543a53a5b99bd7ceb6 (diff)
downloadlinux-df28169e1538e4a8bcd8b779b043e5aa6524545c.tar.bz2
usb: gadget: Potential NULL dereference on allocation error
The source_sink_alloc_func() function is supposed to return error pointers on error. The function is called from usb_get_function() which doesn't check for NULL returns so it would result in an Oops. Of course, in the current kernel, small allocations always succeed so this doesn't affect runtime. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/gadget/function/f_sourcesink.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/function/f_sourcesink.c b/drivers/usb/gadget/function/f_sourcesink.c
index 9cdef108fb1b..ed68a4860b7d 100644
--- a/drivers/usb/gadget/function/f_sourcesink.c
+++ b/drivers/usb/gadget/function/f_sourcesink.c
@@ -838,7 +838,7 @@ static struct usb_function *source_sink_alloc_func(
ss = kzalloc(sizeof(*ss), GFP_KERNEL);
if (!ss)
- return NULL;
+ return ERR_PTR(-ENOMEM);
ss_opts = container_of(fi, struct f_ss_opts, func_inst);