lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3b1f10aa-49a2-465b-8b11-bf5e92a6bf8f@gmail.com>
Date: Thu, 24 Jul 2025 08:47:20 -0700
From: Mohsin Bashir <mohsin.bashr@...il.com>
To: Maciej Fijalkowski <maciej.fijalkowski@...el.com>
Cc: netdev@...r.kernel.org, kuba@...nel.org, alexanderduyck@...com,
 andrew+netdev@...n.ch, davem@...emloft.net, edumazet@...gle.com,
 pabeni@...hat.com, horms@...nel.org, vadim.fedorenko@...ux.dev,
 jdamato@...tly.com, sdf@...ichev.me, aleksander.lobakin@...el.com,
 ast@...nel.org, daniel@...earbox.net, hawk@...nel.org,
 john.fastabend@...il.com
Subject: Re: [PATCH net-next 5/9] eth: fbnic: Add XDP pass, drop, abort
 support

	goto xdp_pass;
> 
> Hi Mohsin,
> 
> I thought we were past the times when we read prog pointer per each
> processed packet and agreed on reading the pointer once per napi loop?
> 
>> +
>> +	if (xdp_buff_has_frags(&pkt->buff) && !xdp_prog->aux->xdp_has_frags)
>> +		return ERR_PTR(-FBNIC_XDP_LEN_ERR);
> 
> when can this happen and couldn't you catch this within ndo_bpf? i suppose
> it's related to hds setup.
> 

Hi Maciej,

It is important to avoid passing a packet with frags to a single-buff 
XDP program. The implication being that a single-buff XDP program would 
fail to access packet linearly. For example, we can send a jumbo UDP 
packet to the SUT with a single-buffer XDP program attached and in the 
XDP program, attempt to access payload linearly.

I believe handling this case within ndo_bpf may not be possible.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ