]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
enic: fix incorrect MTU comparison in enic_change_mtu()
authorAlok Tiwari <alok.a.tiwari@oracle.com>
Sat, 28 Jun 2025 14:56:05 +0000 (07:56 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jul 2025 16:24:57 +0000 (18:24 +0200)
[ Upstream commit aaf2b2480375099c022a82023e1cd772bf1c6a5d ]

The comparison in enic_change_mtu() incorrectly used the current
netdev->mtu instead of the new new_mtu value when warning about
an MTU exceeding the port MTU. This could suppress valid warnings
or issue incorrect ones.

Fix the condition and log to properly reflect the new_mtu.

Fixes: ab123fe071c9 ("enic: handle mtu change for vf properly")
Signed-off-by: Alok Tiwari <alok.a.tiwari@oracle.com>
Acked-by: John Daley <johndale@cisco.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250628145612.476096-1-alok.a.tiwari@oracle.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/cisco/enic/enic_main.c

index 892c4b5ff303635b5a22a46a56bc78b4eb99782a..1101f1416d0765f776b55189550f1149c831dd9a 100644 (file)
@@ -2093,10 +2093,10 @@ static int enic_change_mtu(struct net_device *netdev, int new_mtu)
        if (enic_is_dynamic(enic) || enic_is_sriov_vf(enic))
                return -EOPNOTSUPP;
 
-       if (netdev->mtu > enic->port_mtu)
+       if (new_mtu > enic->port_mtu)
                netdev_warn(netdev,
                            "interface MTU (%d) set higher than port MTU (%d)\n",
-                           netdev->mtu, enic->port_mtu);
+                           new_mtu, enic->port_mtu);
 
        return _enic_change_mtu(netdev, new_mtu);
 }