On Mon, Oct 09, 2023 at 11:36:35AM -0400, Boris Ostrovsky wrote:
On Wed, Aug 30, 2023 at 05:02:37PM +0200, Greg Kroah-Hartman wrote:
I'm announcing the release of the 4.14.324 kernel.
All users of the 4.14 kernel series must upgrade.
The updated 4.14.y git tree can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.14.y and can be browsed at the normal kernel.org git web browser: https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git%3Ba=summa...
...
Ido Schimmel (1): rtnetlink: Reject negative ifindexes in RTM_NEWLINK
The above commit (69197b2 rtnetlink: Reject negative ifindexes in RTM_NEWLINK) appears to has been applied icorrectly, causing some regressions (like attaching a VF to a running guest). The change needs to be made in rtnl_newlink(), not rtnl_setlink().
I didn't check all other branches but at least 5.4 looks OK.
I believe 69197b2 needs to be reverted and instead this applied:
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c index a76f3024..f4b98f7 100644 --- a/net/core/rtnetlink.c +++ b/net/core/rtnetlink.c @@ -2547,9 +2547,12 @@ static int rtnl_newlink(struct sk_buff *skb, struct nlmsghdr *nlh, ifname[0] = '\0'; ifm = nlmsg_data(nlh);
if (ifm->ifi_index > 0)
if (ifm->ifi_index > 0) { dev = __dev_get_by_index(net, ifm->ifi_index);
else {
} else if (ifm->ifi_index < 0) {
NL_SET_ERR_MSG(extack, "ifindex can't be negative");
return -EINVAL;
} else { if (ifname[0]) dev = __dev_get_by_name(net, ifname); else
Ick, good catch! 4.19 also looks wrong, let me go revert the original and then use this version again instead, many thanks for this!
greg k-h