KhronosGroup / KhronosGroup/OpenCL-Layers

Query Underlying Implementation for Info of Variable Length

Open
#13 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
13
Forks
13
PR merge metrics
No merged PRs in 30d

Description

For Infos that return a variable amount of data, we should be querying the underlying driver for the size of the data.

Example: with clGetDeviceInfo and CL_DEVICE_NAME for now the layer is comparing the size of the provided buffer with `sizeof(char[1])`. To be valid, the buffer should be of at least the size the underlying implementation is requesting, obtained through the `param_value_size_ret`.

This problem is different than the one mentioned in https://github.com/KhronosGroup/OpenCL-Layers/issues/12 and does not require as much tooling.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the layer's handling of clGetDeviceInfo, using CL_DEVICE_NAME as the concrete example. Check how the underlying implementation reports param_value_size_ret, and consider the work complete when variable-length info is validated against that requested size rather than a fixed one-byte size.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.