summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikhil Badola <nikhil.badola@freescale.com>2015-05-11 07:45:18 (GMT)
committerHonghua Yin <Hong-Hua.Yin@freescale.com>2015-05-13 06:36:13 (GMT)
commite7ae9f858ea2603976a9d326f56c0794cfcaaeba (patch)
treea3b0cdd1c4e6f3906e69ec8bc03338ca2f9b9510
parentc9770fdc0629546a00dff1a1ad2d14a009abeeb7 (diff)
downloadlinux-fsl-qoriq-e7ae9f858ea2603976a9d326f56c0794cfcaaeba.tar.xz
drivers:usb:fsl: Check memory resource before releasing it
Check memory resource existence before releasing it to avoid NULL pointer dereference Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com> Change-Id: I1f34b13e1669a3271250205c788e74b3228477e8 Reviewed-on: http://git.am.freescale.net:8181/36193 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
-rw-r--r--drivers/usb/gadget/fsl_udc_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c
index 12dc799..16aa821 100644
--- a/drivers/usb/gadget/fsl_udc_core.c
+++ b/drivers/usb/gadget/fsl_udc_core.c
@@ -2554,7 +2554,7 @@ static int __exit fsl_udc_remove(struct platform_device *pdev)
dma_pool_destroy(udc_controller->td_pool);
free_irq(udc_controller->irq, udc_controller);
iounmap(dr_regs);
- if (pdata->operating_mode == FSL_USB2_DR_DEVICE)
+ if (res && (pdata->operating_mode == FSL_USB2_DR_DEVICE))
release_mem_region(res->start, resource_size(res));
/* free udc --wait for the release() finished */