Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

usb: dwc3: qcom: Fix NULL vs IS_ERR checking in dwc3_qcom_probe

Since the acpi_create_platform_device() function may return error
pointers, dwc3_qcom_create_urs_usb_platdev() function may return error
pointers too. Using IS_ERR_OR_NULL() to check the return value to fix this.

Fixes: c25c210f590e ("usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20211222111823.22887-1-linmq006@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Miaoqian Lin and committed by
Greg Kroah-Hartman
b52fe2db 01ec4a2e

+5 -2
+5 -2
drivers/usb/dwc3/dwc3-qcom.c
··· 775 775 776 776 if (qcom->acpi_pdata->is_urs) { 777 777 qcom->urs_usb = dwc3_qcom_create_urs_usb_platdev(dev); 778 - if (!qcom->urs_usb) { 778 + if (IS_ERR_OR_NULL(qcom->urs_usb)) { 779 779 dev_err(dev, "failed to create URS USB platdev\n"); 780 - return -ENODEV; 780 + if (!qcom->urs_usb) 781 + return -ENODEV; 782 + else 783 + return PTR_ERR(qcom->urs_usb); 781 784 } 782 785 } 783 786 }