feature: Add signal/wait support for OpaqueFd external semaphore

Related-To: NEO-14676

Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
This commit is contained in:
Raiyan Latif
2025-05-18 18:08:22 +00:00
committed by Compute-Runtime-Automation
parent 70619b4e6c
commit 2b5e2ee851
12 changed files with 145 additions and 6 deletions

View File

@@ -146,6 +146,18 @@ int DrmMockCustom::ioctl(DrmIoctl request, void *arg) {
return -1;
}
} break;
case DrmIoctl::syncObjWait: {
ioctlCnt.syncObjWait++;
if (failOnSyncObjWait == true) {
return -1;
}
} break;
case DrmIoctl::syncObjSignal: {
ioctlCnt.syncObjSignal++;
if (failOnSyncObjSignal == true) {
return -1;
}
} break;
case DrmIoctl::gemSetDomain: {
auto setDomainParams = static_cast<NEO::GemSetDomain *>(arg);
setDomainHandle = setDomainParams->handle;

View File

@@ -46,6 +46,8 @@ class Ioctls {
std::atomic<int32_t> primeFdToHandle;
std::atomic<int32_t> handleToPrimeFd;
std::atomic<int32_t> syncObjFdToHandle;
std::atomic<int32_t> syncObjWait;
std::atomic<int32_t> syncObjSignal;
std::atomic<int32_t> gemMmapOffset;
std::atomic<int32_t> gemSetDomain;
std::atomic<int32_t> gemWait;
@@ -278,6 +280,8 @@ struct DrmMockCustom : public Drm {
bool failOnSecondPrimeFdToHandle = false;
bool failOnPrimeHandleToFd = false;
bool failOnSyncObjFdToHandle = false;
bool failOnSyncObjWait = false;
bool failOnSyncObjSignal = false;
// DRM_IOCTL_I915_GEM_CREATE_EXT
uint64_t createExtSize = 0;