Always initialize SVM heap for Windows 32-bit build

Related-To: NEO-2877

Change-Id: If576f57f8d69dc4ed4da11ede16fbdb2d0fcd286
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
This commit is contained in:
Venevtsev, Igor
2019-07-18 15:33:20 +02:00
committed by sys_ocldev
parent 6dd530babe
commit 7dfe57e982
3 changed files with 9 additions and 1 deletions

View File

@ -793,6 +793,8 @@ bool Wddm::waitFromCpu(uint64_t lastFenceValue, const MonitoredFence &monitoredF
void Wddm::initGfxPartition(GfxPartition &outGfxPartition) const {
if (gfxPartition.SVM.Limit != 0) {
outGfxPartition.heapInit(HeapIndex::HEAP_SVM, gfxPartition.SVM.Base, gfxPartition.SVM.Limit - gfxPartition.SVM.Base + 1);
} else if (is32bit) {
outGfxPartition.heapInit(HeapIndex::HEAP_SVM, 0x0ull, 4 * MemoryConstants::gigaByte);
}
outGfxPartition.heapInit(HeapIndex::HEAP_STANDARD, gfxPartition.Standard.Base, gfxPartition.Standard.Limit - gfxPartition.Standard.Base + 1);

View File

@ -496,7 +496,7 @@ bool WddmMemoryManager::createWddmAllocation(WddmAllocation *allocation, void *r
bool WddmMemoryManager::mapGpuVaForOneHandleAllocation(WddmAllocation *allocation, const void *preferredGpuVirtualAddress) {
D3DGPU_VIRTUAL_ADDRESS addressToMap = reinterpret_cast<D3DGPU_VIRTUAL_ADDRESS>(preferredGpuVirtualAddress);
auto heapIndex = selectHeap(allocation, preferredGpuVirtualAddress != nullptr, executionEnvironment.isFullRangeSvm());
auto heapIndex = selectHeap(allocation, preferredGpuVirtualAddress != nullptr, is32bit || executionEnvironment.isFullRangeSvm());
if (!executionEnvironment.isFullRangeSvm()) {
addressToMap = 0u;
}