On Thursday 29 November 2012 14:06:12 Gerd Hoffmann wrote:
> Add uas_unlink_data_urbs function to cancel in-flight data urbs.
> Moves existing code into a separate function.
>
> Signed-off-by: Gerd Hoffmann <[email protected]>
> ---
> drivers/usb/storage/uas.c | 32 ++++++++++++++++++++++----------
> 1 files changed, 22 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/usb/storage/uas.c b/drivers/usb/storage/uas.c
> index 98b98ee..c348afa 100644
> --- a/drivers/usb/storage/uas.c
> +++ b/drivers/usb/storage/uas.c
> @@ -87,6 +87,25 @@ static DECLARE_WORK(uas_work, uas_do_work);
> static DEFINE_SPINLOCK(uas_work_lock);
> static LIST_HEAD(uas_work_list);
>
> +static void uas_unlink_data_urbs(struct uas_dev_info *devinfo,
> + struct uas_cmd_info *cmdinfo)
> +{
> + unsigned long flags;
> +
> + spin_lock_irqsave(&devinfo->lock, flags);
> + if (cmdinfo->state & DATA_IN_URB_INFLIGHT) {
> + spin_unlock_irqrestore(&devinfo->lock, flags);
Why drop the lock here?
Regards
Oliver
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html