In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix memory leak in mlx5coredestroycq() error path Prior to this patch in case mlx5coredestroycq() failed it returns without completing all destroy operations and that leads to memory leak. Instead, complete the destroy flow before return error. Also move mlx5debugcqremove() to the beginning of mlx5coredestroycq() to be symmetrical with mlx5corecreatecq(). kmemleak complains on: unreferenced object 0xc000000038625100 (size 64): comm "ethtool", pid 28301, jiffies 4298062946 (age 785.380s) hex dump (first 32 bytes): 60 01 48 94 00 00 00 c0 b8 05 34 c3 00 00 00 c0 `.H.......4..... 02 00 00 00 00 00 00 00 00 db 7d c1 00 00 00 c0 ..........}..... backtrace: [<000000009e8643cb>] addrestree+0xd0/0x270 [mlx5core] [<00000000e7cb8e6c>] mlx5debugcqadd+0x5c/0xc0 [mlx5core] [<000000002a12918f>] mlx5corecreatecq+0x1d0/0x2d0 [mlx5core] [<00000000cef0a696>] mlx5ecreatecq+0x210/0x3f0 [mlx5core] [<000000009c642c26>] mlx5eopencq+0xb4/0x130 [mlx5core] [<0000000058dfa578>] mlx5eptpopen+0x7f4/0xe10 [mlx5core] [<0000000081839561>] mlx5eopenchannels+0x9cc/0x13e0 [mlx5core] [<0000000009cf05d4>] mlx5eswitchprivchannels+0xa4/0x230 [mlx5core] [<0000000042bbedd8>] mlx5esafeswitchparams+0x14c/0x300 [mlx5core] [<0000000004bc9db8>] setpflagtxportts+0x9c/0x160 [mlx5core] [<00000000a0553443>] mlx5esetprivflags+0xd0/0x1b0 [mlx5core] [<00000000a8f3d84b>] ethnlsetprivflags+0x234/0x2d0 [<00000000fd27f27c>] genlfamilyrcvmsgdoit+0x108/0x1d0 [<00000000f495e2bb>] genlfamilyrcvmsg+0xe4/0x1f0 [<00000000646c5c2c>] genlrcvmsg+0x78/0x120 [<00000000d53e384e>] netlinkrcvskb+0x74/0x1a0