Re: [PATCH net-next v4 2/6] netdev_features: remove unused __UNUSED_NETIF_F_1
From: Gal Pressman <hidden>
Date: 2024-08-26 15:39:05
Also in:
lkml
On 26/08/2024 18:09, Jakub Kicinski wrote:
On Sun, 25 Aug 2024 11:19:49 +0300 Gal Pressman wrote:quoted
On 21/08/2024 18:43, Eric Dumazet wrote:quoted
On Wed, Aug 21, 2024 at 5:07 PM Alexander Lobakin [off-list ref] wrote:quoted
NETIF_F_NO_CSUM was removed in 3.2-rc2 by commit 34324dc2bf27 ("net: remove NETIF_F_NO_CSUM feature bit") and became __UNUSED_NETIF_F_1. It's not used anywhere in the code. Remove this bit waste. It wasn't needed to rename the flag instead of removing it as netdev features are not uAPI/ABI. Ethtool passes their names and values separately with no fixed positions and the userspace Ethtool code doesn't have any hardcoded feature names/bits, so that new Ethtool will work on older kernels and vice versa.This is only true for recent enough ethtool (>= 3.4) You might refine the changelog to not claim this "was not needed". Back in 2011 (and linux-2.6.39) , this was needed for sure. I am not sure we have a documented requirement about ethtool versions.This is a nice history lesson, so before the features infrastructure the feature bits were considered as "ABI"? I couldn't find a point in time where they were actually defined in the uapi files?Keep in mind that include/uapi was introduced around v3.7, before that IIUC everything under include/linux that wasn't protected by ifdef __KERNEL__ was uAPI. So all of include/linux/netdev_features.h
TIL, thanks!