From 25943ff03dff4165561012f11f6d7b8c60f304a1 Mon Sep 17 00:00:00 2001
From: foreman
Date: Mon, 26 Jun 2017 15:19:59 -0400
Subject: [PATCH] P4 to Git Change 1426879 by cpaquot@cpaquot-ocl-lc-lnx on
2017/06/26 15:12:46
SWDEV-107819 - Offset buffer address
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocmemory.cpp#25 edit
[ROCm/clr commit: 815623b306b7a680a20570619b7030b705bb38e9]
---
projects/clr/rocclr/runtime/device/rocm/rocmemory.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/projects/clr/rocclr/runtime/device/rocm/rocmemory.cpp b/projects/clr/rocclr/runtime/device/rocm/rocmemory.cpp
index 1bc5240156..535880ef5f 100644
--- a/projects/clr/rocclr/runtime/device/rocm/rocmemory.cpp
+++ b/projects/clr/rocclr/runtime/device/rocm/rocmemory.cpp
@@ -177,8 +177,8 @@ bool Memory::createInteropBuffer(GLenum targetType, int miplevel) {
#else
assert(owner()->isInterop() && "Object is not an interop object.");
- mesa_glinterop_export_in in;
- mesa_glinterop_export_out out;
+ mesa_glinterop_export_in in = {0};
+ mesa_glinterop_export_out out = {0};
in.size = sizeof(mesa_glinterop_export_in);
out.size = sizeof(mesa_glinterop_export_out);
@@ -218,6 +218,8 @@ bool Memory::createInteropBuffer(GLenum targetType, int miplevel) {
1, &agent, out.dmabuf_fd, 0, &size, &deviceMemory_, &metadata_size, (const void**)&metadata);
close(out.dmabuf_fd);
+ deviceMemory_ = static_cast(deviceMemory_) + out.buf_offset;
+
if (status != HSA_STATUS_SUCCESS) return false;
// if map_buffer wrote anything in metadata, copy it to amdImageDesc_