SWDEV-314254 - Fix for hipMemcpy3D test crash

Change-Id: Iac70bfe0d351cfb5b56fefc9a6487d3f26f2b4ef
Цей коміт міститься в:
Sarbojit Sarkar
2021-12-09 07:31:03 +00:00
зафіксовано Sarbojit Sarkar
джерело 84af5eed4e
коміт aedbad0109
3 змінених файлів з 7 додано та 2 видалено
+2
Переглянути файл
@@ -834,6 +834,8 @@ class Memory : public amd::HeapObject {
virtual uint64_t virtualAddress() const { return 0; }
virtual uint64_t originalDeviceAddress() const { return 0; }
//! Returns CPU pointer to HW state
virtual const address cpuSrd() const { return nullptr; }
+3
Переглянути файл
@@ -102,6 +102,8 @@ class Memory : public device::Memory {
virtual uint64_t virtualAddress() const override { return reinterpret_cast<uint64_t>(getDeviceMemory()); }
virtual uint64_t originalDeviceAddress() const { return virtualAddress(); }
// Accessors for indirect map memory object
amd::Memory* mapMemory() const { return mapMemory_; }
@@ -219,6 +221,7 @@ class Image : public roc::Memory {
amd::Image* CopyImageBuffer() const { return copyImageBuffer_; }
virtual uint64_t originalDeviceAddress() const { return reinterpret_cast<uint64_t>(originalDeviceMemory_); }
private:
//! Disable copy constructor
Image(const Buffer&);
+2 -2
Переглянути файл
@@ -507,14 +507,14 @@ bool TwoMemoryArgsCommand::validatePeerMemory(){
// explicit allow access is needed for P2P access
device::Memory* mem1 = memory1_->getDeviceMemory(*srcDevices[0]);
if (!mem1->getAllowedPeerAccess() && srcDevices.size() == 1) {
void* src = reinterpret_cast<void*>(mem1->virtualAddress());
void* src = reinterpret_cast<void*>(mem1->originalDeviceAddress());
accessAllowed = srcDevices[0]->deviceAllowAccess(src);
mem1->setAllowedPeerAccess(true);
}
device::Memory* mem2 = memory2_->getDeviceMemory(*dstDevices[0]);
if (!mem2->getAllowedPeerAccess() && dstDevices.size() == 1) {
void* dst = reinterpret_cast<void*>(mem2->virtualAddress());
void* dst = reinterpret_cast<void*>(mem2->originalDeviceAddress());
accessAllowed &= dstDevices[0]->deviceAllowAccess(dst);
mem2->setAllowedPeerAccess(true);
}