lkml.org 
[lkml]   [2023]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] wifi: wilc1000: use vmm_table as array in wilc struct
Hi,

Am 2023-10-13 10:26, schrieb Alexis Lothoré:
> From: Ajay Singh <ajay.kathat@microchip.com>
>
> Enabling KASAN and running some iperf tests raises some memory issues
> with
> vmm_table:
>
> BUG: KASAN: slab-out-of-bounds in wilc_wlan_handle_txq+0x6ac/0xdb4
> Write of size 4 at addr c3a61540 by task wlan0-tx/95
>
> KASAN detects that we are writing data beyond range allocated to
> vmm_table.
> There is indeed a mismatch between the size passed to allocator in
> wilc_wlan_init, and the range of possible indexes used later:
> allocation
> size is missing a multiplication by sizeof(u32)

Nice catch.

> While at it, instead of simply multiplying the allocation size, do not
> keep
> dedicated dynamic allocation for vmm_table: define it as an array with
> the
> relevant size in wilc struct, which is already dynamically allocated
>
> Fixes: 40b717bfcefa ("wifi: wilc1000: fix DMA on stack objects")
> Cc: stable@vger.kernel.org
> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>

Looks good to me. But you'll change the alignment of the table, not sure
if that matters for some DMA controllers.

-michael

\
 
 \ /
  Last update: 2023-10-13 11:25    [W:0.040 / U:1.480 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site