41 lines
2.0 KiB
Diff
41 lines
2.0 KiB
Diff
|
From 93e96da9458c9d0348f2390dc0bea67cf140b1a0 Mon Sep 17 00:00:00 2001
|
||
|
From: Karol Herbst <kherbst@redhat.com>
|
||
|
Date: Sun, 18 Aug 2024 00:08:50 +0200
|
||
|
Subject: [PATCH] rusticl: do not use CL vector types in bindings and code
|
||
|
|
||
|
Bindgen seems to miscompile them and I kinda thought I've done this
|
||
|
already in the past, but apparently not.
|
||
|
|
||
|
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11722
|
||
|
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30710>
|
||
|
---
|
||
|
src/gallium/frontends/rusticl/api/device.rs | 2 +-
|
||
|
src/gallium/frontends/rusticl/meson.build | 1 +
|
||
|
2 files changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
Index: mesa-24.2.2/src/gallium/frontends/rusticl/api/device.rs
|
||
|
===================================================================
|
||
|
--- mesa-24.2.2.orig/src/gallium/frontends/rusticl/api/device.rs
|
||
|
+++ mesa-24.2.2/src/gallium/frontends/rusticl/api/device.rs
|
||
|
@@ -196,7 +196,7 @@ impl CLInfo<cl_device_info> for cl_devic
|
||
|
// TODO proper retrival from devices
|
||
|
CL_DEVICE_MEM_BASE_ADDR_ALIGN => cl_prop::<cl_uint>(0x1000),
|
||
|
CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE => {
|
||
|
- cl_prop::<cl_uint>(size_of::<cl_ulong16>() as cl_uint)
|
||
|
+ cl_prop::<cl_uint>(16 * size_of::<cl_ulong>() as cl_uint)
|
||
|
}
|
||
|
CL_DEVICE_NAME => cl_prop::<&str>(&dev.screen().name()),
|
||
|
CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR => cl_prop::<cl_uint>(1),
|
||
|
Index: mesa-24.2.2/src/gallium/frontends/rusticl/meson.build
|
||
|
===================================================================
|
||
|
--- mesa-24.2.2.orig/src/gallium/frontends/rusticl/meson.build
|
||
|
+++ mesa-24.2.2/src/gallium/frontends/rusticl/meson.build
|
||
|
@@ -158,6 +158,7 @@ rusticl_opencl_bindings_rs = rust.bindge
|
||
|
'--raw-line', 'unsafe impl std::marker::Sync for _cl_image_desc {}',
|
||
|
'--allowlist-type', 'cl_.*',
|
||
|
'--allowlist-type', 'cl.*_fn',
|
||
|
+ '--blocklist-type', '(__)?cl_.*[2348(16)]',
|
||
|
'--allowlist-var', 'CL_.*',
|
||
|
# needed for gl_sharing extension
|
||
|
'--allowlist-var', 'GL_.*',
|