fix: Two fixes for debugger SLM access

1) retry count needs to be increased. It is too low in some cases
2) Command.offset will get zero'd by SIP in some cases. We cannot
rely on it to maintain running value

Related-to: HSD-18043174020

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
This commit is contained in:
Brandon Yates
2025-10-22 14:30:48 +00:00
committed by Compute-Runtime-Automation
parent 085814dbee
commit 7f50c59c0c
2 changed files with 5 additions and 2 deletions

View File

@@ -235,7 +235,7 @@ struct DebugSessionImp : DebugSession {
std::condition_variable apiEventCondition;
constexpr static uint16_t slmAddressSpaceTag = 28;
constexpr static uint16_t slmSendBytesSize = 16;
constexpr static uint16_t sipRetryCount = 10;
constexpr static uint16_t sipRetryCount = 25;
uint32_t maxUnitsPerLoop = EXCHANGE_BUFFER_SIZE / slmSendBytesSize;
};
@@ -330,7 +330,8 @@ ze_result_t DebugSessionImp::slmMemoryAccess(EuThread::ThreadId threadId, const
remainingSlmSendUnits -= accessUnits;
countReadyBytes += accessUnits * slmSendBytesSize;
sipCommand.offset += accessUnits * slmSendBytesSize;
alignedOffset += accessUnits * slmSendBytesSize;
sipCommand.offset = alignedOffset;
}
if constexpr (!write) {