* [PATCH] GPU: drm: nouveau: Prevent kernel oops on missing firmware binary [not found] <20261105202757.28703-1-jonathan.kuehn.ref@aol.com> @ 2026-11-05 20:27 ` Jonathan Kuehn 0 siblings, 0 replies; 4+ messages in thread From: Jonathan Kuehn @ 2026-11-05 20:27 UTC (permalink / raw) To: lyude Cc: dakr, maarten.lankhorst, mripard, simona, airlied, dri-devel, nouveau, linux-kernel, Jonathan Kuehn Prevent null pointer dereference at the call of nouveau_abi16_ioctl_getparams with parameter NOUVEAU_GETPARAM_GRAPH_UNITS when firmware binaries are missing. Fixes crash for certain user-space applications (steamwebhelper, signal-desktop). Signed-off-by: Jonathan Kuehn <jonathan.kuehn@aol.com> --- drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c index cd4908b1b4df..9abeb9732406 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c @@ -72,7 +72,7 @@ nvkm_gr_tile(struct nvkm_engine *engine, int region, struct nvkm_fb_tile *tile) u64 nvkm_gr_units(struct nvkm_gr *gr) { - if (gr->func->units) + if (gr && gr->func->units) return gr->func->units(gr); return 0; } -- 2.47.3 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH] GPU: drm: nouveau: Prevent kernel oops on missing firmware binary @ 2026-11-05 20:27 ` Jonathan Kuehn 0 siblings, 0 replies; 4+ messages in thread From: Jonathan Kuehn @ 2026-11-05 20:27 UTC (permalink / raw) To: lyude Cc: dakr, maarten.lankhorst, mripard, tzimmermann, airlied, simona, airlied, dri-devel, nouveau, linux-kernel, Jonathan Kuehn Prevent null pointer dereference at the call of nouveau_abi16_ioctl_getparams with parameter NOUVEAU_GETPARAM_GRAPH_UNITS when firmware binaries are missing. Fixes crash for certain user-space applications (steamwebhelper, signal-desktop). Signed-off-by: Jonathan Kuehn <jonathan.kuehn@aol.com> --- drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c index cd4908b1b4df..9abeb9732406 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c @@ -72,7 +72,7 @@ nvkm_gr_tile(struct nvkm_engine *engine, int region, struct nvkm_fb_tile *tile) u64 nvkm_gr_units(struct nvkm_gr *gr) { - if (gr->func->units) + if (gr && gr->func->units) return gr->func->units(gr); return 0; } -- 2.47.3 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] GPU: drm: nouveau: Prevent kernel oops on missing firmware binary 2026-11-05 20:27 ` Jonathan Kuehn (?) @ 2026-11-05 20:44 ` sashiko-bot 2026-11-05 21:15 ` Jonathan Kuehn -1 siblings, 1 reply; 4+ messages in thread From: sashiko-bot @ 2026-11-05 20:44 UTC (permalink / raw) To: Jonathan Kuehn; +Cc: dri-devel Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Medium] drm/nouveau: redundant gr NULL check in nvkm_gr_units() after caller fix -- commit f535382c50460cf93f6d91dd265e009e3ef99a0a Author: Jonathan Kuehn <jonathan.kuehn@aol.com> GPU: drm: nouveau: Prevent kernel oops on missing firmware binary This commit adds a NULL check for the gr pointer in nvkm_gr_units() to avoid a NULL pointer dereference when querying NOUVEAU_GETPARAM_GRAPH_UNITS with missing firmware binaries. > GPU: drm: nouveau: Prevent kernel oops on missing firmware binary > > Prevent null pointer dereference at the call of > nouveau_abi16_ioctl_getparams with parameter > NOUVEAU_GETPARAM_GRAPH_UNITS when firmware binaries are missing. > Fixes crash for certain user-space applications (steamwebhelper, > signal-desktop). > > Signed-off-by: Jonathan Kuehn <jonathan.kuehn@aol.com> > > diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c > index cd4908b1b4dff..9abeb9732406f 100644 > --- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c > +++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c > @@ -72,7 +72,7 @@ nvkm_gr_tile(struct nvkm_engine *engine, int region, struct nvkm_fb_tile *tile) > u64 > nvkm_gr_units(struct nvkm_gr *gr) > { > - if (gr->func->units) > + if (gr && gr->func->units) [Severity: Medium] Can a NULL gr pointer still reach nvkm_gr_units() here? Commit f569473c1393 ("drm/nouveau: prevent NULL deref of gr in GETPARAM_GRAPH_UNITS") already added a NULL check in nouveau_abi16_ioctl_getparam(), which is the sole caller of nvkm_gr_units() in the tree: drivers/gpu/drm/nouveau/nouveau_abi16.c:nouveau_abi16_ioctl_getparam() { ... case NOUVEAU_GETPARAM_GRAPH_UNITS: getparam->value = gr ? nvkm_gr_units(gr) : 0; break; ... } Since nouveau_abi16_ioctl_getparam() already guards against gr being NULL when handling NOUVEAU_GETPARAM_GRAPH_UNITS, does adding a second check in nvkm_gr_units() without updating the caller just duplicate the check with no change in runtime behavior? -- Sashiko AI review · https://sashiko.dev/#/patchset/20261105202757.28703-1-jonathan.kuehn@aol.com?part=1 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] GPU: drm: nouveau: Prevent kernel oops on missing firmware binary 2026-11-05 20:44 ` sashiko-bot @ 2026-11-05 21:15 ` Jonathan Kuehn 0 siblings, 0 replies; 4+ messages in thread From: Jonathan Kuehn @ 2026-11-05 21:15 UTC (permalink / raw) To: sashiko-bot; +Cc: dri-devel, jonathan.kuehn, sashiko-reviews >[Severity: Medium] >Can a NULL gr pointer still reach nvkm_gr_units() here? No, the oops was occuring on current debian kernel and I tested my patch there as well. For patching I used the drm-kernel-tree, but I forgot to check, if the check was performed previously in the call-trace. Sorry. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-11-06 9:19 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20261105202757.28703-1-jonathan.kuehn.ref@aol.com>
2026-11-05 20:27 ` [PATCH] GPU: drm: nouveau: Prevent kernel oops on missing firmware binary Jonathan Kuehn
2026-11-05 20:27 ` Jonathan Kuehn
2026-11-05 20:44 ` sashiko-bot
2026-11-05 21:15 ` Jonathan Kuehn
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.