Re: [PATCH v2 1/4] USB: HCD: support giveback of URB in tasklet context

2013-06-25 Thread Ming Lei
On Mon, Jun 24, 2013 at 11:17 PM, Alan Stern st...@rowland.harvard.edu wrote: On Mon, 24 Jun 2013, Ming Lei wrote: This patch implements the mechanism of giveback of URB in tasklet context, so that hardware interrupt handling time for usb host controller can be saved much, and HCD interrupt

Re: [PATCH v2 1/4] USB: HCD: support giveback of URB in tasklet context

2013-06-25 Thread Alan Stern
On Tue, 25 Jun 2013, Ming Lei wrote: + + spin_lock(bh-lock); + list_add_tail(urb-urb_list, bh-head); + if (bh-running) + sched = 0; + else + sched = 1; + spin_unlock(bh-lock); How about calling this variable running instead of sched?

[PATCH v2 1/4] USB: HCD: support giveback of URB in tasklet context

2013-06-24 Thread Ming Lei
This patch implements the mechanism of giveback of URB in tasklet context, so that hardware interrupt handling time for usb host controller can be saved much, and HCD interrupt handling can be simplified. Motivations: 1), on some arch(such as ARM), DMA mapping/unmapping is a bit time-consuming,

Re: [PATCH v2 1/4] USB: HCD: support giveback of URB in tasklet context

2013-06-24 Thread Ming Lei
On Mon, Jun 24, 2013 at 5:42 PM, Ming Lei ming@canonical.com wrote: + +static void init_giveback_urb_bh(struct usb_hcd *hcd) +{ + if (!hcd_giveback_urb_in_bh(hcd)) + return; Sorry, the above check isn't needed, and the below check isn't needed too. I will fix it in

Re: [PATCH v2 1/4] USB: HCD: support giveback of URB in tasklet context

2013-06-24 Thread Alan Stern
On Mon, 24 Jun 2013, Ming Lei wrote: This patch implements the mechanism of giveback of URB in tasklet context, so that hardware interrupt handling time for usb host controller can be saved much, and HCD interrupt handling can be simplified. Changes from v1 to v2? +static void