From fd085d2e3eb8f427dd7b314b63e0fc59a76abf1c Mon Sep 17 00:00:00 2001 From: Yiwei Zhang Date: Sun, 26 Oct 2025 20:20:46 -0700 Subject: [PATCH] llvmpipe: fix udmabuf mmap error check Upon failing to mmap, MAP_FAILED (void *)-1 is returned instead of NULL. Fixes: d74ea2c117f ("llvmpipe: Implement dmabuf handling") Reviewed-by: Christian Gmeiner Part-of: (cherry picked from commit 3e07f57d4ad7dcc85690de9f595a94ef9ad3fae1) --- .pick_status.json | 2 +- src/gallium/drivers/llvmpipe/lp_texture.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index f7596e66b75..7c3a75daac4 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2874,7 +2874,7 @@ "description": "llvmpipe: fix udmabuf mmap error check", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "d74ea2c117fe96e527471e572336f931c3c77da1", "notes": null diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c index 91355060ea5..104800ef0cc 100644 --- a/src/gallium/drivers/llvmpipe/lp_texture.c +++ b/src/gallium/drivers/llvmpipe/lp_texture.c @@ -1415,8 +1415,7 @@ llvmpipe_resource_alloc_udmabuf(struct llvmpipe_screen *screen, struct pipe_memory_allocation *data = mmap(NULL, size, PROT_WRITE | PROT_READ, MAP_SHARED, mem_fd, 0); - - if (!data) + if (data == MAP_FAILED) goto fail; alloc->mem_fd = mem_fd;