Add tweaks and control flags to linux completion fence

Related-To: NEO-6575

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
This commit is contained in:
Zbigniew Zdanowicz
2022-01-20 18:13:07 +00:00
committed by Compute-Runtime-Automation
parent fdef257b01
commit a7455b5767
26 changed files with 407 additions and 34 deletions

View File

@@ -125,6 +125,10 @@ class DrmMockCustom : public Drm {
bool isVmBindAvailable() override;
bool completionFenceSupport() override {
return completionFenceSupported;
}
void testIoctls();
int ioctl(unsigned long request, void *arg) override;

View File

@@ -26,7 +26,7 @@ class TestedBufferObject : public BufferObject {
}
void tileBy(uint32_t mode) {
this->tiling_mode = mode;
this->tilingMode = mode;
}
void fillExecObject(drm_i915_gem_exec_object2 &execObject, OsContext *osContext, uint32_t vmHandleId, uint32_t drmContextId) override {
@@ -42,12 +42,14 @@ class TestedBufferObject : public BufferObject {
BufferObject *const residency[], size_t residencyCount, drm_i915_gem_exec_object2 *execObjectsStorage, uint64_t completionGpuAddress, uint32_t completionValue) override {
this->receivedCompletionGpuAddress = completionGpuAddress;
this->receivedCompletionValue = completionValue;
this->execCalled++;
return BufferObject::exec(used, startOffset, flags, requiresCoherency, osContext, vmHandleId, drmContextId, residency, residencyCount, execObjectsStorage, completionGpuAddress, completionValue);
}
uint64_t receivedCompletionGpuAddress = 0;
drm_i915_gem_exec_object2 *execObjectPointerFilled = nullptr;
uint32_t receivedCompletionValue = 0;
uint32_t execCalled = 0;
};
template <typename DrmClass>