From: Kalle Valo <kvalo@kernel.org>
To: Rameshkumar Sundaram <quic_ramess@quicinc.com>
Cc: <ath12k@lists.infradead.org>, <linux-wireless@vger.kernel.org>,
Sriram R <quic_srirrama@quicinc.com>
Subject: Re: [PATCH v6 1/3] wifi: ath12k: prepare vif data structure for MLO handling
Date: Thu, 08 Aug 2024 13:57:59 +0300 [thread overview]
Message-ID: <87sevf2seg.fsf@kernel.org> (raw)
In-Reply-To: <87frrj70nz.fsf@kernel.org> (Kalle Valo's message of "Mon, 05 Aug 2024 12:56:48 +0300")
Kalle Valo <kvalo@kernel.org> writes:
> Rameshkumar Sundaram <quic_ramess@quicinc.com> writes:
>
>> Locking:
>> Currently modifications to members of arvif and arsta are protected by ar->conf_mutex
>> and it stays as such.
>> Now with these hw level structure (ahvif) being introduced, any modifications
>> to its members and link objects (i.e., arvifs[] which are dynamically allocated)
>> needs to be protected for writing and ah->conf_mutex is used for the same.
>> Also, atomic contexts(say WMI events and certain mac_ops) that we currently have in driver
>> will not(shouldn't be allowed) do any modifications but can read them and
>> rcu_read_lock() is used for the same.
>
> Please elaborate more about your locking design. Because of past bad
> contributions from Qualcomm the bar is really high for adding any new
> locks. I'm doing the locking analysis right now but it would help a lot
> if you could provide your own analysis.
>
> My first impressions:
>
> It's really confusing to have two locks with the same name (conf_mutex
> in struct ath12k_hw and struct ath12k).
>
> struct ath12k_hw already has hw_mutex so I'm even more suspicious about
> this locking design. That's not explained at all in commit messages.
I didn't get any replies, and my own analysis is still ongoing, but the
more I look at this, the more I feel using two overlapping mutexes is
overkill. I'm starting to wonder if we would convert to using
wiphy_lock()? That might simplify things significantly. I should have an
old patchset doing that stored somewhere.
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
next prev parent reply other threads:[~2024-08-08 10:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-11 16:55 [PATCH v6 0/3] wifi: ath12k: prepare vif and sta datastructure Rameshkumar Sundaram
2024-07-11 16:55 ` [PATCH v6 1/3] wifi: ath12k: prepare vif data structure for MLO handling Rameshkumar Sundaram
2024-07-16 20:38 ` Jeff Johnson
2024-08-05 9:56 ` Kalle Valo
2024-08-08 10:57 ` Kalle Valo [this message]
2024-08-08 16:42 ` Rameshkumar Sundaram
2024-08-09 14:29 ` Kalle Valo
2024-08-09 18:00 ` Rameshkumar Sundaram
2024-08-06 12:28 ` Kalle Valo
2024-08-06 16:02 ` Aditya Kumar Singh
2024-08-06 16:32 ` Kalle Valo
2024-07-11 16:55 ` [PATCH v6 2/3] wifi: ath12k: pass ath12k_link_vif instead of vif/ahvif Rameshkumar Sundaram
2024-07-11 16:55 ` [PATCH v6 3/3] wifi: ath12k: prepare sta data structure for MLO handling Rameshkumar Sundaram
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=87sevf2seg.fsf@kernel.org \
--to=kvalo@kernel.org \
--cc=ath12k@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
--cc=quic_ramess@quicinc.com \
--cc=quic_srirrama@quicinc.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;
as well as URLs for NNTP newsgroup(s).