fix: Use BCS when read from image from buffer

Related-To: HSD-14025883793

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
Lukasz Jobczyk
2025-09-09 11:08:07 +00:00
committed by Compute-Runtime-Automation
parent 57839447ff
commit 977f3b92be
3 changed files with 31 additions and 5 deletions

View File

@@ -288,13 +288,14 @@ CommandStreamReceiver &CommandQueue::selectCsrForBuiltinOperation(const CsrSelec
case TransferDirection::hostToHost:
case TransferDirection::hostToLocal:
case TransferDirection::localToHost: {
auto isWriteToImageFromBuffer = args.dstResource.image && args.dstResource.image->isImageFromBuffer();
auto isAccessToImageFromBuffer = (args.dstResource.image && args.dstResource.image->isImageFromBuffer()) ||
(args.srcResource.image && args.srcResource.image->isImageFromBuffer());
auto &productHelper = device->getProductHelper();
preferBcs = device->getRootDeviceEnvironment().isWddmOnLinux() || productHelper.blitEnqueuePreferred(isWriteToImageFromBuffer);
preferBcs = device->getRootDeviceEnvironment().isWddmOnLinux() || productHelper.blitEnqueuePreferred(isAccessToImageFromBuffer);
if (debugManager.flags.EnableBlitterForEnqueueOperations.get() == 1) {
preferBcs = true;
} else if (debugManager.flags.EnableBlitterForEnqueueOperations.get() == 2) {
preferBcs = isWriteToImageFromBuffer;
preferBcs = isAccessToImageFromBuffer;
}
auto preferredBCSType = true;