]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
accel/qaic: Replace kcalloc + copy_from_user with memdup_array_user
authorThorsten Blum <thorsten.blum@linux.dev>
Wed, 17 Sep 2025 12:48:06 +0000 (14:48 +0200)
committerJeff Hugo <jeff.hugo@oss.qualcomm.com>
Mon, 6 Oct 2025 20:13:55 +0000 (14:13 -0600)
commitbed1291240e19782873120c59c305e24d94407a1
tree619e2183876bb55b6248ae10ee6f39549206d63e
parent9c815230630cb4e80e78ed3ef40909a71fc92403
accel/qaic: Replace kcalloc + copy_from_user with memdup_array_user

Replace kcalloc() followed by copy_from_user() with memdup_array_user()
to improve and simplify both __qaic_execute_bo_ioctl() and
qaic_perf_stats_bo_ioctl().

In __qaic_execute_bo_ioctl(), return early if an error occurs and remove
the obsolete 'free_exec' label.

Since memdup_array_user() already checks for multiplication overflow,
remove the manual check in __qaic_execute_bo_ioctl(). Remove any unused
local variables accordingly.

Since 'ret = copy_from_user()' has been removed, initialize 'ret = 0' to
preserve the same return value on success.

No functional changes intended.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Jeff Hugo <jeff.hugo@oss.qualcomm.com>
Signed-off-by: Jeff Hugo <jeff.hugo@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250917124805.90395-4-thorsten.blum@linux.dev
drivers/accel/qaic/qaic_data.c