Thread (11 messages) 11 messages, 3 authors, 2023-01-29

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

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>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help