usb: renesas_usbhs: tidyup for smatch warnings
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 15 Dec 2011 09:53:18 +0000 (01:53 -0800)
committerFelipe Balbi <balbi@ti.com>
Thu, 15 Dec 2011 10:59:17 +0000 (12:59 +0200)
This patch tidyup below smatch complaint

drivers/usb/renesas_usbhs/mod_host.c +642 usbhsh_queue_done()
 warn: variable dereferenced before check 'urb' (see line 636)

Special thanks to Dan

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/renesas_usbhs/mod_host.c

index aa50eaaffcb64fccce0021b1f41390b74209a73f..df8363d252a5d46b8e593115fc82fac46aec618a 100644 (file)
@@ -633,7 +633,6 @@ static void usbhsh_queue_done(struct usbhs_priv *priv, struct usbhs_pkt *pkt)
        struct usbhsh_hpriv *hpriv = usbhsh_priv_to_hpriv(priv);
        struct usb_hcd *hcd = usbhsh_hpriv_to_hcd(hpriv);
        struct urb *urb = ureq->urb;
-       struct usbhsh_ep *uep = usbhsh_ep_to_uep(urb->ep);
        struct device *dev = usbhs_priv_to_dev(priv);
        int status = 0;
 
@@ -651,7 +650,7 @@ static void usbhsh_queue_done(struct usbhs_priv *priv, struct usbhs_pkt *pkt)
        usbhsh_ureq_free(hpriv, ureq);
 
        usbhsh_endpoint_sequence_save(hpriv, urb, pkt);
-       usbhsh_pipe_detach(hpriv, uep);
+       usbhsh_pipe_detach(hpriv, usbhsh_ep_to_uep(urb->ep));
 
        usb_hcd_unlink_urb_from_ep(hcd, urb);
        usb_hcd_giveback_urb(hcd, urb, status);