Hi,
On Fri, 15 Mar 2013 07:39:02, "Felipe Balbi" <[email protected]> wrote:
> Hi,
>
> On Fri, Mar 15, 2013 at 09:25:28AM +0900, UCHINO Satoshi wrote:
>> Without this memory barrier, the file-storage thread may fail to
>> escape from the following while loop, because it may observe new
>> common->thread_wakeup_needed and old bh->state which are updated by
>> the callback functions.
>>
>> /* Wait for the CBW to arrive */
>> while (bh->state != BUF_STATE_FULL) {
>> rc = sleep_thread(common);
>> if (rc)
>> return rc;
>> }
>>
>> Cc: [email protected]
>> Signed-off-by: UCHINO Satoshi <[email protected]>
>
> make sure to add a proper Cc list when sending patches.
> scripts/get_maintainer.pl would have helped with that. Kepping patch
> below so it's easier for Alan and Michal to read
Thank you for taking care of the cc list. I did check MAINTAINERS
scripts/get_maintainer.pl but just didn't know I should add Alan and
Michal.
>> ---
>> drivers/usb/gadget/f_mass_storage.c | 2 ++
>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/usb/gadget/f_mass_storage.c
>> b/drivers/usb/gadget/f_mass_storage.c
>> index fc5c16c..0b6d351 100644
>> --- a/drivers/usb/gadget/f_mass_storage.c
>> +++ b/drivers/usb/gadget/f_mass_storage.c
>> @@ -414,6 +414,7 @@ static int fsg_set_halt(struct fsg_dev *fsg, struct
>> usb_ep *ep)
>> static void wakeup_thread(struct fsg_common *common)
>> {
>> /* Tell the main thread that something has happened */
>> + smp_wmb();
>> common->thread_wakeup_needed = 1;
>> if (common->thread_task)
>> wake_up_process(common->thread_task);
>> @@ -632,6 +633,7 @@ static int sleep_thread(struct fsg_common *common)
>> }
>> __set_current_state(TASK_RUNNING);
>> common->thread_wakeup_needed = 0;
>> + smp_rmb();
>> return rc;
>> }
>>
>> --
>> 1.7.4.1
>>
>>
>> --
>> 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
>
> --
> balbi
- Uchino
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html