All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Brian Norris <briannorris@chromium.org>, David Lin <yu-hao.lin@nxp.com>
Cc: Francesco Dolcini <francesco@dolcini.it>,
	"kvalo@kernel.org" <kvalo@kernel.org>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Pete Hsieh <tsung-hsien.hsieh@nxp.com>,
	 "rafael.beims" <rafael.beims@toradex.com>,
	Francesco Dolcini <francesco.dolcini@toradex.com>
Subject: Re: [EXT] Re: [PATCH v9 0/2] wifi: mwifiex: add code to support host mlme
Date: Mon, 25 Mar 2024 17:15:11 +0100	[thread overview]
Message-ID: <4e5f3741819e457c5c79d825c6520cb9ee531b95.camel@sipsolutions.net> (raw)
In-Reply-To: <Zf4rDifM6bLuqpX2@google.com>

On Fri, 2024-03-22 at 18:06 -0700, Brian Norris wrote:
> We appreciate it's well tested, but testing is still orthogonal to the
> architectural questions. Architectural questions are important because
> they affect the future maintainability of the mainline Linux wireless
> stack. If the assumption is that *either* a driver is a cfg80211 driver
> (with firmware-MLME, etc.) or a mac80211 driver (with host MLME), then
> your series is breaking those assumptions.

Maybe, maybe not, actually. The auth command _is_ somewhat special in
that it mostly hands stuff down from userspace via cfg80211, but does
require sending frames. As long as you don't have full offload, at
least.

The way I see it, the issue here isn't necessarily the fact that this
uses the auth command (and then requires assoc, of course), but that we
see here this is "growing" towards a more mac80211-like model, with the
code duplication (albeit little that it is today) implied by that. To
me, it seems like the firmware is moving into the "oh we can't do all
_that_ in firmware" territory, and that brings it closer to mac80211.

At the same time, as you say, mac80211 is doing more and more offload
capability, so it seems like apart from "today the firmware requires an
assoc command rather than assoc frame processing in the host", it's
actually not _that_ far apart any more!

Now that may be an issue in the short term, but I wouldn't be surprised
at all if desiring to implement FILS and other new features in this
space would make the driver move to assoc frame processing in the host
as well, because it's getting more and more complex, just like auth.

At which point - yeah the APIs are still significantly different, but
again we'd end up implementing something that exists in mac80211 today
and taking it into mwifiex?

> It may be harder to add
> future additions to the mac80211 stack [*], if we have to add new
> concerns of a non-mac80211 implementation in the mix.

Not sure that makes a difference for mac80211 in itself, obviously
changes in this space would then affect mwifiex, but that shouldn't be
much of an issue.

I'm less worried about this individual patch than what it says about the
direction this driver and firmware are taking, and I fear we'll end up
in a situation where over time this driver actually gets to a point
where it should be using mac80211, but because it's such a piece-meal
affair (auth frames now, etc.) and large architectural change, they'd
never actually do that.

To be fair, that might also require firmware API changes in some way. I
used to think that was something we should never require, but I'm not so
sure now any more - certainly we've changed our (Intel) FW API in
support of Linux architecture many times, and overall that's for a
better product (on Linux at least.)

Also: David, I'd appreciate if you actually took this discussion
seriously; so far you've not really contributed any technical arguments.

johannes

  reply	other threads:[~2024-03-25 16:15 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-06  2:00 [PATCH v9 0/2] wifi: mwifiex: add code to support host mlme David Lin
2024-03-06  2:00 ` [PATCH v9 1/2] wifi: mwifiex: add host mlme for client mode David Lin
2024-03-16  0:00   ` Brian Norris
2024-03-18  2:00     ` [EXT] " David Lin
2024-03-18 11:41       ` Francesco Dolcini
2024-03-19  1:36         ` [EXT] " David Lin
2024-03-06  2:00 ` [PATCH v9 2/2] wifi: mwifiex: add host mlme for AP mode David Lin
2024-03-16  0:45   ` Brian Norris
2024-03-18  2:04     ` [EXT] " David Lin
2024-04-18  3:37       ` David Lin
2024-03-15  9:49 ` [PATCH v9 0/2] wifi: mwifiex: add code to support host mlme Francesco Dolcini
2024-03-15 23:59   ` Brian Norris
2024-03-18 11:28     ` Francesco Dolcini
2024-03-19 10:33       ` Kalle Valo
2024-03-20 21:06         ` Brian Norris
2024-03-16  0:49   ` Brian Norris
2024-03-19 12:12     ` Johannes Berg
2024-03-20  0:59       ` [EXT] " David Lin
2024-03-20  1:10         ` David Lin
2024-03-20  9:12           ` Johannes Berg
2024-03-20 21:50             ` Brian Norris
2024-03-21  4:07               ` David Lin
2024-03-23  1:06                 ` Brian Norris
2024-03-25 16:15                   ` Johannes Berg [this message]
2024-03-29 10:06                     ` David Lin
2024-04-02 17:38                       ` Brian Norris
2024-04-10  7:30                         ` David Lin
2024-04-10  7:55                           ` Johannes Berg
2024-04-10 10:33                             ` David Lin
2024-04-10 17:56                               ` Johannes Berg
2024-04-11  7:57                                 ` David Lin
2024-04-11  8:02                                   ` Johannes Berg
2024-04-10  7:52                         ` Johannes Berg
2024-03-25 15:58               ` Johannes Berg
2024-03-29  9:58                 ` David Lin
2024-03-18  9:24   ` Kalle Valo
2024-03-19  1:40     ` [EXT] " David Lin
2024-03-20 21:28     ` Brian Norris
2024-03-21  2:14       ` [EXT] " David Lin
2024-03-16  0:07 ` Brian Norris
2024-03-18  2:20   ` [EXT] " David Lin
2024-03-18 11:45     ` Francesco Dolcini
2024-03-20 21:13     ` Brian Norris
2024-03-21  2:12       ` David Lin

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=4e5f3741819e457c5c79d825c6520cb9ee531b95.camel@sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=briannorris@chromium.org \
    --cc=francesco.dolcini@toradex.com \
    --cc=francesco@dolcini.it \
    --cc=kvalo@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=rafael.beims@toradex.com \
    --cc=tsung-hsien.hsieh@nxp.com \
    --cc=yu-hao.lin@nxp.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.