diff options
| author | Anuj Mittal <anuj.mittal@intel.com> | 2022-05-20 00:04:43 +0800 |
|---|---|---|
| committer | Anuj Mittal <anuj.mittal@intel.com> | 2022-05-20 00:25:29 +0800 |
| commit | ebb8c1c26e57e78563760431a57b6da388b82be2 (patch) | |
| tree | a3d6b993bd86b969a410760aa8ba426877512e9f /dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime | |
| parent | 8dd900317013acbe3b87e40fd3e47b25abdcb0f2 (diff) | |
| download | meta-intel-ebb8c1c26e57e78563760431a57b6da388b82be2.tar.gz | |
intel-compute-runtime: fix failures with gcc12
Backport patch to fix build failures like:
| recipe-sysroot/usr/include/c++/12.1.0/bits/unique_ptr.h:95:9: error: 'void operator delete(void*, std::size_t)' called on pointer returned from a mismatched allocation function [-Werror=mismatched-new-delete]
| 95 | delete __ptr;
| | ^~~~~~~~~~~~
| git/shared/source/os_interface/windows/wddm/adapter_info.cpp: In function 'std::wstring NEO::queryAdapterDriverStorePath(const Gdi&, D3DKMT_HANDLE)':
| git/shared/source/os_interface/windows/wddm/adapter_info.cpp:31:117: note: returned from 'void* operator new [](std::size_t)'
| 31 | std::unique_ptr<uint64_t> storage{new uint64_t[(privateDataSizeNeeded + sizeof(uint64_t) - 1) / sizeof(uint64_t)]};
| | ^
| In member function 'void std::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = long unsigned int]',
| inlined from 'std::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = long unsigned int; _Dp = std::default_delete<long unsigned int>]' at recipe-sysroot/usr/include/c++/12.1.0/bits/unique_ptr.h:396:17,
| inlined from 'std::wstring NEO::queryAdapterDriverStorePath(const Gdi&, D3DKMT_HANDLE)' at git/shared/source/os_interface/windows/wddm/adapter_info.cpp:46:1:
| recipe-sysroot/usr/include/c++/12.1.0/bits/unique_ptr.h:95:9: error: 'void operator delete(void*, std::size_t)' called on pointer returned from a mismatched allocation function [-Werror=mismatched-new-delete]
| 95 | delete __ptr;
| | ^~~~~~~~~~~~
| git/shared/source/os_interface/windows/wddm/adapter_info.cpp: In function 'std::wstring NEO::queryAdapterDriverStorePath(const Gdi&, D3DKMT_HANDLE)':
| git/shared/source/os_interface/windows/wddm/adapter_info.cpp:31:117: note: returned from 'void* operator new [](std::size_t)'
| 31 | std::unique_ptr<uint64_t> storage{new uint64_t[(privateDataSizeNeeded + sizeof(uint64_t) - 1) / sizeof(uint64_t)]};
| | ^
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Diffstat (limited to 'dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime')
| -rw-r--r-- | dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/ac01f74924ea9df977466d28fce1a049abc22a9d.patch | 234 |
1 files changed, 234 insertions, 0 deletions
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/ac01f74924ea9df977466d28fce1a049abc22a9d.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/ac01f74924ea9df977466d28fce1a049abc22a9d.patch new file mode 100644 index 00000000..c3eff71d --- /dev/null +++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/ac01f74924ea9df977466d28fce1a049abc22a9d.patch | |||
| @@ -0,0 +1,234 @@ | |||
| 1 | Upstream-Status: Backport | ||
| 2 | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> | ||
| 3 | |||
| 4 | From ac01f74924ea9df977466d28fce1a049abc22a9d Mon Sep 17 00:00:00 2001 | ||
| 5 | From: Mateusz Jablonski <mateusz.jablonski@intel.com> | ||
| 6 | Date: Thu, 28 Apr 2022 16:50:16 +0000 | ||
| 7 | Subject: [PATCH] style: fix gcc12 compilation errors | ||
| 8 | |||
| 9 | Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com> | ||
| 10 | --- | ||
| 11 | level_zero/core/source/cmdlist/cmdlist_hw.inl | 3 +++ | ||
| 12 | .../core/test/black_box_tests/zello_ipc_copy_dma_buf.cpp | 4 ++-- | ||
| 13 | .../core/test/black_box_tests/zello_ipc_copy_dma_buf_p2p.cpp | 4 ++-- | ||
| 14 | .../core/test/unit_tests/sources/device/test_device.cpp | 4 +++- | ||
| 15 | opencl/source/command_queue/command_queue.cpp | 2 +- | ||
| 16 | opencl/source/event/event.cpp | 4 ++++ | ||
| 17 | opencl/source/event/event.h | 1 + | ||
| 18 | shared/source/device_binary_format/ar/ar_encoder.cpp | 3 ++- | ||
| 19 | shared/source/gen12lp/command_stream_receiver_hw_gen12lp.cpp | 1 + | ||
| 20 | shared/source/helpers/blit_commands_helper_xehp_and_later.inl | 1 + | ||
| 21 | shared/source/os_interface/windows/wddm/adapter_info.cpp | 4 ++-- | ||
| 22 | shared/test/common/helpers/memory_management.cpp | 4 ++-- | ||
| 23 | 12 files changed, 24 insertions(+), 11 deletions(-) | ||
| 24 | |||
| 25 | diff --git a/level_zero/core/source/cmdlist/cmdlist_hw.inl b/level_zero/core/source/cmdlist/cmdlist_hw.inl | ||
| 26 | index 67a31118804..d06212346d3 100644 | ||
| 27 | --- a/level_zero/core/source/cmdlist/cmdlist_hw.inl | ||
| 28 | +++ b/level_zero/core/source/cmdlist/cmdlist_hw.inl | ||
| 29 | @@ -432,6 +432,7 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendImageCopyFromMemory(ze_i | ||
| 30 | switch (bytesPerPixel) { | ||
| 31 | default: | ||
| 32 | UNRECOVERABLE_IF(true); | ||
| 33 | + break; | ||
| 34 | case 1u: | ||
| 35 | builtinKernel = device->getBuiltinFunctionsLib()->getImageFunction(ImageBuiltin::CopyBufferToImage3dBytes); | ||
| 36 | break; | ||
| 37 | @@ -548,6 +549,7 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendImageCopyToMemory(void * | ||
| 38 | switch (bytesPerPixel) { | ||
| 39 | default: | ||
| 40 | UNRECOVERABLE_IF(true); | ||
| 41 | + break; | ||
| 42 | case 1u: | ||
| 43 | builtinKernel = device->getBuiltinFunctionsLib()->getImageFunction(ImageBuiltin::CopyImage3dToBufferBytes); | ||
| 44 | break; | ||
| 45 | @@ -1700,6 +1702,7 @@ inline uint64_t CommandListCoreFamily<gfxCoreFamily>::getInputBufferSize(NEO::Im | ||
| 46 | switch (imageType) { | ||
| 47 | default: | ||
| 48 | UNRECOVERABLE_IF(true); | ||
| 49 | + break; | ||
| 50 | case NEO::ImageType::Image1D: | ||
| 51 | case NEO::ImageType::Image1DArray: | ||
| 52 | return bytesPerPixel * region->width; | ||
| 53 | diff --git a/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf.cpp b/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf.cpp | ||
| 54 | index a48b385f77b..9814a368c93 100644 | ||
| 55 | --- a/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf.cpp | ||
| 56 | +++ b/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf.cpp | ||
| 57 | @@ -1,5 +1,5 @@ | ||
| 58 | /* | ||
| 59 | - * Copyright (C) 2020-2021 Intel Corporation | ||
| 60 | + * Copyright (C) 2020-2022 Intel Corporation | ||
| 61 | * | ||
| 62 | * SPDX-License-Identifier: MIT | ||
| 63 | * | ||
| 64 | @@ -69,7 +69,7 @@ static int recvmsg_fd(int socket) { | ||
| 65 | } | ||
| 66 | |||
| 67 | struct cmsghdr *controlHeader = CMSG_FIRSTHDR(&msgHeader); | ||
| 68 | - if (CMSG_DATA(controlHeader) == nullptr) { | ||
| 69 | + if (!CMSG_DATA(controlHeader)) { | ||
| 70 | return -1; | ||
| 71 | } | ||
| 72 | memmove(&fd, CMSG_DATA(controlHeader), sizeof(int)); | ||
| 73 | diff --git a/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf_p2p.cpp b/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf_p2p.cpp | ||
| 74 | index d7577c8d71a..28b42799a84 100644 | ||
| 75 | --- a/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf_p2p.cpp | ||
| 76 | +++ b/level_zero/core/test/black_box_tests/zello_ipc_copy_dma_buf_p2p.cpp | ||
| 77 | @@ -1,5 +1,5 @@ | ||
| 78 | /* | ||
| 79 | - * Copyright (C) 2020-2021 Intel Corporation | ||
| 80 | + * Copyright (C) 2020-2022 Intel Corporation | ||
| 81 | * | ||
| 82 | * SPDX-License-Identifier: MIT | ||
| 83 | * | ||
| 84 | @@ -69,7 +69,7 @@ static int recvmsg_fd(int socket) { | ||
| 85 | } | ||
| 86 | |||
| 87 | struct cmsghdr *controlHeader = CMSG_FIRSTHDR(&msgHeader); | ||
| 88 | - if (CMSG_DATA(controlHeader) == nullptr) { | ||
| 89 | + if (!CMSG_DATA(controlHeader)) { | ||
| 90 | return -1; | ||
| 91 | } | ||
| 92 | memmove(&fd, CMSG_DATA(controlHeader), sizeof(int)); | ||
| 93 | diff --git a/level_zero/core/test/unit_tests/sources/device/test_device.cpp b/level_zero/core/test/unit_tests/sources/device/test_device.cpp | ||
| 94 | index b807f8a015e..c49adc0ee3b 100644 | ||
| 95 | --- a/level_zero/core/test/unit_tests/sources/device/test_device.cpp | ||
| 96 | +++ b/level_zero/core/test/unit_tests/sources/device/test_device.cpp | ||
| 97 | @@ -915,7 +915,9 @@ TEST_F(DeviceTest, givenKernelPropertiesStructureWhenKernelPropertiesCalledThenA | ||
| 98 | device->getKernelProperties(&kernelProperties); | ||
| 99 | |||
| 100 | EXPECT_NE(kernelPropertiesBefore.spirvVersionSupported, kernelProperties.spirvVersionSupported); | ||
| 101 | - EXPECT_NE(kernelPropertiesBefore.nativeKernelSupported.id, kernelProperties.nativeKernelSupported.id); | ||
| 102 | + uint8_t *nativeKernelSupportedIdPointerBefore = kernelPropertiesBefore.nativeKernelSupported.id; | ||
| 103 | + uint8_t *nativeKernelSupportedIdPointerNow = kernelProperties.nativeKernelSupported.id; | ||
| 104 | + EXPECT_NE(nativeKernelSupportedIdPointerBefore, nativeKernelSupportedIdPointerNow); | ||
| 105 | |||
| 106 | EXPECT_TRUE(kernelPropertiesBefore.flags & ZE_DEVICE_MODULE_FLAG_FP16); | ||
| 107 | if (hardwareInfo.capabilityTable.ftrSupportsInteger64BitAtomics) { | ||
| 108 | diff --git a/opencl/source/command_queue/command_queue.cpp b/opencl/source/command_queue/command_queue.cpp | ||
| 109 | index 841f76d384c..b554bcecbb1 100644 | ||
| 110 | --- a/opencl/source/command_queue/command_queue.cpp | ||
| 111 | +++ b/opencl/source/command_queue/command_queue.cpp | ||
| 112 | @@ -345,7 +345,7 @@ uint32_t CommandQueue::getTaskLevelFromWaitList(uint32_t taskLevel, | ||
| 113 | const cl_event *eventWaitList) { | ||
| 114 | for (auto iEvent = 0u; iEvent < numEventsInWaitList; ++iEvent) { | ||
| 115 | auto pEvent = (Event *)(eventWaitList[iEvent]); | ||
| 116 | - uint32_t eventTaskLevel = pEvent->taskLevel; | ||
| 117 | + uint32_t eventTaskLevel = pEvent->peekTaskLevel(); | ||
| 118 | taskLevel = std::max(taskLevel, eventTaskLevel); | ||
| 119 | } | ||
| 120 | return taskLevel; | ||
| 121 | diff --git a/opencl/source/event/event.cpp b/opencl/source/event/event.cpp | ||
| 122 | index 87e07ef3d78..9275b13f8cc 100644 | ||
| 123 | --- a/opencl/source/event/event.cpp | ||
| 124 | +++ b/opencl/source/event/event.cpp | ||
| 125 | @@ -870,4 +870,8 @@ bool Event::checkUserEventDependencies(cl_uint numEventsInWaitList, const cl_eve | ||
| 126 | return userEventsDependencies; | ||
| 127 | } | ||
| 128 | |||
| 129 | +uint32_t Event::peekTaskLevel() const { | ||
| 130 | + return taskLevel; | ||
| 131 | +} | ||
| 132 | + | ||
| 133 | } // namespace NEO | ||
| 134 | diff --git a/opencl/source/event/event.h b/opencl/source/event/event.h | ||
| 135 | index 999e3fab182..4594c0e505d 100644 | ||
| 136 | --- a/opencl/source/event/event.h | ||
| 137 | +++ b/opencl/source/event/event.h | ||
| 138 | @@ -134,6 +134,7 @@ class Event : public BaseObject<_cl_event>, public IDNode<Event> { | ||
| 139 | std::unique_ptr<FlushStampTracker> flushStamp; | ||
| 140 | std::atomic<uint32_t> taskLevel; | ||
| 141 | |||
| 142 | + uint32_t peekTaskLevel() const; | ||
| 143 | void addChild(Event &e); | ||
| 144 | |||
| 145 | virtual bool setStatus(cl_int status); | ||
| 146 | diff --git a/shared/source/device_binary_format/ar/ar_encoder.cpp b/shared/source/device_binary_format/ar/ar_encoder.cpp | ||
| 147 | index c6856b8040c..467b2303f00 100644 | ||
| 148 | --- a/shared/source/device_binary_format/ar/ar_encoder.cpp | ||
| 149 | +++ b/shared/source/device_binary_format/ar/ar_encoder.cpp | ||
| 150 | @@ -1,5 +1,5 @@ | ||
| 151 | /* | ||
| 152 | - * Copyright (C) 2020 Intel Corporation | ||
| 153 | + * Copyright (C) 2020-2022 Intel Corporation | ||
| 154 | * | ||
| 155 | * SPDX-License-Identifier: MIT | ||
| 156 | * | ||
| 157 | @@ -55,6 +55,7 @@ ArFileEntryHeader *ArEncoder::appendFileEntry(const ConstStringRef fileName, con | ||
| 158 | |||
| 159 | std::vector<uint8_t> ArEncoder::encode() const { | ||
| 160 | std::vector<uint8_t> ret; | ||
| 161 | + ret.reserve(arMagic.size() + 1); | ||
| 162 | ret.insert(ret.end(), reinterpret_cast<const uint8_t *>(arMagic.begin()), reinterpret_cast<const uint8_t *>(arMagic.end())); | ||
| 163 | ret.insert(ret.end(), this->fileEntries.begin(), this->fileEntries.end()); | ||
| 164 | return ret; | ||
| 165 | diff --git a/shared/source/gen12lp/command_stream_receiver_hw_gen12lp.cpp b/shared/source/gen12lp/command_stream_receiver_hw_gen12lp.cpp | ||
| 166 | index c3a7df7e4c0..52083487772 100644 | ||
| 167 | --- a/shared/source/gen12lp/command_stream_receiver_hw_gen12lp.cpp | ||
| 168 | +++ b/shared/source/gen12lp/command_stream_receiver_hw_gen12lp.cpp | ||
| 169 | @@ -39,6 +39,7 @@ void BlitCommandsHelper<Family>::appendColorDepth(const BlitProperties &blitProp | ||
| 170 | switch (blitProperites.bytesPerPixel) { | ||
| 171 | default: | ||
| 172 | UNRECOVERABLE_IF(true); | ||
| 173 | + break; | ||
| 174 | case 1: | ||
| 175 | blitCmd.setColorDepth(XY_BLOCK_COPY_BLT::COLOR_DEPTH::COLOR_DEPTH_8_BIT_COLOR); | ||
| 176 | break; | ||
| 177 | diff --git a/shared/source/helpers/blit_commands_helper_xehp_and_later.inl b/shared/source/helpers/blit_commands_helper_xehp_and_later.inl | ||
| 178 | index 97b218b8b12..b456f5bedab 100644 | ||
| 179 | --- a/shared/source/helpers/blit_commands_helper_xehp_and_later.inl | ||
| 180 | +++ b/shared/source/helpers/blit_commands_helper_xehp_and_later.inl | ||
| 181 | @@ -246,6 +246,7 @@ void BlitCommandsHelper<GfxFamily>::appendColorDepth(const BlitProperties &blitP | ||
| 182 | switch (blitProperties.bytesPerPixel) { | ||
| 183 | default: | ||
| 184 | UNRECOVERABLE_IF(true); | ||
| 185 | + break; | ||
| 186 | case 1: | ||
| 187 | blitCmd.setColorDepth(XY_BLOCK_COPY_BLT::COLOR_DEPTH::COLOR_DEPTH_8_BIT_COLOR); | ||
| 188 | break; | ||
| 189 | diff --git a/shared/source/os_interface/windows/wddm/adapter_info.cpp b/shared/source/os_interface/windows/wddm/adapter_info.cpp | ||
| 190 | index 6092bf23bd9..aecff6cd606 100644 | ||
| 191 | --- a/shared/source/os_interface/windows/wddm/adapter_info.cpp | ||
| 192 | +++ b/shared/source/os_interface/windows/wddm/adapter_info.cpp | ||
| 193 | @@ -1,5 +1,5 @@ | ||
| 194 | /* | ||
| 195 | - * Copyright (C) 2021 Intel Corporation | ||
| 196 | + * Copyright (C) 2021-2022 Intel Corporation | ||
| 197 | * | ||
| 198 | * SPDX-License-Identifier: MIT | ||
| 199 | * | ||
| 200 | @@ -28,7 +28,7 @@ std::wstring queryAdapterDriverStorePath(const Gdi &gdi, D3DKMT_HANDLE adapter) | ||
| 201 | DEBUG_BREAK_IF(queryRegistryInfoSizeDesc.Status != D3DDDI_QUERYREGISTRY_STATUS_BUFFER_OVERFLOW); | ||
| 202 | |||
| 203 | const auto privateDataSizeNeeded = queryRegistryInfoSizeDesc.OutputValueSize + sizeof(D3DDDI_QUERYREGISTRY_INFO); | ||
| 204 | - std::unique_ptr<uint64_t> storage{new uint64_t[(privateDataSizeNeeded + sizeof(uint64_t) - 1) / sizeof(uint64_t)]}; | ||
| 205 | + auto storage = std::make_unique<uint64_t[]>((privateDataSizeNeeded + sizeof(uint64_t) - 1) / sizeof(uint64_t)); | ||
| 206 | D3DDDI_QUERYREGISTRY_INFO &queryRegistryInfoValueDesc = *reinterpret_cast<D3DDDI_QUERYREGISTRY_INFO *>(storage.get()); | ||
| 207 | queryRegistryInfoValueDesc = {}; | ||
| 208 | queryRegistryInfoValueDesc.QueryType = D3DDDI_QUERYREGISTRY_DRIVERSTOREPATH; | ||
| 209 | diff --git a/shared/test/common/helpers/memory_management.cpp b/shared/test/common/helpers/memory_management.cpp | ||
| 210 | index 501b6cdf18e..3558d7fb6d0 100644 | ||
| 211 | --- a/shared/test/common/helpers/memory_management.cpp | ||
| 212 | +++ b/shared/test/common/helpers/memory_management.cpp | ||
| 213 | @@ -1,5 +1,5 @@ | ||
| 214 | /* | ||
| 215 | - * Copyright (C) 2018-2021 Intel Corporation | ||
| 216 | + * Copyright (C) 2018-2022 Intel Corporation | ||
| 217 | * | ||
| 218 | * SPDX-License-Identifier: MIT | ||
| 219 | * | ||
| 220 | @@ -213,13 +213,13 @@ static void deallocate(void *p) { | ||
| 221 | #endif | ||
| 222 | eventDeallocation.fastLeakDetectionEnabled = fastLeakDetectionEnabled; | ||
| 223 | } | ||
| 224 | - free(p); | ||
| 225 | |||
| 226 | if (fastLeakDetectionEnabled && p && fastLeaksDetectionMode == LeakDetectionMode::STANDARD) { | ||
| 227 | auto currentIndex = fastEventsDeallocatedCount++; | ||
| 228 | fastEventsDeallocated[currentIndex] = p; | ||
| 229 | assert(currentIndex <= fastEvents); | ||
| 230 | } | ||
| 231 | + free(p); | ||
| 232 | } | ||
| 233 | } | ||
| 234 | int detectLeaks() { | ||
