Add prelim DRM page fault allocation check support

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
This commit is contained in:
Daniel Chabrowski
2022-02-10 16:16:37 +00:00
committed by Compute-Runtime-Automation
parent d1f2e40e5f
commit 23999110ed
13 changed files with 181 additions and 32 deletions

View File

@@ -13,6 +13,7 @@
#include <cstddef>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <vector>
@@ -83,6 +84,7 @@ class IoctlHelper {
virtual int32_t getComputeEngineClass() = 0;
virtual int execBuffer(Drm *drm, drm_i915_gem_execbuffer2 *execBuffer, uint64_t completionGpuAddress, uint32_t counterValue) = 0;
virtual bool completionFenceExtensionSupported(Drm &drm, const HardwareInfo &hwInfo) = 0;
virtual std::optional<int> getHasPageFaultParamId() = 0;
};
class IoctlHelperUpstream : public IoctlHelper {
@@ -109,6 +111,7 @@ class IoctlHelperUpstream : public IoctlHelper {
int32_t getComputeEngineClass() override;
int execBuffer(Drm *drm, drm_i915_gem_execbuffer2 *execBuffer, uint64_t completionGpuAddress, uint32_t counterValue) override;
bool completionFenceExtensionSupported(Drm &drm, const HardwareInfo &hwInfo) override;
std::optional<int> getHasPageFaultParamId() override;
};
template <PRODUCT_FAMILY gfxProduct>
@@ -148,6 +151,7 @@ class IoctlHelperPrelim20 : public IoctlHelper {
int32_t getComputeEngineClass() override;
int execBuffer(Drm *drm, drm_i915_gem_execbuffer2 *execBuffer, uint64_t completionGpuAddress, uint32_t counterValue) override;
bool completionFenceExtensionSupported(Drm &drm, const HardwareInfo &hwInfo) override;
std::optional<int> getHasPageFaultParamId() override;
};
} // namespace NEO