mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 13:28:06 +02:00
rusticl/queue: add clSetCommandQueueProperty
The CL CTS started to call this API, luckily we don't have to actually
implement it, because we don't intent to support CL 1.0 only devices in
the first place (probably).
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30575>
(cherry picked from commit cd2dc4f70c)
This commit is contained in:
parent
34467ad0be
commit
a891ed8dcf
3 changed files with 18 additions and 2 deletions
|
|
@ -2654,7 +2654,7 @@
|
|||
"description": "rusticl/queue: add clSetCommandQueueProperty",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ pub static DISPATCH: cl_icd_dispatch = cl_icd_dispatch {
|
|||
clRetainCommandQueue: Some(cl_retain_command_queue),
|
||||
clReleaseCommandQueue: Some(cl_release_command_queue),
|
||||
clGetCommandQueueInfo: Some(cl_get_command_queue_info),
|
||||
clSetCommandQueueProperty: None,
|
||||
clSetCommandQueueProperty: Some(cl_set_command_queue_property),
|
||||
clCreateBuffer: Some(cl_create_buffer),
|
||||
clCreateImage2D: Some(cl_create_image_2d),
|
||||
clCreateImage3D: Some(cl_create_image_3d),
|
||||
|
|
|
|||
|
|
@ -41,6 +41,22 @@ impl CLInfo<cl_command_queue_info> for cl_command_queue {
|
|||
}
|
||||
}
|
||||
|
||||
#[cl_entrypoint(clSetCommandQueueProperty)]
|
||||
fn set_command_queue_property(
|
||||
_command_queue: cl_command_queue,
|
||||
_properties: cl_command_queue_properties,
|
||||
_enable: cl_bool,
|
||||
_old_properties: *mut cl_command_queue_properties,
|
||||
) -> CLResult<()> {
|
||||
// clSetCommandQueueProperty may unconditionally return an error if no devices in the context
|
||||
// associated with command_queue support modifying the properties of a command-queue. Support
|
||||
// for modifying the properties of a command-queue is required only for OpenCL 1.0 devices.
|
||||
//
|
||||
// CL_INVALID_OPERATION if no devices in the context associated with command_queue support
|
||||
// modifying the properties of a command-queue.
|
||||
Err(CL_INVALID_OPERATION)
|
||||
}
|
||||
|
||||
fn valid_command_queue_properties(properties: cl_command_queue_properties) -> bool {
|
||||
let valid_flags = cl_bitfield::from(
|
||||
CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue