From: Michal Nazarewicz <mina86@mina86.com>
To: Wei.Yang@windriver.com, stern@rowland.harvard.edu
Cc: wei.yang@windriver.com, balbi@ti.com, linux-usb@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] USB:gadget: Fix a warning while loading g_mass_storage
Date: Tue, 17 Jun 2014 20:20:14 +0200 [thread overview]
Message-ID: <xa1ta99bwg81.fsf@mina86.com> (raw)
In-Reply-To: <1402800030-17078-1-git-send-email-Wei.Yang@windriver.com>
On Sun, Jun 15 2014, Wei.Yang@windriver.com wrote:
> From: Yang Wei <Wei.Yang@windriver.com>
>
> While loading g_mass_storage module, the following warning
> is triggered.
>
> WARNING: at drivers/usb/gadget/composite.c:
> usb_composite_setup_continue: Unexpected call
> Modules linked in: fat vfat minix nls_cp437 nls_iso8859_1 g_mass_storage
> [<800179cc>] (unwind_backtrace+0x0/0x104) from [<80619608>] (dump_stack+0x20/0x24)
> [<80619608>] (dump_stack+0x20/0x24) from [<80025100>] (warn_slowpath_common+0x64/0x74)
> [<80025100>] (warn_slowpath_common+0x64/0x74) from [<800251cc>] (warn_slowpath_fmt+0x40/0x48)
> [<800251cc>] (warn_slowpath_fmt+0x40/0x48) from [<7f047774>] (usb_composite_setup_continue+0xb4/0xbc [g_mass_storage])
> [<7f047774>] (usb_composite_setup_continue+0xb4/0xbc [g_mass_storage]) from [<7f047ad4>] (handle_exception+0x358/0x3e4 [g_mass_storage])
> [<7f047ad4>] (handle_exception+0x358/0x3e4 [g_mass_storage]) from [<7f048080>] (fsg_main_thread+0x520/0x157c [g_mass_storage])
> [<7f048080>] (fsg_main_thread+0x520/0x157c [g_mass_storage]) from [<8004bc90>] (kthread+0x98/0x9c)
> [<8004bc90>] (kthread+0x98/0x9c) from [<8000faec>] (kernel_thread_exit+0x0/0x8)
>
> The root cause is that the existing code fails to take into
> account the possibility that common->new_fsg can change while
> do_set_interface() is running, so the value of common->new_fsg
> that gets tested after do_set_interface returns needs to be
> the same as the value used by do_set_interface.
>
> Signed-off-by: Yang Wei <Wei.Yang@windriver.com>
> Acked-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
> ---
> drivers/usb/gadget/f_mass_storage.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> Changes in v3 ----> v4
>
> move "new_fsg = common->new_fsg" out of comm->lock protection, and refine the commit log.
>
> Thanks
> Wei
>
> diff --git a/drivers/usb/gadget/f_mass_storage.c b/drivers/usb/gadget/f_mass_storage.c
> index b963939..a7e24c8 100644
> --- a/drivers/usb/gadget/f_mass_storage.c
> +++ b/drivers/usb/gadget/f_mass_storage.c
> @@ -2342,6 +2342,7 @@ static void handle_exception(struct fsg_common *common)
> struct fsg_buffhd *bh;
> enum fsg_state old_state;
> struct fsg_lun *curlun;
> + struct fsg_dev *new_fsg;
> unsigned int exception_req_tag;
>
> /*
> @@ -2460,8 +2461,9 @@ static void handle_exception(struct fsg_common *common)
> break;
>
> case FSG_STATE_CONFIG_CHANGE:
> - do_set_interface(common, common->new_fsg);
> - if (common->new_fsg)
> + new_fsg = common->new_fsg;
> + do_set_interface(common, new_fsg);
> + if (new_fsg)
> usb_composite_setup_continue(common->cdev);
> break;
--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, Michał “mina86” Nazarewicz (o o)
ooo +--<mpn@google.com>--<xmpp:mina86@jabber.org>--ooO--(_)--Ooo--
prev parent reply other threads:[~2014-06-17 18:20 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-03 9:37 [PATCH v1] USB:gadget: Fix a warning while loading g_mass_storage Wei.Yang
2014-06-03 14:48 ` Alan Stern
2014-06-04 1:20 ` Yang,Wei
2014-06-04 1:45 ` Peter Chen
2014-06-04 3:16 ` Yang,Wei
2014-06-04 4:41 ` Peter Chen
2014-06-04 13:56 ` Alan Stern
2014-06-04 18:48 ` Paul Zimmerman
2014-06-05 1:30 ` Peter Chen
2014-06-05 14:21 ` Alan Stern
2014-06-04 2:34 ` Yang,Wei
2014-06-04 12:06 ` Andrzej Pietrasiewicz
2014-06-04 15:26 ` Alan Stern
2014-06-05 10:00 ` Andrzej Pietrasiewicz
2014-06-05 18:10 ` Alan Stern
2014-06-04 4:32 ` [PATCH v2] " Wei.Yang
2014-06-05 18:08 ` Alan Stern
2014-06-09 6:02 ` Yang,Wei
2014-06-09 6:19 ` [PATCH v3] " Wei.Yang
2014-06-13 6:22 ` Yang,Wei
2014-06-13 13:39 ` Alan Stern
2014-06-14 13:10 ` Yang,Wei
2014-06-13 9:44 ` Michal Nazarewicz
2014-06-13 13:43 ` Alan Stern
2014-06-13 14:57 ` Michal Nazarewicz
2014-06-15 2:40 ` [PATCH] " Wei.Yang
2014-06-15 2:42 ` Yang,Wei
2014-06-17 5:59 ` Yang,Wei
2014-06-17 14:18 ` Alan Stern
2014-06-18 1:08 ` Yang,Wei
2014-06-18 11:44 ` Michal Nazarewicz
2014-06-18 14:22 ` Alan Stern
2014-06-19 1:48 ` Yang,Wei
2014-06-17 18:20 ` Michal Nazarewicz [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xa1ta99bwg81.fsf@mina86.com \
--to=mina86@mina86.com \
--cc=Wei.Yang@windriver.com \
--cc=balbi@ti.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.