oneapi-src / oneapi-src/level-zero
zeKernelGetSourceAttributes: invalid ERROR_INVALID_NULL_POINTER with parameter validation
まだ誰も着手していません。
- 主要言語
- C++
- スター
- 335
- フォーク
- 140
- 平均マージ
- 12時間 32分
- マージ済み PR(30日)
- 5
説明
When invoking zeKernelGetSourceAttributes with a nullptr pString pointer to obtain the attribute size, https://github.com/intel/compute-runtime/blob/128cd8a31c16977ecc41bf13bdd35c2ac4907a5b/level_zero/core/source/kernel/kernel_imp.cpp#L443-L445, the validator erroneously throws an ERROR_INVALID_NULL_POINTER, https://github.com/oneapi-src/level-zero/blob/284ccb089184180e34864a9f1e23971d3d736bd8/source/layers/validation/ze_valddi.cpp#L3087-L3088
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
level_zero/core/source/kernel/kernel_imp.cpp の 443-445 行にあるリンク先の zeKernelGetSourceAttributes 実装と、ze_valddi.cpp の 3087-3088 行にある検証ロジックから始めます。nullptr を使用したサイズクエリの経路を追跡し、その呼び出しに対して検証が ERROR_INVALID_NULL_POINTER を報告しなくなっていることを確認するとともに、その他の無効な引数が引き続き正しく処理されることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp
- 領域
- api
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 45/100