From: Greg KH <gregkh@linuxfoundation.org>
To: Baolin Wang <baolin.wang@linaro.org>
Cc: Peter Chen <Peter.Chen@freescale.com>,
Felipe Balbi <balbi@ti.com>, Mark Brown <broonie@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
"sojka@merica.cz" <sojka@merica.cz>,
Alan Stern <stern@rowland.harvard.edu>,
"andreas@gaisler.com" <andreas@gaisler.com>,
"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>
Subject: Re: [PATCH 2/2] gadget: Support for the usb charger framework
Date: Fri, 7 Aug 2015 10:53:17 -0700 [thread overview]
Message-ID: <20150807175317.GD10003@kroah.com> (raw)
In-Reply-To: <CAMz4kuJQ12wiQQoiN3vdKv-B0QBfvOcb2NYeEDbcC1c7ybSy5g@mail.gmail.com>
On Fri, Aug 07, 2015 at 05:22:47PM +0800, Baolin Wang wrote:
> On 7 August 2015 at 17:07, Peter Chen <Peter.Chen@freescale.com> wrote:
> >
> >> >> /**
> >> >> * struct usb_udc - describes one usb device controller @@ -127,12
> >> >> +128,45 @@ void usb_gadget_giveback_request(struct usb_ep *ep, }
> >> >> EXPORT_SYMBOL_GPL(usb_gadget_giveback_request);
> >> >>
> >> >> +int usb_gadget_register_notify(struct usb_gadget *gadget,
> >> >> + struct notifier_block *nb) {
> >> >> + unsigned long flags;
> >> >> + int ret;
> >> >> +
> >> >> + spin_lock_irqsave(&gadget->lock, flags);
> >> >
> >> > I find you use so many spin_lock_irqsave, any reasons for that?
> >> > Why mutex_lock can't be used?
> >> >
> >>
> >> The spin_lock_irqsave() can make it as a atomic notifier, that can make sure the
> >> gadget state event can be quickly reported to the user who register a notifier
> >> on the gadget device. Is it OK?
> >>
> >
> > I don't think it is a good reason, spin_lock_irqsave is usually used for protecting
> > data which is accessed at atomic environment.
> >
>
> Yes, we want the notify process is a atomic environment which do not
> want to be interrupted by irq or other things to make the notice can
> be quickly reported to the user.
No, this is a "slow" event, you don't need to notify anyone under atomic
context, that's crazy.
> Also i think the notify process is less cost, thus i use the spinlock. Thanks.
No, use a mutex please, that's the safe thing. This is not
time-critical code at all.
thanks,
greg k-h
next prev parent reply other threads:[~2015-08-07 17:53 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-06 7:03 [PATCH 0/2] Introduce usb charger framework to deal with the usb gadget power negotation Baolin Wang
2015-08-06 7:03 ` [PATCH 1/2] gadget: Introduce the usb charger framework Baolin Wang
2015-08-06 16:39 ` Greg KH
2015-08-06 18:30 ` Mark Brown
2015-08-07 5:48 ` Baolin Wang
2015-08-07 5:41 ` Peter Chen
2015-08-07 8:33 ` Baolin Wang
2015-08-06 7:03 ` [PATCH 2/2] gadget: Support for " Baolin Wang
2015-08-07 5:45 ` Peter Chen
2015-08-07 8:46 ` Baolin Wang
2015-08-07 9:07 ` Peter Chen
2015-08-07 9:22 ` Baolin Wang
2015-08-07 17:53 ` Greg KH [this message]
2015-08-08 6:23 ` Baolin Wang
2015-08-06 16:21 ` [PATCH 0/2] Introduce usb charger framework to deal with the usb gadget power negotation Felipe Balbi
2015-08-06 16:39 ` Greg KH
2015-08-07 5:34 ` Peter Chen
2015-08-07 8:19 ` Baolin Wang
2015-08-07 8:31 ` Peter Chen
2015-08-07 8:47 ` Baolin Wang
2015-08-07 17:52 ` Greg KH
2015-08-08 6:22 ` Baolin Wang
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=20150807175317.GD10003@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=Peter.Chen@freescale.com \
--cc=andreas@gaisler.com \
--cc=balbi@ti.com \
--cc=baolin.wang@linaro.org \
--cc=broonie@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=sojka@merica.cz \
--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.