Do not allow out of order execution for shared objects.

Change-Id: I2dbbd8f09485bd894774eb2c4548326475a41221
This commit is contained in:
Mrozek, Michal
2018-02-12 10:06:21 +01:00
parent 72b78d15ee
commit b5dab07aa2
4 changed files with 29 additions and 4 deletions

View File

@@ -538,7 +538,7 @@ CompletionStamp CommandQueueHw<GfxFamily>::enqueueNonBlocked(
dispatchFlags.implicitFlush = implicitFlush;
dispatchFlags.flushStampReference = this->flushStamp->getStampReference();
dispatchFlags.preemptionMode = PreemptionHelper::taskPreemptionMode(*device, multiDispatchInfo);
dispatchFlags.outOfOrderExecutionAllowed = !eventBuilder.getEvent() || this->isOOQEnabled();
dispatchFlags.outOfOrderExecutionAllowed = (!eventBuilder.getEvent() && !multiDispatchInfo.begin()->getKernel()->isUsingSharedObjArgs()) || this->isOOQEnabled();
DEBUG_BREAK_IF(taskLevel >= Event::eventNotReady);