From aa1a64f35ac101f1b9ea6d1f5f0211d8e187e7b7 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 3 Sep 2008 14:51:00 +0000 Subject: [PATCH] Added [un]lock_tracing_buffer(). This allows other components to analyze tracing buffer entries even when not in the kernel debugger. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27302 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/private/kernel/tracing.h | 2 ++ src/system/kernel/debug/tracing.cpp | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/headers/private/kernel/tracing.h b/headers/private/kernel/tracing.h index d8e3fe2d90..5ae50d65e8 100644 --- a/headers/private/kernel/tracing.h +++ b/headers/private/kernel/tracing.h @@ -208,6 +208,8 @@ char* alloc_tracing_buffer_strcpy(const char* source, size_t maxSize, tracing_stack_trace* capture_tracing_stack_trace(int32 maxCount, int32 skipFrames, bool userOnly); int dump_tracing(int argc, char** argv, WrapperTraceFilter* wrapperFilter); +void lock_tracing_buffer(); +void unlock_tracing_buffer(); status_t tracing_init(void); void _user_ktrace_output(const char *message); diff --git a/src/system/kernel/debug/tracing.cpp b/src/system/kernel/debug/tracing.cpp index b233558de3..b857676424 100644 --- a/src/system/kernel/debug/tracing.cpp +++ b/src/system/kernel/debug/tracing.cpp @@ -1179,6 +1179,24 @@ dump_tracing(int argc, char** argv, WrapperTraceFilter* wrapperFilter) } +void +lock_tracing_buffer() +{ +#if ENABLE_TRACING + acquire_spinlock(&sLock); +#endif +} + + +void +unlock_tracing_buffer() +{ +#if ENABLE_TRACING + release_spinlock(&sLock); +#endif +} + + extern "C" status_t tracing_init(void) {