[llvm] [offload] fix invalid symbol handling in l0 plugin (PR #189442)
Ćukasz Plewa via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 1 09:13:08 PDT 2026
https://github.com/lplewa updated https://github.com/llvm/llvm-project/pull/189442
>From ecc5de93880c971ab979ce7256f6645d00e43069 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=81ukasz=20Plewa?= <lukasz.plewa at intel.com>
Date: Mon, 30 Mar 2026 19:59:20 +0200
Subject: [PATCH] [offload] fix invalid symbol handling in l0 plugin
---
offload/plugins-nextgen/level_zero/src/L0Kernel.cpp | 4 ++++
offload/plugins-nextgen/level_zero/src/L0Program.cpp | 4 ++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/offload/plugins-nextgen/level_zero/src/L0Kernel.cpp b/offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
index 8cccb5e116399..e30e55bba8f1b 100644
--- a/offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
+++ b/offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
@@ -71,6 +71,10 @@ Error L0KernelTy::buildKernel(L0ProgramTy &Program) {
const auto *KernelName = getName();
auto Module = Program.findModuleFromKernelName(KernelName);
+ if (!Module)
+ return Plugin::error(ErrorCode::NOT_FOUND,
+ "kernel '%s' not found in the program", KernelName);
+
ze_kernel_desc_t KernelDesc = {ZE_STRUCTURE_TYPE_KERNEL_DESC, nullptr, 0,
KernelName};
CALL_ZE_RET_ERROR(zeKernelCreate, Module, &KernelDesc, &zeKernel);
diff --git a/offload/plugins-nextgen/level_zero/src/L0Program.cpp b/offload/plugins-nextgen/level_zero/src/L0Program.cpp
index 6d4fac3be873b..5052ea75fb2aa 100644
--- a/offload/plugins-nextgen/level_zero/src/L0Program.cpp
+++ b/offload/plugins-nextgen/level_zero/src/L0Program.cpp
@@ -556,8 +556,8 @@ Expected<void *> L0ProgramTy::getSymbolDeviceAddr(const char *CName) const {
if (RC == ZE_RESULT_SUCCESS && DevicePtr)
return DevicePtr;
}
- return Plugin::error(ErrorCode::INVALID_ARGUMENT,
- "Symbol '%s' not found on device", CName);
+ return Plugin::error(ErrorCode::NOT_FOUND, "symbol '%s' not found on device",
+ CName);
}
Error L0ProgramTy::readGlobalVariable(const char *Name, size_t Size,
More information about the llvm-commits
mailing list