All of lore.kernel.org
 help / color / mirror / Atom feed
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Alexander Aring <alex.aring@gmail.com>
Cc: Alexander Aring <aahringo@redhat.com>,
	Stefan Schmidt <stefan@datenfreihafen.org>,
	linux-wpan@vger.kernel.org,
	"David S. Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Eric Dumazet <edumazet@google.com>,
	netdev@vger.kernel.org, David Girault <david.girault@qorvo.com>,
	Romuald Despres <romuald.despres@qorvo.com>,
	Frederic Blain <frederic.blain@qorvo.com>,
	Nicolas Schodet <nico@ni.fr.eu.org>,
	Guilhem Imberton <guilhem.imberton@qorvo.com>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Subject: Re: [PATCH wpan-next 0/2] ieee802154: Beaconing support
Date: Wed, 25 Jan 2023 10:59:56 +0100	[thread overview]
Message-ID: <20230125105653.44e9498f@xps-13> (raw)
In-Reply-To: <CAB_54W69KcM0UJjf8py-VyRXx2iEUvcAKspXiAkykkQoF6ccDA@mail.gmail.com>

Hi Alexander,

alex.aring@gmail.com wrote on Tue, 24 Jan 2023 21:31:33 -0500:

> Hi,
> 
> On Tue, Jan 24, 2023 at 5:08 AM Miquel Raynal <miquel.raynal@bootlin.com> wrote:
> >
> > Hi Alexander,
> >
> > aahringo@redhat.com wrote on Mon, 23 Jan 2023 09:02:48 -0500:
> >  
> > > Hi,
> > >
> > > On Mon, Jan 23, 2023 at 9:01 AM Alexander Aring <aahringo@redhat.com> wrote:  
> > > >
> > > > Hi,
> > > >
> > > > On Wed, Jan 18, 2023 at 4:21 AM Miquel Raynal <miquel.raynal@bootlin.com> wrote:  
> > > > >
> > > > > Hi Alexander,
> > > > >
> > > > > aahringo@redhat.com wrote on Sun, 15 Jan 2023 20:54:02 -0500:
> > > > >  
> > > > > > Hi,
> > > > > >
> > > > > > On Fri, Jan 6, 2023 at 6:33 AM Miquel Raynal <miquel.raynal@bootlin.com> wrote:  
> > > > > > >
> > > > > > > Scanning being now supported, we can eg. play with hwsim to verify
> > > > > > > everything works as soon as this series including beaconing support gets
> > > > > > > merged.
> > > > > > >  
> > > > > >
> > > > > > I am not sure if a beacon send should be handled by an mlme helper
> > > > > > handling as this is a different use-case and the user does not trigger
> > > > > > an mac command and is waiting for some reply and a more complex
> > > > > > handling could be involved. There is also no need for hotpath xmit
> > > > > > handling is disabled during this time. It is just an async messaging
> > > > > > in some interval and just "try" to send it and don't care if it fails,
> > > > > > or? For mac802154 therefore I think we should use the dev_queue_xmit()
> > > > > > function to queue it up to send it through the hotpath?
> > > > > >
> > > > > > I can ack those patches, it will work as well. But I think we should
> > > > > > switch at some point to dev_queue_xmit(). It should be simple to
> > > > > > switch it. Just want to mention there is a difference which will be
> > > > > > there in mac-cmds like association.  
> > > > >
> > > > > I see what you mean. That's indeed true, we might just switch to
> > > > > a less constrained transmit path.
> > > > >  
> > > >
> > > > I would define the difference in bypass qdisc or not. Whereas the
> > > > qdisc can drop or delay transmitting... For me, the qdisc is currently
> > > > in a "works for now" state.  
> > >
> > > probably also bypass other hooks like tc, etc. :-/ Not sure if we want that.  
> >
> > Actually, IIUC, we no longer want to go through the entire net stack.
> > We still want to bypass it but without stopping/flushing the full
> > queue like with an mlme transmission, so what about using
> > ieee802154_subif_start_xmit() instead of dev_queue_xmit()? I think it
> > is more appropriate.  
> 
> I do not understand, what do we currently do with mlme ops via the
> ieee802154_subif_start_xmit() function, or? So we bypass everything
> from dev_queue_xmit() until do_xmit() netdev callback.

Yes, that's the plan. We don't want any of the net stack features when
sending beacons.

> I think it is fine, also I think "mostly" only dataframes should go
> through dev_queue_xmit(). With a HardMAC transceiver we would have
> control about "mostly" other frames than data either. So we should do
> everything with mlme-ops do what the spec says (to match up with
> HardMAC behaviour?) and don't allow common net hooks/etc. to change
> this behaviour?

To summarize:
- Data frames -> should go through dev_queue_xmit()
- MLME ops with feedback constraints -> should go through the slow MLME
  path, so ieee802154_mlme_tx*()
- MLME ops without feedback constraints like beacons -> should go
  through the hot path, but not through the whole net stack, so
  ieee802154_subif_start_xmit()

Right now only data frames have security support, I propose we merge
the initial support like that. Right now I am focused on UWB support
(coming next, after the whole active scan/association additions), and
in a second time we would be interested in llsec support for MLME ops.

Does that sounds like a plan? If yes, I'll send a v2 with the right
transmit helper used.

Thanks,
Miquèl

NB: Perhaps a prerequisites of bringing security to the MLME ops would
be to have wpan-tools updated (it looks like the support was never
merged?) as well as a simple example how to use it on linux-wpan.org.

  reply	other threads:[~2023-01-25 10:00 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-06 11:31 [PATCH wpan-next 0/2] ieee802154: Beaconing support Miquel Raynal
2023-01-06 11:31 ` [PATCH wpan-next 1/2] ieee802154: Add support for user beaconing requests Miquel Raynal
2023-01-06 11:31 ` [PATCH wpan-next 2/2] mac802154: Handle basic beaconing Miquel Raynal
2023-01-16  1:54 ` [PATCH wpan-next 0/2] ieee802154: Beaconing support Alexander Aring
2023-01-18  9:20   ` Miquel Raynal
2023-01-23 12:49     ` Miquel Raynal
2023-01-23 13:50       ` Alexander Aring
2023-01-23 14:36         ` Alexander Aring
2023-01-23 14:01     ` Alexander Aring
2023-01-23 14:02       ` Alexander Aring
2023-01-24 10:08         ` Miquel Raynal
2023-01-25  2:31           ` Alexander Aring
2023-01-25  9:59             ` Miquel Raynal [this message]
2023-01-27  1:29               ` Alexander Aring
2023-01-27  1:31                 ` Alexander Aring
2023-01-27 19:39                 ` Michael Richardson
2023-01-28  1:57                   ` Alexander Aring
2023-01-30  9:50                     ` Miquel Raynal

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=20230125105653.44e9498f@xps-13 \
    --to=miquel.raynal@bootlin.com \
    --cc=aahringo@redhat.com \
    --cc=alex.aring@gmail.com \
    --cc=davem@davemloft.net \
    --cc=david.girault@qorvo.com \
    --cc=edumazet@google.com \
    --cc=frederic.blain@qorvo.com \
    --cc=guilhem.imberton@qorvo.com \
    --cc=kuba@kernel.org \
    --cc=linux-wpan@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nico@ni.fr.eu.org \
    --cc=pabeni@redhat.com \
    --cc=romuald.despres@qorvo.com \
    --cc=stefan@datenfreihafen.org \
    --cc=thomas.petazzoni@bootlin.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.