freebsd-dev/sys/x86
Mark Johnston 610141cebb Add stack_save_td_running(), a function to trace the kernel stack of a
running thread.

It is currently implemented only on amd64 and i386; on these
architectures, it is implemented by raising an NMI on the CPU on which
the target thread is currently running. Unlike stack_save_td(), it may
fail, for example if the thread is running in user mode.

This change also modifies the kern.proc.kstack sysctl to use this function,
so that stacks of running threads are shown in the output of "procstat -kk".
This is handy for debugging threads that are stuck in a busy loop.

Reviewed by:	bdrewery, jhb, kib
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3256
2015-09-11 03:54:37 +00:00
..
acpica Automatically disable x2APIC mode on SandyBridge Lenovo machines. I 2015-08-21 15:13:25 +00:00
bios
cpufreq
include Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
iommu Comment only change, fix grammar and somewhat clarify the action. 2015-08-14 13:51:59 +00:00
isa Set the initial system time to a sane (as in: not end of 21st century) value when 2015-06-29 17:02:09 +00:00
pci
x86 Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
xen xen: allow disabling PV disks and nics 2015-08-21 15:53:08 +00:00