P4 to Git Change 1772193 by mshivama@mshivama_tf on 2019/04/19 09:39:39
SWDEV-187020 - Basic "Hello World" Tensorflow program fails to execute on HIP/VDI/PAL/LINUX
the API hiDeviceGetName() should pass the length of device name as argument to strncpy() instead
of total (dest) memory size which is being passed to it by its caller. Also, bit of a code clean-up.
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_device.cpp#18 edit
[ROCm/clr commit: 4538956a99]
此提交包含在:
1 父節點
24f9c12ef7
當前提交
a907a2c974
1 file changed
+7
-3
@@ -110,15 +110,19 @@ hipError_t hipDeviceGetName(char *name, int len, hipDevice_t device) {
|
||||
HIP_RETURN(hipErrorInvalidDevice);
|
||||
}
|
||||
|
||||
if (name == nullptr) {
|
||||
if (name == nullptr || len <= 0) {
|
||||
HIP_RETURN(hipErrorInvalidValue);
|
||||
}
|
||||
|
||||
auto* deviceHandle = g_devices[device]->devices()[0];
|
||||
const auto& info = deviceHandle->info();
|
||||
const auto nameLen = ::strlen(info.boardName_);
|
||||
|
||||
len = ((cl_uint)len < ::strlen(info.boardName_)) ? len : 128;
|
||||
::strncpy(name, info.boardName_, len);
|
||||
if (nameLen > (cl_uint)len) {
|
||||
HIP_RETURN(hipErrorInvalidValue);
|
||||
}
|
||||
|
||||
::strncpy(name, info.boardName_, nameLen);
|
||||
|
||||
HIP_RETURN(hipSuccess);
|
||||
}
|
||||
|
||||
Reference in new issue
封鎖使用者