From: "Michael Büsch" <m@bues.ch>
To: Nicholas Krause <xerofoify@gmail.com>
Cc: stefano.brivio@polimi.it, netdev@vger.kernel.org,
linux-wireless@vger.kernel.org, b43-dev@lists.infradead.org,
kvalo@codeaurora.org, linux-kernel@vger.kernel.org
Subject: [PATCH] drivers:net:wireless: Add proper locking for the function, b43_op_beacon_set_tim in main.c
Date: Fri, 2 Jan 2015 10:27:27 +0100 [thread overview]
Message-ID: <20150102102727.3918a684@wiggum> (raw)
In-Reply-To: <1420184041-6788-1-git-send-email-xerofoify@gmail.com>
On Fri, 2 Jan 2015 02:34:01 -0500
Nicholas Krause <xerofoify@gmail.com> wrote:
> This adds proper locking for the function, b43_op_beacon_set_tim in main.c by using the mutex lock
> in the structure pointer wl, as embedded into this pointer as a mutex in order to protect against
> multiple access to the pointer wl when updating the templates for this pointer in the function,
> b43_update_templates internally in the function, b43_op_beacon_set_tim.
>
> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
> ---
> drivers/net/wireless/b43/main.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
> index 47731cb..d568fc8 100644
> --- a/drivers/net/wireless/b43/main.c
> +++ b/drivers/net/wireless/b43/main.c
> @@ -5094,8 +5094,9 @@ static int b43_op_beacon_set_tim(struct ieee80211_hw *hw,
> {
> struct b43_wl *wl = hw_to_b43_wl(hw);
>
> - /* FIXME: add locking */
> + mutex_lock(&wl->mutex);
> b43_update_templates(wl);
> + mutex_unlock(&wl->mutex);
>
> return 0;
> }
Thanks for the patch.
However, this does not work. We are in atomic context here.
Please see the b43-dev mailing list archives for a recent thread about that.
I'm also pretty sure that this is safe without lock, due to the higher level locks in mac80211.
--
Michael
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/b43-dev/attachments/20150102/38ecd737/attachment.sig>
WARNING: multiple messages have this Message-ID (diff)
From: "Michael Büsch" <m@bues.ch>
To: Nicholas Krause <xerofoify@gmail.com>
Cc: stefano.brivio@polimi.it, netdev@vger.kernel.org,
linux-wireless@vger.kernel.org, b43-dev@lists.infradead.org,
kvalo@codeaurora.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] drivers:net:wireless: Add proper locking for the function, b43_op_beacon_set_tim in main.c
Date: Fri, 2 Jan 2015 10:27:27 +0100 [thread overview]
Message-ID: <20150102102727.3918a684@wiggum> (raw)
In-Reply-To: <1420184041-6788-1-git-send-email-xerofoify@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1387 bytes --]
On Fri, 2 Jan 2015 02:34:01 -0500
Nicholas Krause <xerofoify@gmail.com> wrote:
> This adds proper locking for the function, b43_op_beacon_set_tim in main.c by using the mutex lock
> in the structure pointer wl, as embedded into this pointer as a mutex in order to protect against
> multiple access to the pointer wl when updating the templates for this pointer in the function,
> b43_update_templates internally in the function, b43_op_beacon_set_tim.
>
> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
> ---
> drivers/net/wireless/b43/main.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
> index 47731cb..d568fc8 100644
> --- a/drivers/net/wireless/b43/main.c
> +++ b/drivers/net/wireless/b43/main.c
> @@ -5094,8 +5094,9 @@ static int b43_op_beacon_set_tim(struct ieee80211_hw *hw,
> {
> struct b43_wl *wl = hw_to_b43_wl(hw);
>
> - /* FIXME: add locking */
> + mutex_lock(&wl->mutex);
> b43_update_templates(wl);
> + mutex_unlock(&wl->mutex);
>
> return 0;
> }
Thanks for the patch.
However, this does not work. We are in atomic context here.
Please see the b43-dev mailing list archives for a recent thread about that.
I'm also pretty sure that this is safe without lock, due to the higher level locks in mac80211.
--
Michael
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2015-01-02 9:27 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-02 7:34 [PATCH] drivers:net:wireless: Add proper locking for the function, b43_op_beacon_set_tim in main.c Nicholas Krause
2015-01-02 7:34 ` Nicholas Krause
2015-01-02 9:27 ` Michael Büsch [this message]
2015-01-02 9:27 ` Michael Büsch
2015-01-02 11:19 ` Rafał Miłecki
2015-01-02 11:19 ` Rafał Miłecki
2015-01-02 11:42 ` Michael Büsch
2015-01-02 11:42 ` Michael Büsch
2015-01-02 17:13 ` nick
2015-01-02 17:13 ` nick
2015-01-02 16:40 ` Larry Finger
2015-01-02 16:40 ` Larry Finger
2015-01-05 9:29 ` Kalle Valo
2015-01-05 9:29 ` Kalle Valo
2015-01-05 17:16 ` nick
2015-01-05 17:16 ` nick
2015-01-05 17:46 ` Larry Finger
2015-01-05 17:46 ` Larry Finger
2015-01-05 18:21 ` nick
2015-01-05 18:21 ` nick
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=20150102102727.3918a684@wiggum \
--to=m@bues.ch \
--cc=b43-dev@lists.infradead.org \
--cc=kvalo@codeaurora.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=stefano.brivio@polimi.it \
--cc=xerofoify@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 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.