From: Greg Kroah-Hartman Date: Sun, 13 Aug 2023 16:21:04 +0000 (+0200) Subject: drop vlan-fix-vlan-0-memory-leak.patch from everywhere X-Git-Tag: v4.14.323~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=37587c1a9759fcc36dcb2ef6fdd1753714e6166b;p=thirdparty%2Fkernel%2Fstable-queue.git drop vlan-fix-vlan-0-memory-leak.patch from everywhere --- diff --git a/queue-4.14/series b/queue-4.14/series index 8ad856d2bbf..40d5d1520f0 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -12,7 +12,6 @@ x86-mm-fix-vdso-and-vvar-placement-on-5-level-paging-machines.patch x86-move-gds_ucode_mitigated-declaration-to-header.patch drm-nouveau-disp-revert-a-null-check-inside-nouveau_connector_get_modes.patch net-packet-annotate-data-races-around-tp-status.patch -vlan-fix-vlan-0-memory-leak.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch drivers-net-prevent-tun_build_skb-to-exceed-the-packet-size-limit.patch diff --git a/queue-4.14/vlan-fix-vlan-0-memory-leak.patch b/queue-4.14/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index 2284ce7c8d6..00000000000 --- a/queue-4.14/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -372,8 +372,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-4.19/series b/queue-4.19/series index e8a01f0b575..70b000bf697 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -15,7 +15,6 @@ x86-move-gds_ucode_mitigated-declaration-to-header.patch drm-nouveau-disp-revert-a-null-check-inside-nouveau_connector_get_modes.patch misdn-update-parameter-type-of-dsp_cmx_send.patch net-packet-annotate-data-races-around-tp-status.patch -vlan-fix-vlan-0-memory-leak.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch drivers-net-prevent-tun_build_skb-to-exceed-the-packet-size-limit.patch diff --git a/queue-4.19/vlan-fix-vlan-0-memory-leak.patch b/queue-4.19/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index 33fe742116a..00000000000 --- a/queue-4.19/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -381,8 +381,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-5.10/series b/queue-5.10/series index e71ffa8c6a8..830dce240ea 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -39,7 +39,6 @@ selftests-forwarding-tc_flower-relax-success-criterion.patch misdn-update-parameter-type-of-dsp_cmx_send.patch net-packet-annotate-data-races-around-tp-status.patch tunnels-fix-kasan-splat-when-generating-ipv4-pmtu-error.patch -vlan-fix-vlan-0-memory-leak.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch drivers-net-prevent-tun_build_skb-to-exceed-the-packet-size-limit.patch diff --git a/queue-5.10/vlan-fix-vlan-0-memory-leak.patch b/queue-5.10/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index 366de6ff3b9..00000000000 --- a/queue-5.10/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -382,8 +382,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-5.15/series b/queue-5.15/series index eed005ddcdd..27838b570d7 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -46,7 +46,6 @@ bpf-sockmap-fix-bug-that-strp_done-cannot-be-called.patch misdn-update-parameter-type-of-dsp_cmx_send.patch net-packet-annotate-data-races-around-tp-status.patch tunnels-fix-kasan-splat-when-generating-ipv4-pmtu-error.patch -vlan-fix-vlan-0-memory-leak.patch xsk-fix-refcount-underflow-in-error-path.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch diff --git a/queue-5.15/vlan-fix-vlan-0-memory-leak.patch b/queue-5.15/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index f00c108990f..00000000000 --- a/queue-5.15/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -385,8 +385,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-5.4/series b/queue-5.4/series index 517256fbe70..22e44b8e685 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -17,7 +17,6 @@ drm-nouveau-disp-revert-a-null-check-inside-nouveau_connector_get_modes.patch selftests-rseq-fix-build-with-undefined-__weak.patch misdn-update-parameter-type-of-dsp_cmx_send.patch net-packet-annotate-data-races-around-tp-status.patch -vlan-fix-vlan-0-memory-leak.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch drivers-net-prevent-tun_build_skb-to-exceed-the-packet-size-limit.patch diff --git a/queue-5.4/vlan-fix-vlan-0-memory-leak.patch b/queue-5.4/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index f71e173cacd..00000000000 --- a/queue-5.4/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -380,8 +380,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-6.1/series b/queue-6.1/series index 883eff5e5c9..104ee9f9a97 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -90,7 +90,6 @@ net-packet-annotate-data-races-around-tp-status.patch net-smc-use-correct-buffer-sizes-when-switching-between-tcp-and-smc.patch tcp-add-missing-family-to-tcp_set_ca_state-tracepoint.patch tunnels-fix-kasan-splat-when-generating-ipv4-pmtu-error.patch -vlan-fix-vlan-0-memory-leak.patch xsk-fix-refcount-underflow-in-error-path.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch diff --git a/queue-6.1/vlan-fix-vlan-0-memory-leak.patch b/queue-6.1/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index 9df62c6d138..00000000000 --- a/queue-6.1/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -384,8 +384,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info); diff --git a/queue-6.4/series b/queue-6.4/series index d30eca3e511..88b1bebe77e 100644 --- a/queue-6.4/series +++ b/queue-6.4/series @@ -133,7 +133,6 @@ net-smc-use-correct-buffer-sizes-when-switching-between-tcp-and-smc.patch pci-move-of-status-disabled-detection-to-dev-match_driver.patch tcp-add-missing-family-to-tcp_set_ca_state-tracepoint.patch tunnels-fix-kasan-splat-when-generating-ipv4-pmtu-error.patch -vlan-fix-vlan-0-memory-leak.patch xsk-fix-refcount-underflow-in-error-path.patch bonding-fix-incorrect-deletion-of-eth_p_8021ad-protocol-vid-from-slaves.patch dccp-fix-data-race-around-dp-dccps_mss_cache.patch diff --git a/queue-6.4/vlan-fix-vlan-0-memory-leak.patch b/queue-6.4/vlan-fix-vlan-0-memory-leak.patch deleted file mode 100644 index 9df62c6d138..00000000000 --- a/queue-6.4/vlan-fix-vlan-0-memory-leak.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 718cb09aaa6fa78cc8124e9517efbc6c92665384 Mon Sep 17 00:00:00 2001 -From: Vlad Buslov -Date: Tue, 8 Aug 2023 11:35:21 +0200 -Subject: vlan: Fix VLAN 0 memory leak - -From: Vlad Buslov - -commit 718cb09aaa6fa78cc8124e9517efbc6c92665384 upstream. - -The referenced commit intended to fix memleak of VLAN 0 that is implicitly -created on devices with NETIF_F_HW_VLAN_CTAG_FILTER feature. However, it -doesn't take into account that the feature can be re-set during the -netdevice lifetime which will cause memory leak if feature is disabled -during the device deletion as illustrated by [0]. Fix the leak by -unconditionally deleting VLAN 0 on NETDEV_DOWN event. - -[0]: -> modprobe 8021q -> ip l set dev eth2 up -> ethtool -K eth2 rx-vlan-filter off -> modprobe -r mlx5_ib -> modprobe -r mlx5_core -> cat /sys/kernel/debug/kmemleak -unreferenced object 0xffff888103dcd900 (size 256): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - 00 80 5d 03 81 88 ff ff 00 00 00 00 00 00 00 00 ..]............. - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002889a7a2>] vlan_vid_add+0xa0/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 -unreferenced object 0xffff88813354fde0 (size 32): - comm "ip", pid 1490, jiffies 4294907305 (age 325.364s) - hex dump (first 32 bytes): - a0 d9 dc 03 81 88 ff ff a0 d9 dc 03 81 88 ff ff ................ - 81 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................ - backtrace: - [<00000000899f3bb9>] kmalloc_trace+0x25/0x80 - [<000000002da64724>] vlan_vid_add+0xdf/0x210 - [<000000007177800e>] vlan_device_event+0x374/0x760 [8021q] - [<000000009a0716b1>] notifier_call_chain+0x35/0xb0 - [<00000000bbf3d162>] __dev_notify_flags+0x58/0xf0 - [<0000000053d2b05d>] dev_change_flags+0x4d/0x60 - [<00000000982807e9>] do_setlink+0x28d/0x10a0 - [<0000000058c1be00>] __rtnl_newlink+0x545/0x980 - [<00000000e66c3bd9>] rtnl_newlink+0x44/0x70 - [<00000000a2cc5970>] rtnetlink_rcv_msg+0x29c/0x390 - [<00000000d307d1e4>] netlink_rcv_skb+0x54/0x100 - [<00000000259d16f9>] netlink_unicast+0x1f6/0x2c0 - [<000000007ce2afa1>] netlink_sendmsg+0x232/0x4a0 - [<00000000f3f4bb39>] sock_sendmsg+0x38/0x60 - [<000000002f9c0624>] ____sys_sendmsg+0x1e3/0x200 - [<00000000d6ff5520>] ___sys_sendmsg+0x80/0xc0 - -Fixes: efc73f4bbc23 ("net: Fix memory leak - vlan_info struct") -Reviewed-by: Ido Schimmel -Signed-off-by: Vlad Buslov -Link: https://lore.kernel.org/r/20230808093521.1468929-1-vladbu@nvidia.com -Signed-off-by: Jakub Kicinski -Signed-off-by: Greg Kroah-Hartman ---- - net/8021q/vlan.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - ---- a/net/8021q/vlan.c -+++ b/net/8021q/vlan.c -@@ -384,8 +384,7 @@ static int vlan_device_event(struct noti - dev->name); - vlan_vid_add(dev, htons(ETH_P_8021Q), 0); - } -- if (event == NETDEV_DOWN && -- (dev->features & NETIF_F_HW_VLAN_CTAG_FILTER)) -+ if (event == NETDEV_DOWN) - vlan_vid_del(dev, htons(ETH_P_8021Q), 0); - - vlan_info = rtnl_dereference(dev->vlan_info);