• B
    usb: musb: Fix bad call to kfree() in musb_free · decadacb
    Brian Downing 提交于
    Commit 62285963 (usb: musb: drop a
    gigantic amount of ifdeferry) included this change:
    
        @@ -1901,11 +1844,7 @@ static void musb_free(struct musb *musb)
                        dma_controller_destroy(c);
                }
    
        -#ifdef CONFIG_USB_MUSB_HDRC_HCD
        -       usb_put_hcd(musb_to_hcd(musb));
        -#else
                kfree(musb);
        -#endif
         }
    
         /*
    
    Since musb comes from struct usb_hcd's hcd_priv, which is allocated on
    the end of that struct, kfree'ing it is not going to work.  Replace
    kfree(musb) with usb_put_hcd(musb_to_hcd(musb)), which appears to be
    the right thing to do here.
    Signed-off-by: NBrian Downing <bdowning@lavos.net>
    Signed-off-by: NFelipe Balbi <balbi@ti.com>
    decadacb
musb_core.c 67.0 KB