RTM_GETLINK for greater than about 220 VFs truncates IFLA_VFINFO_LIST due to the maximum reach of nlattr's nla_len being exceeded. There is not a lot of enthusiasm for extensive fixes to the deprecated netlink ABI for VF config, but there appears to be even less appetite for the kinds of work arounds that would be necessitated in order to truly keep it frozen [1].
This series first addresses nla_nest_end()'s propensity to generate malformed netlink messages. The balance of the series comprises very minor ABI updates intended to be low impact, in order to address the remaining issues. First, the existing RTEXT_FILTER_SKIP_STATS is called upon to alleviate the problem when user space does not want statistics and then a minor tweak is introduced in two steps in order to promote the stats one level up in the hierarchy with the minimum of code churn. Finally, the kernel series is followed by an iproute2 series to take advantage of the changes. [1] https://lore.kernel.org/netdev/20210115225950.18762-1-edwin.p...@broadcom.com/ Edwin Peer (4): netlink: truncate overlength attribute list in nla_nest_end() rtnetlink: extend RTEXT_FILTER_SKIP_STATS to IFLA_VF_INFO rtnetlink: refactor IFLA_VF_INFO stats into rtnl_fill_vfstats() rtnetlink: promote IFLA_VF_STATS to same level as IFLA_VF_INFO include/net/netlink.h | 11 ++- include/uapi/linux/if_link.h | 1 + include/uapi/linux/netlink.h | 1 + include/uapi/linux/rtnetlink.h | 1 + lib/nlattr.c | 27 +++++++ net/core/rtnetlink.c | 132 +++++++++++++++++++++------------ 6 files changed, 122 insertions(+), 51 deletions(-) -- 2.30.0
smime.p7s
Description: S/MIME Cryptographic Signature