From: Robert Noland Date: Sun, 15 Mar 2009 18:52:58 +0000 (-0500) Subject: libdrm_nouveau: The handle that is passed to mmap needs to be drm_handle_t X-Git-Tag: submit/1.0/20121108.012404~518 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2e2e8575b1ed4703653a72ac2b60b75316c388d7;p=profile%2Fivi%2Flibdrm.git libdrm_nouveau: The handle that is passed to mmap needs to be drm_handle_t drm_handle_t is defined to be a u32 on linux and a u64 on everything else. This addresses an issue on FreeBSD amd64 where the map offsets may be greater than 32bits. When the handle is cast to 32bit, mmap cannot match the requested map and causes X to crash. This should be a NOOP on linux since drm_handle_t is always 32bit. Signed-off-by: Robert Noland --- diff --git a/libdrm/nouveau/nouveau_private.h b/libdrm/nouveau/nouveau_private.h index 9dc1b44..32a9052 100644 --- a/libdrm/nouveau/nouveau_private.h +++ b/libdrm/nouveau/nouveau_private.h @@ -173,7 +173,7 @@ struct nouveau_bo_priv { /* Kernel object */ uint32_t global_handle; - unsigned handle; + drm_handle_t handle; void *map; /* Last known information from kernel on buffer status */