Re: [PATCH v5 1/2] drm/rocket: Check allocations before use
From: Sidong Yang
Date: Wed Aug 26 2026 - 07:40:06 EST
Hi Triet,
This does not apply to drm-misc-next, which is the tree accel/rocket
goes through:
error: patch failed: drivers/accel/rocket/rocket_job.c:189
That is the rocket_job_push() hunk, already fixed there by
https://lore.kernel.org/all/20260524155716.90955-1-meatuni001@xxxxxxxxx/
with the same NULL check, the same check_add_overflow() and the same
Fixes: tag. Please drop that hunk.
The rocket_job_open() part is still needed. I forced the kmalloc_objs()
there to fail on drm-misc-next (debug-only module param, this kernel has
no fault injection) and open(2) oopses on a ROCK 5B+:
pc : rocket_job_open+0x64/0xd0 [rocket]
rocket_open / drm_file_alloc / drm_open_helper / accel_open
With your check, open(2) returns -ENOMEM and the log stays clean. Worth
mentioning in the commit message: rocket_open() calls try_module_get()
before rocket_job_open(), so that oops also leaks the module reference
and rmmod is blocked until reboot ("Module rocket is in use").
kfree(scheds) on the drm_sched_entity_init() error path is right too -
rocket_job_close() never runs if rocket_job_open() fails, since
rocket_open() unwinds and .postclose is not called.
> if (WARN_ON(ret))
Since you are touching this line: ret can be -ENOMEM from
drm_sched_entity_stats_new(). That is an allocation failure, not a driver
bug, so a plain if (ret) seems better than a stack trace.
So a v6 would be just the rocket_job_open() change, rebased. I built and
tested that (this patch minus the push hunk, plus 2/2); happy to give a
Tested-by on it.
Nit: the prefix in this driver is accel/rocket:, not drm/rocket:.
Thanks,
Sidong