Files
compute-runtime/runtime/os_interface/linux/drm_allocation.cpp
Milczarek, Slawomir 093bc4da9c Add support for multiple buffer objects in drm allocation
Resolves: NEO-3364

Change-Id: I05e8b9a05328298dcc578d62b2aa7b56ffbf4ddc
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-09-06 10:16:05 +02:00

35 lines
908 B
C++

/*
* Copyright (C) 2019 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "runtime/os_interface/linux/drm_allocation.h"
#include "runtime/os_interface/linux/drm_buffer_object.h"
#include "runtime/os_interface/linux/drm_memory_manager.h"
#include <sstream>
namespace NEO {
std::string DrmAllocation::getAllocationInfoString() const {
std::stringstream ss;
for (auto bo : bufferObjects) {
if (bo != nullptr) {
ss << " Handle: " << bo->peekHandle();
}
}
return ss.str();
}
uint64_t DrmAllocation::peekInternalHandle(MemoryManager *memoryManager) {
auto drmMemoryManager = static_cast<DrmMemoryManager *>(memoryManager);
if (DebugManager.flags.AllowOpenFdOperations.get()) {
return static_cast<uint64_t>(drmMemoryManager->obtainFdFromHandle(getBO()->peekHandle()));
} else {
return 0llu;
}
}
} // namespace NEO