On Thu, Sep 17, 2026 at 02:12:40PM -0700, Kees Cook wrote:
> From: Kees Cook <[email protected]>
> 
> In preparation for converting the kmalloc family of allocators to the
> type-aware kmalloc_obj family, we need to make sure that the returned
> type from the allocation matches the type of the variable being
> assigned. (The kmalloc family returns "void *", which can be implicitly
> cast to any pointer type.)
> 
> These allocate as many pointers as ebc_key_maps and ebc_func_table hold,
> but the sizes were taken from the whole arrays, which would make the
> allocation types pointers to those arrays rather than the "u_short **"
> and "char **" being assigned. Allocate ARRAY_SIZE-many entries instead.
> The resulting allocation sizes are the same.
> 
> Build tested ARCH=s390 allmodconfig with GCC s390x-linux-gnu 16.1.0:
> drivers/s390/char/keyboard.o
> 
> Assisted-by: LLM coccinelle
> Signed-off-by: Kees Cook <[email protected]>
> ---
> Cc: Heiko Carstens <[email protected]>
> Cc: Vasily Gorbik <[email protected]>
> Cc: Alexander Gordeev <[email protected]>
> Cc: Christian Borntraeger <[email protected]>
> Cc: Sven Schnelle <[email protected]>
> Cc: <[email protected]>
> ---
>  drivers/s390/char/keyboard.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)

Applied, thanks!

Reply via email to