Re: Linux laptop with native XDP support
Jesper Dangaard Brouer <[email protected]>
| Newsgroups | org.kernel.vger.xdp-newbies |
|---|---|
| Message-ID | <[email protected]> |
On 08/09/2021 08.38, Willy Tarreau wrote: > On Tue, Sep 07, 2021 at 06:50:49PM -0700, Jose Fernandez wrote: >>> Nope, no XDP support for WiFi. There was some exploratory discussion >>> about that some years ago, but XDP has Ethernet as a pretty fundamental >>> assumption so it's not an obvious fit to the Linux WiFi stack... >>> >>> -Toke >>> >> >> I came to the realization about that a few hours after sending this >> email. I found this link useful to identity which drivers support XDP: >> https://elixir.bootlin.com/linux/latest/A/ident/bpf_prog_run_xdp >> >> I had my eyes on the latest gen "slim" Linux notebooks (Lenovo XC1, >> Dell XPS), but these don't have built-in Ethernet anymore. So I'm back >> to the drawing board. Thanks for the tip on ixgbe and Broadcom. > > Note that e1000e remains quite popular among notebooks (my last HP one > and the two following thinkpads including the T480s I'm typing on have > this), and there is common ancestry between e1000e and igb. When I > implemented the NDIV framework (which basically does pretty similar > things as XDP does in the drivers), I managed to implement e1000, > e1000e, igb and ixgbe without too many difficulties. Maybe it could > be a good opportunity for you to try to port XDP to e1000e using such > a machine, by looking at the work from igb ? The igb + igc drivers support native XDP, and I assume they must be in some laptops. You can deduce that hardware support / Intel marketing names via e.g. the igb driver via looking at the pci_device_id table (igb_pci_tbl[1]): [1] https://elixir.bootlin.com/linux/v5.14/source/drivers/net/ethernet/intel/igb/igb_main.c#L63 I agree that it would be beneficial to add native XDP to e1000e. AFAIK John Fastabend implemented XDP for e1000, but the patch had some bug (report-ably for some old hardware) that we never identified. Thus, the patch was dropped. --Jesper