pps: Open writable renderer node in DrmDevice::create
authorDanylo Piliaiev <dpiliaiev@igalia.com>
Mon, 9 May 2022 17:28:28 +0000 (20:28 +0300)
committerMarge Bot <emma+marge@anholt.net>
Wed, 11 May 2022 15:41:28 +0000 (15:41 +0000)
DrmDevice::create_all correctly opened the node with O_RDWR, while
DrmDevice::create was not, causing failure to create writable buffer.

Fixes pps-config on Freedreno.

Fixes: 1cc72b2aef82373247466c2e7b81970c867ad0fa
("pps: Gfx-pps v0.3.0")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16406>

src/tool/pps/pps_device.cc

index c06ae1e..908aabf 100644 (file)
@@ -101,7 +101,7 @@ std::optional<DrmDevice> DrmDevice::create(int32_t gpu_num)
 
    if (num_devices > 0 && gpu_num < num_devices) {
       drmDevicePtr device = devices[gpu_num];
-      int fd = open(device->nodes[DRM_NODE_RENDER], O_RDONLY);
+      int fd = open(device->nodes[DRM_NODE_RENDER], O_RDWR);
       ret = create_drm_device(fd, gpu_num);
    }