linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Toke Høiland-Jørgensen" <toke@toke.dk>
To: "Michał Kazior" <kazikcz@gmail.com>
Cc: lorenzo.bianconi@redhat.com, kvalo@codeaurora.org,
	linux-wireless <linux-wireless@vger.kernel.org>,
	nbd@nbd.name, brouer@redhat.com
Subject: Re: [RFC 0/5] add XDP support to mt76x2e/mt76x0e drivers
Date: Wed, 28 Nov 2018 15:19:21 +0100	[thread overview]
Message-ID: <878t1duvx2.fsf@toke.dk> (raw)
In-Reply-To: <CABvG-CWkb80iVR=Q-q9a-n0x8Yy9NJAYjnTsOhfErpiOz2SDCw@mail.gmail.com>

Michał Kazior <kazikcz@gmail.com> writes:

> On Wed, 28 Nov 2018 at 13:39, Toke Høiland-Jørgensen <toke@toke.dk> wrote:[...]
>> > This is an early stage implementation, at this point I would collect
>> > other people opinions/concerns about using bpf/xdp directly on 802.11
>> > frames.
>>
>> Thanks for looking into this!
>
> I'm really hyped up with this especially when I think this could be
> maybe offloaded to wlan cpu's for e.g. deep powersaving (allow host
> system to suspend) without relying on blackbox logic you get today, or
> 802.11 -> 802.3 conversion (to offload host cpu).

Yeah, good point!

>> I have two concerns with running XDP on 802.11 frames:
>>
>> 1. It makes it more difficult to add other XDP actions (such as
>>    REDIRECT), as the XDP program would then have to make sure that the
>>    outer packet headers are removed before, say, redirecting the packet
>>    out of an ethernet interface. Also, if we do add redirect, we would
>>    be bypassing mac80211 entirely; to what extent would that mess up
>>    internal state?
>>
>> 2. UI consistency; suddenly, the user needs to know which kind of
>>    frames to expect, and XDP program reuse becomes more difficult. This
>>    may be unavoidable given the nature of XDP, but some thought needs to
>>    go into this. Especially since we wouldn't necessarily be consistent
>>    between WiFi drivers (there are fullmac devices that remove 802.11
>>    headers before sending up the frame, right?).
>
> Yep - you can expect 802.3 frames or amsdu subframes (DA+SA+length)
> too. In some cases you could also expect internal events (broadcom if
> I understand their fullmac arch).

Oh boy. I figured it was going to be a can of worms; didn't realise it
was quite that big :/

-Toke

  reply	other threads:[~2018-11-28 14:19 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-27 22:21 [RFC 0/5] add XDP support to mt76x2e/mt76x0e drivers Lorenzo Bianconi
2018-11-27 22:21 ` [RFC 1/5] mac80211: introduce ieee80211_xdp handler Lorenzo Bianconi
2018-11-27 22:21 ` [RFC 2/5] mac80211: introduce ieee80211_vif_to_netdev routine Lorenzo Bianconi
2018-11-27 22:21 ` [RFC 3/5] mt76: split mt76_dma_rx_reset in init_rx_reset and complete_rx_reset Lorenzo Bianconi
2018-11-27 22:21 ` [RFC 4/5] mt76: make mt76x02_vif_init return int Lorenzo Bianconi
2018-11-27 22:21 ` [RFC 5/5] mt76: add XDP support Lorenzo Bianconi
2018-11-28 10:15 ` [RFC 0/5] add XDP support to mt76x2e/mt76x0e drivers Kalle Valo
2018-11-28 10:44   ` Lorenzo Bianconi
2018-11-28 12:36     ` Toke Høiland-Jørgensen
2018-11-28 12:53       ` Michał Kazior
2018-11-28 14:19         ` Toke Høiland-Jørgensen [this message]
2018-11-28 13:11       ` Lorenzo Bianconi
2018-11-28 14:21         ` Toke Høiland-Jørgensen
2018-11-28 14:35           ` Lorenzo Bianconi
2018-11-28 14:43             ` Toke Høiland-Jørgensen
2018-11-28 15:35               ` Lorenzo Bianconi
2018-11-28 23:12                 ` Toke Høiland-Jørgensen
2018-11-29 12:59                   ` Lorenzo Bianconi
2018-11-29 13:29                     ` Toke Høiland-Jørgensen
2018-11-29 13:45                     ` Michał Kazior
2018-11-29 13:53                       ` Toke Høiland-Jørgensen
2018-12-03 17:57                         ` Johannes Berg
2018-12-03 19:36                           ` Toke Høiland-Jørgensen
2018-12-03 19:41                             ` Johannes Berg
2018-12-03 19:51                               ` Toke Høiland-Jørgensen
2018-12-03 20:00                               ` Lorenzo Bianconi
2018-11-28 15:43       ` Jesper Dangaard Brouer
2018-11-29 10:30         ` Lorenzo Bianconi
2018-11-29 13:27           ` Toke Høiland-Jørgensen
2018-11-29 13:41             ` Michał Kazior
2018-11-29 13:48               ` Toke Høiland-Jørgensen
2018-11-29 13:58             ` Lorenzo Bianconi
2018-11-29 14:06               ` Toke Høiland-Jørgensen
2018-11-29 15:45                 ` Lorenzo Bianconi
2018-11-29 16:06                   ` Toke Høiland-Jørgensen

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=878t1duvx2.fsf@toke.dk \
    --to=toke@toke.dk \
    --cc=brouer@redhat.com \
    --cc=kazikcz@gmail.com \
    --cc=kvalo@codeaurora.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=lorenzo.bianconi@redhat.com \
    --cc=nbd@nbd.name \
    /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).