usb: gadget: udc: Potential Oops in error handling code
[ Upstream commit5.4-rM2-2.2.x-imx-squashede55f3c37cb
] If this is in "transceiver" mode the the ->qwork isn't required and is a NULL pointer. This can lead to a NULL dereference when we call destroy_workqueue(udc->qwork). Fixes:3517c31a8e
("usb: gadget: mv_udc: use devm_xxx for probe") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Felipe Balbi <balbi@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
parent
a3a86515d0
commit
56ee0ed97d
|
@ -2313,7 +2313,8 @@ static int mv_udc_probe(struct platform_device *pdev)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_create_workqueue:
|
err_create_workqueue:
|
||||||
destroy_workqueue(udc->qwork);
|
if (udc->qwork)
|
||||||
|
destroy_workqueue(udc->qwork);
|
||||||
err_destroy_dma:
|
err_destroy_dma:
|
||||||
dma_pool_destroy(udc->dtd_pool);
|
dma_pool_destroy(udc->dtd_pool);
|
||||||
err_free_dma:
|
err_free_dma:
|
||||||
|
|
Loading…
Reference in New Issue