SWDEV-515407 - Fix incorrect test behavior

- For H2D transfer cases, we cannot enfore ErrorNotReady behavior if the
  source is unpinned. In that case the driver can sync depending on if
it pins or stages the source buffer.

Change-Id: I436a4b667bff172cfbadc58631a46a215c40fcb1
Dieser Commit ist enthalten in:
Saleel Kudchadker
2025-02-13 21:11:00 +00:00
Ursprung ff516573f2
Commit d8f5c2560f
2 geänderte Dateien mit 4 neuen und 6 gelöschten Zeilen
+2 -3
Datei anzeigen
@@ -426,10 +426,9 @@ template <typename F>
void Memcpy3DHtoDSyncBehavior(F memcpy_func, const bool should_sync,
const hipStream_t kernel_stream = nullptr) {
using LA = LinearAllocs;
const auto host_alloc_type = GENERATE(LA::malloc, LA::hipHostMalloc);
LinearAllocGuard3D<int> device_alloc(make_hipExtent(32 * sizeof(int), 32, 8));
LinearAllocGuard<int> host_alloc(
host_alloc_type, device_alloc.width() * device_alloc.height() * device_alloc.depth());
LA::hipHostMalloc, device_alloc.width() * device_alloc.height() * device_alloc.depth());
MemcpySyncBehaviorCheck(
std::bind(memcpy_func, device_alloc.pitched_ptr(), make_hipPos(0, 0, 0),
make_hipPitchedPtr(host_alloc.ptr(), device_alloc.width(), device_alloc.width(),
@@ -450,7 +449,7 @@ void Memcpy3DDtoHPageableSyncBehavior(F memcpy_func, const bool should_sync,
device_alloc.height()),
make_hipPos(0, 0, 0), device_alloc.pitched_ptr(), make_hipPos(0, 0, 0),
device_alloc.extent(), hipMemcpyDeviceToHost, kernel_stream),
should_sync, kernel_stream);
should_sync, kernel_stream);
}
template <typename F>
+2 -3
Datei anzeigen
@@ -196,13 +196,12 @@ template <bool unaligned = false, typename F>
void Memcpy2DHtoDSyncBehavior(F memcpy_func, const bool should_sync,
const hipStream_t kernel_stream = nullptr) {
using LA = LinearAllocs;
const auto host_alloc_type = GENERATE(LA::malloc, LA::hipHostMalloc);
LinearAllocGuard<int> host_alloc(host_alloc_type, 32 * sizeof(int) * 32);
LinearAllocGuard<int> host_alloc(LA::hipHostMalloc, 32 * sizeof(int) * 32);
LinearAllocGuard2D<int, unaligned> device_alloc(32, 32);
MemcpySyncBehaviorCheck(std::bind(memcpy_func, device_alloc.ptr(), device_alloc.pitch(),
host_alloc.ptr(), device_alloc.width(), device_alloc.width(),
device_alloc.height(), hipMemcpyHostToDevice),
should_sync, kernel_stream);
should_sync, kernel_stream);
}
template <bool unaligned = false, typename F>