Re: [PATCH net, 2/2] net: mana: Fix accessing freed irq affinity_hint

From: Leon Romanovsky
Date: Sun Jan 29 2023 - 04:35:53 EST


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@xxxxxxxxxxxxxxx
> Fixes: 71fa6887eeca ("net: mana: Assign interrupts to CPUs based on NUMA nodes")
> Signed-off-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
> ---
> .../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@xxxxxxxxxx>