Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
4.5 KiB

  1. /*++
  2. Copyright (c) 1998 Microsoft Corporation
  3. Module Name:
  4. stacks.h
  5. Abstract:
  6. This file contains the stack walking scripts for !stacks
  7. Author:
  8. Adrian J. Oney (adriao) 07-28-1998
  9. Environment:
  10. User Mode.
  11. Revision History:
  12. --*/
  13. //
  14. // This tree describes a tree of functions that will be "drilled" through when
  15. // !stacks is used to give a summary of what each thread is currently doing...
  16. //
  17. // SKIP_FRAME - The entry should be skipped if a thread is being examined to
  18. // determine what "really" is going on.
  19. //
  20. // SKIP_THREAD - The thread should be skipped if the symbol is found on the
  21. // stack immediately after SKIP_FRAME processing.
  22. //
  23. BEGIN_TREE();
  24. DECLARE_ENTRY("nt!KiSwapContext", SKIP_FRAME);
  25. DECLARE_ENTRY("nt!KiSwapThread", SKIP_FRAME);
  26. DECLARE_ENTRY("nt!KiSwapThreadExit", SKIP_FRAME);
  27. DECLARE_ENTRY("nt!KiSystemService", SKIP_FRAME);
  28. DECLARE_ENTRY("nt!_KiSystemService", SKIP_FRAME);
  29. DECLARE_ENTRY("nt!KeRemoveQueue", SKIP_FRAME);
  30. DECLARE_ENTRY("nt!ExpWaitForResource", SKIP_FRAME);
  31. DECLARE_ENTRY("nt!ExAcquireResourceSharedLite", SKIP_FRAME);
  32. DECLARE_ENTRY("nt!ExAcquireResourceExclusiveLite", SKIP_FRAME);
  33. DECLARE_ENTRY("nt!ExpAcquireResourceExclusiveLite", SKIP_FRAME);
  34. DECLARE_ENTRY("nt!KeWaitForSingleObject", SKIP_FRAME);
  35. DECLARE_ENTRY("nt!VerifierKeWaitForSingleObject", SKIP_FRAME);
  36. DECLARE_ENTRY("nt!NtWaitForSingleObject", SKIP_FRAME);
  37. DECLARE_ENTRY("nt!KeWaitForMultipleObjects", SKIP_FRAME);
  38. DECLARE_ENTRY("nt!NtWaitForMultipleObjects", SKIP_FRAME);
  39. DECLARE_ENTRY("nt!NtRemoveIoCompletion", SKIP_FRAME);
  40. DECLARE_ENTRY("nt!NtReplyWaitReceivePort", SKIP_FRAME);
  41. DECLARE_ENTRY("nt!NtReplyWaitReceivePortEx", SKIP_FRAME);
  42. DECLARE_ENTRY("nt!ZwReplyWaitReceivePort", SKIP_FRAME);
  43. DECLARE_ENTRY("nt!IopSynchronousServiceTail", SKIP_FRAME);
  44. DECLARE_ENTRY("nt!NtRequestWaitReplyPort", SKIP_FRAME);
  45. DECLARE_ENTRY("nt!KeDelayExecutionThread", SKIP_FRAME);
  46. DECLARE_ENTRY("nt!NtDelayExecution", SKIP_FRAME);
  47. DECLARE_ENTRY("nt!KiUnlockDispatcherDatabase", SKIP_FRAME);
  48. DECLARE_ENTRY("nt!KeSetEvent", SKIP_FRAME);
  49. DECLARE_ENTRY("nt!KeInsertQueue", SKIP_FRAME);
  50. DECLARE_ENTRY("nt!ExQueueWorkItem", SKIP_FRAME);
  51. DECLARE_ENTRY("nt!MmZeroPageThread", SKIP_THREAD);
  52. DECLARE_ENTRY("nt!PspSystemThreadStartup", SKIP_THREAD);
  53. DECLARE_ENTRY("nt!ExpWorkerThread", SKIP_THREAD);
  54. DECLARE_ENTRY("nt!ExpWorkerThreadBalanceManager", SKIP_THREAD);
  55. DECLARE_ENTRY("nt!MiDereferenceSegmentThread", SKIP_THREAD);
  56. DECLARE_ENTRY("nt!MiModifiedPageWriterWorker", SKIP_THREAD);
  57. DECLARE_ENTRY("nt!KeBalanceSetManager", SKIP_THREAD);
  58. DECLARE_ENTRY("nt!KeSwapProcessOrStack", SKIP_THREAD);
  59. DECLARE_ENTRY("nt!FsRtlWorkerThread", SKIP_THREAD);
  60. DECLARE_ENTRY("nt!SepRmCommandServerThread", SKIP_THREAD);
  61. DECLARE_ENTRY("nt!MiMappedPageWriter", SKIP_THREAD);
  62. DECLARE_ENTRY("nt!NtGetPlugPlayEvent", SKIP_THREAD);
  63. DECLARE_ENTRY("nt!PspReaper", SKIP_THREAD);
  64. DECLARE_ENTRY("nt!WmipLogger", SKIP_THREAD);
  65. DECLARE_ENTRY("srv!WorkerThread", SKIP_THREAD);
  66. DECLARE_ENTRY("NDIS!ndisWorkerThread", SKIP_THREAD);
  67. DECLARE_ENTRY("dmio!voliod_loop", SKIP_THREAD);
  68. DECLARE_ENTRY("raspptp!PacketWorkingThread", SKIP_THREAD);
  69. DECLARE_ENTRY("raspptp!MainPassiveLevelThread", SKIP_THREAD);
  70. DECLARE_ENTRY("rdpdr!RxpWorkerThreadDispatcher", SKIP_THREAD);
  71. DECLARE_ENTRY("rdpdr!RxSpinUpRequestsDispatcher", SKIP_THREAD);
  72. DECLARE_ENTRY("mrxdav!RxpWorkerThreadDispatcher", SKIP_THREAD);
  73. DECLARE_ENTRY("mrxdav!RxSpinUpRequestsDispatcher", SKIP_THREAD);
  74. DECLARE_ENTRY("mrxdav!RxWorkItemDispatcher", SKIP_THREAD);
  75. DECLARE_ENTRY("rdbss!RxpWorkerThreadDispatcher", SKIP_THREAD);
  76. DECLARE_ENTRY("rdbss!RxSpinUpRequestsDispatcher", SKIP_THREAD);
  77. DECLARE_ENTRY("rasacd!AcdNotificationRequestThread", SKIP_THREAD);
  78. DECLARE_ENTRY("win32k!RawInputThread", SKIP_THREAD);
  79. DECLARE_ENTRY("win32k!xxxSleepThread", SKIP_THREAD);
  80. DECLARE_ENTRY("redbook!RedBookSystemThread", SKIP_THREAD);
  81. DECLARE_ENTRY("USBPORT!USBPORT_WorkerThread", SKIP_THREAD);
  82. DECLARE_ENTRY("ACPI!ACPIWorker", SKIP_THREAD);
  83. DECLARE_ENTRY("kmixer!MxPrivateWorkerThread", SKIP_THREAD);
  84. DECLARE_ENTRY("irda!RxThread", SKIP_THREAD);
  85. DECLARE_ENTRY("irenum!WorkerThread", SKIP_THREAD);
  86. DECLARE_ENTRY("ltmdmntt!WriteRegistryThread", SKIP_THREAD);
  87. DECLARE_ENTRY("ltmdmntt!WakeupTimerThread", SKIP_THREAD);
  88. DECLARE_ENTRY("TDI!CTEpEventHandler", SKIP_THREAD);
  89. DECLARE_ENTRY("parport!P5FdoThread", SKIP_THREAD);
  90. DECLARE_ENTRY("*SharedIntelSystemCall", SKIP_THREAD);
  91. DECLARE_ENTRY("*SharedUserSystemCall", SKIP_THREAD);
  92. END_TREE();