On 20-08-20 20:20:38, Tang Bin wrote: > In the function usb_add_hcd(), usb_phy_roothub_alloc() > can return NULL in some cases, so IS_ERR() doesn't meet > the requirements. Thus fix it. > Signed-off-by: Zhang Shengju <zhangshengju@xxxxxxxxxxxxxxxxxxxx> > Signed-off-by: Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx> > --- > drivers/usb/core/hcd.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c > index aa45840d8..b73a92ee1 100644 > --- a/drivers/usb/core/hcd.c > +++ b/drivers/usb/core/hcd.c > @@ -2633,8 +2633,9 @@ int usb_add_hcd(struct usb_hcd *hcd, > > if (!hcd->skip_phy_initialization && usb_hcd_is_primary_hcd(hcd)) { > hcd->phy_roothub = usb_phy_roothub_alloc(hcd->self.sysdev); > - if (IS_ERR(hcd->phy_roothub)) > - return PTR_ERR(hcd->phy_roothub); > + if (IS_ERR_OR_NULL(hcd->phy_roothub)) > + return hcd->phy_roothub ? > + PTR_ERR(hcd->phy_roothub) : -ENODEV; Many (old) host controller drivers, their PHYs are not seen by software. We may not consider NULL as error. -- Thanks, Peter Chen