From 865a0be1c022cdd7d155ecb3a44ca2769bce4f60 Mon Sep 17 00:00:00 2001 From: Michael Lotz Date: Fri, 4 Nov 2011 17:58:50 +0000 Subject: [PATCH] Add optional stack traces to {Allocate|Free}Page[Run] tracing. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43185 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- build/config_headers/tracing_config.h | 1 + src/system/kernel/vm/vm_page.cpp | 14 +++++++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/build/config_headers/tracing_config.h b/build/config_headers/tracing_config.h index 85717d7f4a..4cbf14e560 100644 --- a/build/config_headers/tracing_config.h +++ b/build/config_headers/tracing_config.h @@ -35,6 +35,7 @@ #define NET_BUFFER_TRACING 0 #define NET_BUFFER_TRACING_STACK_TRACE 0 /* stack trace depth */ #define PAGE_ALLOCATION_TRACING 0 +#define PAGE_ALLOCATION_TRACING_STACK_TRACE 0 /* stack trace depth */ #define PAGE_DAEMON_TRACING 0 #define PAGE_STATE_TRACING 0 #define PAGE_STATE_TRACING_STACK_TRACE 0 /* stack trace depth */ diff --git a/src/system/kernel/vm/vm_page.cpp b/src/system/kernel/vm/vm_page.cpp index eb7a8ecb9c..69bf8d01da 100644 --- a/src/system/kernel/vm/vm_page.cpp +++ b/src/system/kernel/vm/vm_page.cpp @@ -272,9 +272,12 @@ private: }; -class AllocatePage : public AbstractTraceEntry { +class AllocatePage + : public TRACE_ENTRY_SELECTOR(PAGE_ALLOCATION_TRACING_STACK_TRACE) { public: AllocatePage() + : + TraceEntryBase(PAGE_ALLOCATION_TRACING_STACK_TRACE, 0, true) { Initialized(); } @@ -286,10 +289,12 @@ public: }; -class AllocatePageRun : public AbstractTraceEntry { +class AllocatePageRun + : public TRACE_ENTRY_SELECTOR(PAGE_ALLOCATION_TRACING_STACK_TRACE) { public: AllocatePageRun(uint32 length) : + TraceEntryBase(PAGE_ALLOCATION_TRACING_STACK_TRACE, 0, true), fLength(length) { Initialized(); @@ -305,9 +310,12 @@ private: }; -class FreePage : public AbstractTraceEntry { +class FreePage + : public TRACE_ENTRY_SELECTOR(PAGE_ALLOCATION_TRACING_STACK_TRACE) { public: FreePage() + : + TraceEntryBase(PAGE_ALLOCATION_TRACING_STACK_TRACE, 0, true) { Initialized(); }