]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
Revert "nouveau/gsp/rm: cleanup remaining IS_ERR_OR_NULL usage"
authorLyude Paul <lyude@redhat.com>
Thu, 28 May 2026 19:27:15 +0000 (15:27 -0400)
committerDanilo Krummrich <dakr@kernel.org>
Thu, 28 May 2026 20:49:52 +0000 (22:49 +0200)
This reverts commit 1a80c009e27b42e8c202d4c5dbd9dad9e22af742.

Embarassingly, it seems that I completely missed a pretty big issue this
patch causes according to Danilo and Sashiko:

https://lists.freedesktop.org/archives/dri-devel/2026-May/570353.html

Where it seems this causes some machines to segfault during nouveau probe.

So, revert this for the time being.

Signed-off-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Timur Tabi <ttabi@nvidia.com>
Link: https://patch.msgid.link/20260528192847.4077458-2-lyude@redhat.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/ctrl.c
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/rpc.c

index aa0ebd3dfb17d89ec8b6248f37b00b51e618575e..70b9ee911c5e7e905af128296635e08b82d2f445 100644 (file)
@@ -42,7 +42,7 @@ r535_gsp_rpc_rm_ctrl_push(struct nvkm_gsp_object *object, void **params, u32 rep
        int ret = 0;
 
        rpc = nvkm_gsp_rpc_push(gsp, rpc, NVKM_GSP_RPC_REPLY_RECV, repc);
-       if (IS_ERR(rpc)) {
+       if (IS_ERR_OR_NULL(rpc)) {
                *params = NULL;
                return PTR_ERR(rpc);
        }
index 0c9657cb2dd72a4254db7256e6a32f8b976f7fc6..41301f19729cf86800847a1a63d72422328306e1 100644 (file)
@@ -459,11 +459,11 @@ r535_gsp_msg_recv(struct nvkm_gsp *gsp, int fn, u32 gsp_rpc_len)
 
 retry:
        rpc = r535_gsp_msgq_peek(gsp, sizeof(*rpc), &retries);
-       if (IS_ERR(rpc))
+       if (IS_ERR_OR_NULL(rpc))
                return rpc;
 
        rpc = r535_gsp_msgq_recv(gsp, gsp_rpc_len, &retries);
-       if (IS_ERR(rpc))
+       if (IS_ERR_OR_NULL(rpc))
                return rpc;
 
        if (rpc->rpc_result) {
@@ -561,7 +561,7 @@ r535_gsp_rpc_handle_reply(struct nvkm_gsp *gsp, u32 fn,
                break;
        case NVKM_GSP_RPC_REPLY_RECV:
                reply = r535_gsp_msg_recv(gsp, fn, gsp_rpc_len);
-               if (!IS_ERR(reply))
+               if (!IS_ERR_OR_NULL(reply))
                        repv = reply->data;
                else
                        repv = reply;