Re: [PATCH net, 2/2] net: mana: Fix accessing freed irq affinity_hint
From: Leon Romanovsky <leon@kernel.org>
Date: 2023-01-29 09:35:52
Also in:
linux-hyperv, lkml, stable
From: Leon Romanovsky <leon@kernel.org>
Date: 2023-01-29 09:35:52
Also in:
linux-hyperv, lkml, stable
On Thu, Jan 26, 2023 at 01:04:45PM -0800, Haiyang Zhang wrote:
After calling irq_set_affinity_and_hint(), the cpumask pointer is
saved in desc->affinity_hint, and will be used later when reading
/proc/irq/<num>/affinity_hint. So the cpumask variable needs to be
allocated per irq, and available until freeing the irq. Otherwise,
we are accessing freed memory when reading the affinity_hint file.
To fix the bug, allocate the cpumask per irq, and free it just
before freeing the irq.
Cc: stable@vger.kernel.org
Fixes: 71fa6887eeca ("net: mana: Assign interrupts to CPUs based on NUMA nodes")
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
.../net/ethernet/microsoft/mana/gdma_main.c | 40 ++++++++++---------
include/net/mana/gdma.h | 1 +
2 files changed, 23 insertions(+), 18 deletions(-)Thanks, Reviewed-by: Leon Romanovsky <leonro@nvidia.com>