diff --git a/projects/hip-tests/catch/multiproc/hipIpcMemAccessTest.cc b/projects/hip-tests/catch/multiproc/hipIpcMemAccessTest.cc index 0aed8a5a91..032e3a6193 100644 --- a/projects/hip-tests/catch/multiproc/hipIpcMemAccessTest.cc +++ b/projects/hip-tests/catch/multiproc/hipIpcMemAccessTest.cc @@ -138,9 +138,11 @@ TEST_CASE("Unit_hipIpcMemAccess_Semaphores") { } } for (int i = 0; i < Num_devices; ++i) { - HIP_CHECK(hipSetDevice(i)); + HIP_CHECK(hipDeviceCanAccessPeer(&CanAccessPeer, i, shrd_mem->device)); if (CanAccessPeer == 1) { + HIP_CHECK(hipDeviceEnablePeerAccess(i, 0)); + HIP_CHECK(hipSetDevice(i)); HIP_CHECK(hipMalloc(&C_d, Nbytes)); HIP_CHECK(hipIpcOpenMemHandle(reinterpret_cast(&B_d), shrd_mem->memHandle, hipIpcMemLazyEnablePeerAccess));