On Thu, Aug 9, 2012 at 1:26 AM, Felipe Balbi <ba...@ti.com> wrote:
> I have applied this one instead:
>
> commit a3ab51013e6af38b3e2f9f20bf469cf8c595391b
> Author: Michael Grzeschik <m.grzesc...@pengutronix.de>
> Date:   Wed Aug 8 11:48:10 2012 +0200
>
>     usb: gadget: u_ether: fix kworker 100% CPU issue with still used 
> interfaces in eth_stop
>
>     This patch fixes an issue introduced by patch:
>
>         72c973d usb: gadget: add usb_endpoint_descriptor to struct usb_ep
>
>     Without this patch we see a kworker taking 100% CPU, after this sequence:
>
>     - Connect gadget to a windows host
>     - load g_ether
>     - ifconfig up <ip>; ifconfig down; ifconfig up
>     - ping <windows host>
>
>     The "ifconfig down" results in calling eth_stop(), which will call
>     usb_ep_disable() and, if the carrier is still ok, usb_ep_enable():
[snip]
> does it solve the issue you found ?

I have verified that it solves the simple up/down/up kworker hang,
which was the only problem I actually saw on my board.  So for that
problem:

Tested-by: Kevin Cernekee <cerne...@gmail.com>


I'm not sure if it solves the various other (hypothetical?) races in
u_ether between up/down and connect/disconnect.  It might be
interesting to run ifconfig up/down in a loop overnight, while
toggling VBUS every couple of seconds.
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to