From: Alex Elder <elder@linaro.org>
To: Dan Carpenter <dan.carpenter@oracle.com>,
Madhumitha Prabakaran <madhumithabiw@gmail.com>
Cc: devel@driverdev.osuosl.org, elder@kernel.org, johan@kernel.org,
linux-kernel@vger.kernel.org, greybus-dev@lists.linaro.org
Subject: Re: [greybus-dev] [PATCH] Staging: greybus: Fix spinlock_t definition without comment
Date: Fri, 5 Apr 2019 17:50:10 -0500 [thread overview]
Message-ID: <fd59f7d5-84a0-35ca-b096-a1d2c7e30336@linaro.org> (raw)
In-Reply-To: <20190405205304.GS32590@kadam>
On 4/5/19 3:53 PM, Dan Carpenter wrote:
> On Fri, Apr 05, 2019 at 03:00:46PM -0500, Madhumitha Prabakaran
> wrote:
>> Fix spinlock_t definition without comment.
>>
>> Signed-off-by: Madhumitha Prabakaran <madhumithabiw@gmail.com>
Madhumitha, the reason one would want a comment associated with
a lock field in a structure is to get some understanding of why
it's needed. Saying "protect structure fields" is not enough,
because that can pretty much be assumed, so a comment like that
adds no value.
Looking at the code, you can see the lock field protects the
connection's operations list. It also appears to be needed
for accessing the state field (reading or updating).
Given that, a better comment might be:
spinlock_t lock; /* operations list and state */
>> --- drivers/staging/greybus/connection.h | 2 +- 1 file changed, 1
>> insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/greybus/connection.h
>> b/drivers/staging/greybus/connection.h index
>> 5ca3befc0636..0aedd246e94a 100644 ---
>> a/drivers/staging/greybus/connection.h +++
>> b/drivers/staging/greybus/connection.h @@ -47,7 +47,7 @@ struct
>> gb_connection { unsigned long flags;
>>
>> struct mutex mutex; - spinlock_t lock; + spinlock_t lock; /*
>> Protect structure fields */ enum gb_connection_state state;
>
> What does the mutex do then? Why can't we just use the spinlock for
> everything?
The mutex needs to be held during enable and disable of a connection.
Johan might be able to give you a more complete answer but these
operations (or at least the enable) need to block, so can't hold a
spinlock.
-Alex
> I did glance at the code and it wasn't immediately obvious to me.
>
> regards, dan carpenter
>
> _______________________________________________ greybus-dev mailing
> list greybus-dev@lists.linaro.org
> https://lists.linaro.org/mailman/listinfo/greybus-dev
>
next prev parent reply other threads:[~2019-04-05 22:50 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-05 20:00 Madhumitha Prabakaran
2019-04-05 20:53 ` Dan Carpenter
2019-04-05 22:50 ` Alex Elder [this message]
2019-04-06 23:06 ` [greybus-dev] " Madhumthia Prabakaran
2019-04-15 12:59 ` Johan Hovold
2019-04-06 22:55 ` Madhumthia Prabakaran
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=fd59f7d5-84a0-35ca-b096-a1d2c7e30336@linaro.org \
--to=elder@linaro.org \
--cc=dan.carpenter@oracle.com \
--cc=devel@driverdev.osuosl.org \
--cc=elder@kernel.org \
--cc=greybus-dev@lists.linaro.org \
--cc=johan@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=madhumithabiw@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®