mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-12 09:30:36 +08:00
fix: xe debugger - set lrc and exec queue on page fault event
Related-to: GSD-11826 Signed-off-by: Brandon Yates <brandon.yates@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
621dbdbc37
commit
6a66c5df71
@@ -1117,6 +1117,10 @@ void DebugSessionLinux::handlePageFaultEvent(PageFaultEvent &pfEvent) {
|
||||
}
|
||||
}
|
||||
for (auto &threadId : stoppedThreads) {
|
||||
AttentionEventFields attention = {};
|
||||
attention.lrcHandle = pfEvent.lrcHandle;
|
||||
attention.contextHandle = pfEvent.execQueueHandle;
|
||||
updateContextAndLrcHandlesForThreadsWithAttention(threadId, attention);
|
||||
if (tileSessionsEnabled) {
|
||||
addThreadToNewlyStoppedFromRaisedAttentionForTileSession(threadId, pfEvent.vmHandle, stateSaveAreaMemory.data(), pfEvent.tileIndex);
|
||||
} else {
|
||||
|
||||
@@ -302,6 +302,8 @@ struct DebugSessionLinux : DebugSessionImp {
|
||||
uint64_t vmHandle;
|
||||
uint32_t tileIndex;
|
||||
uint64_t pageFaultAddress;
|
||||
uint64_t execQueueHandle;
|
||||
uint64_t lrcHandle;
|
||||
uint32_t bitmaskSize;
|
||||
uint8_t *bitmask;
|
||||
};
|
||||
|
||||
@@ -445,7 +445,7 @@ void DebugSessionLinuxi915::handleEvent(prelim_drm_i915_debug_event *event) {
|
||||
if (vmHandle == invalidHandle) {
|
||||
return;
|
||||
}
|
||||
PageFaultEvent pfEvent = {vmHandle, tileIndex, pf->page_fault_address, pf->bitmask_size, pf->bitmask};
|
||||
PageFaultEvent pfEvent = {vmHandle, tileIndex, pf->page_fault_address, 0u, 0u, pf->bitmask_size, pf->bitmask};
|
||||
handlePageFaultEvent(pfEvent);
|
||||
} break;
|
||||
|
||||
|
||||
@@ -394,7 +394,7 @@ void DebugSessionLinuxXe::handleEvent(NEO::EuDebugEvent *event) {
|
||||
if (vmHandle == invalidHandle) {
|
||||
return;
|
||||
}
|
||||
PageFaultEvent pfEvent = {vmHandle, tileIndex, pf->pagefaultAddress, pf->bitmaskSize, pf->bitmask};
|
||||
PageFaultEvent pfEvent = {vmHandle, tileIndex, pf->pagefaultAddress, pf->execQueueHandle, pf->lrcHandle, pf->bitmaskSize, pf->bitmask};
|
||||
handlePageFaultEvent(pfEvent);
|
||||
} else {
|
||||
additionalEvents(event);
|
||||
|
||||
Reference in New Issue
Block a user