diff --git a/level_zero/core/source/image/image_imp.cpp b/level_zero/core/source/image/image_imp.cpp index 219eb37917..024ed13486 100644 --- a/level_zero/core/source/image/image_imp.cpp +++ b/level_zero/core/source/image/image_imp.cpp @@ -191,8 +191,9 @@ ze_result_t ImageImp::getDeviceOffset(uint64_t *deviceOffset) { return result; } -size_t ImageImp::getRowPitchFor2dImage(Device *device, NEO::ImageInfo imgInfo) { +size_t ImageImp::getRowPitchFor2dImage(Device *device, const NEO::ImageInfo &imgInfo) { NEO::StorageInfo storageInfo = {}; + NEO::ImageInfo info = imgInfo; NEO::GmmRequirements gmmRequirements{}; gmmRequirements.allowLargePages = true; @@ -200,11 +201,11 @@ size_t ImageImp::getRowPitchFor2dImage(Device *device, NEO::ImageInfo imgInfo) { DeviceImp *deviceImp = static_cast(device); NEO::Gmm gmm(deviceImp->getNEODevice()->getExecutionEnvironment()->rootDeviceEnvironments[deviceImp->getRootDeviceIndex()]->getGmmHelper(), - imgInfo, + info, storageInfo, false); - return imgInfo.rowPitch; + return info.rowPitch; } } // namespace L0 diff --git a/level_zero/core/source/image/image_imp.h b/level_zero/core/source/image/image_imp.h index 4647734180..8e761c61eb 100644 --- a/level_zero/core/source/image/image_imp.h +++ b/level_zero/core/source/image/image_imp.h @@ -49,7 +49,7 @@ struct ImageImp : public Image, NEO::NonCopyableOrMovableClass { ze_result_t allocateBindlessSlot() override; NEO::SurfaceStateInHeapInfo *getBindlessSlot() override; ze_result_t getDeviceOffset(uint64_t *deviceOffset) override; - static size_t getRowPitchFor2dImage(Device *device, NEO::ImageInfo imgInfo); + static size_t getRowPitchFor2dImage(Device *device, const NEO::ImageInfo &imgInfo); protected: Device *device = nullptr;