x86 kernel stack trace: break when return address is zero

* No need to continue walking the stack when a zero return
  address is found, only bogus frames will follow

* Fixes KDLs seen when using the system profiler, due to
  a bug that will be fixed in the next commit...
This commit is contained in:
Julian Harnath 2016-10-17 21:46:53 +02:00
parent 45e5951b88
commit e477b10cef

@ -1167,6 +1167,9 @@ arch_debug_get_stack_trace(addr_t* returnAddresses, int32 maxCount,
break;
}
}
if (ip == 0)
break;
if (skipFrames <= 0
&& ((flags & STACK_TRACE_KERNEL) != 0 || onKernelStack)) {