On 10/19/25 3:47 PM, Thomas Zimmermann wrote:
Hi
Am 19.10.25 um 16:34 schrieb Greg KH:
On Sun, Oct 19, 2025 at 04:12:28PM +0100, Mehdi Ben Hadj Khelifa wrote:
Replace kmalloc() with kmalloc_array() to correctly
handle array allocations and benefit from built-in overflow checking[1].
[1]:https://docs.kernel.org/process/deprecated.html
Signed-off-by: Mehdi Ben Hadj Khelifa <[email protected]>
---
drivers/gpu/drm/tiny/repaper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/tiny/repaper.c b/drivers/gpu/drm/tiny/
repaper.c
index 4824f863fdba..290132c24ff9 100644
--- a/drivers/gpu/drm/tiny/repaper.c
+++ b/drivers/gpu/drm/tiny/repaper.c
@@ -534,7 +534,7 @@ static int repaper_fb_dirty(struct
drm_framebuffer *fb, const struct iosys_map *
DRM_DEBUG("Flushing [FB:%d] st=%ums\n", fb->base.id,
epd->factored_stage_time);
- buf = kmalloc(fb->width * fb->height / 8, GFP_KERNEL);
+ buf = kmalloc_array(fb->height / 8, fb->width, GFP_KERNEL);
This isn't an array, so this function change doesn't seem to make much
sense, right? The size should have already been checked earlier in the
call change to be correct.
Yes,I was intending to say framebuffer but I was working on another
similar patch simultaneously so I reused same words by mistake. Thanks
for clarifying that.>
Yes, we've recently received plenty of these pointless changes. The
correct code would compute the number of bytes per pixel using
drm_format_info_min_pitch() and multiply with fb->height. The latter
could (maybe) use kmalloc_array(). It would still not be an array in the
common sense.
Thanks for the review and suggestion.I will be sending a v2 patch with
the recommended code change.
Best Regards,
Mehdi Ben Hadj Khelifa> Best regards
Thomas
thanks,
greg k-h
--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)