Re: Redux: Backwards compatibility for XDP multi-buff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 23/09/2021 15.46, Jakub Kicinski wrote:
Let me make a general statement that we can't build large systems
without division of responsibilities. Device specific logic has to
be left to the driver. It's up to veth to apply its extra rules.

As Zvi said, tho, this can be left for later. IMHO initial patches can
drop all mb frames on redirect in the core, so we can make progress.

I agree that for *initial* patchset for REDIRECT (func calling ndo_xdp_xmit) it can drop MB frames on redirect in the core, when the drivers ndo_xdp_xmit doesn't support this.
BUT only so we can make progress.

As soon as possible (preferably in same kernel release) a follow-up patchset should make a serious attempt at updating all drivers ndo_xdp_xmit to support multi-buffer (MB).

As MB use the same/compatible layout as skb_shared_info, it should be a fairly small effort to update drivers, for *transmitting* multi-buff. As drivers already support this for normal SKBs.

It will be a larger effort to support XDP multi-buff on RX, as often the RX-loop need to be adjusted/reordered to "delay" calling XDP-prog until all fragments have been "collected". And MTU check adjusted.

This imply that the driver net_device xdp_features need two feature bits for this MB feature. IMHO it makes sense to detangle RX and TX, as IMHO we should allow MB frames to be TX redirect out a driver that have an old non-MB aware XDP-prog loaded.

--Jesper




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux