[lttng-dev] [PATCH lttng-ust] Turn base address dump into experimental feature

Paul Woegerer paul_woegerer at mentor.com
Fri Feb 28 04:02:00 EST 2014


Instead of having base address state dump enabled by default make it
necessary to explicitly enable it with environment variable
LTTNG_UST_WITH_EXPERIMENTAL_BADDR_STATEDUMP.

Documentation is updated to reflect this change and explain about the
experimental nature of this feature.

Signed-off-by: Paul Woegerer <paul_woegerer at mentor.com>
---
 doc/man/lttng-ust.3            | 10 +++++++---
 liblttng-ust/lttng-ust-baddr.c |  2 +-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/doc/man/lttng-ust.3 b/doc/man/lttng-ust.3
index 2fb287a..2c58fba 100644
--- a/doc/man/lttng-ust.3
+++ b/doc/man/lttng-ust.3
@@ -366,9 +366,13 @@ Pthread identifier. Can be used on architectures where pthread_t maps
 nicely to an unsigned long type.
 .PP
 
-.SH "BASE ADDRESS STATEDUMP"
+.SH "BASE ADDRESS STATEDUMP (Experimental feature)"
 
 .PP
+Warning: This is an experimental feature known to cause deadlocks when the
+traced application uses fork, clone or daemon. Only use it for debugging and
+testing.  Do NOT use it in production.
+
 If an application that uses liblttng-ust.so becomes part of a session,
 information about its currently loaded shared objects will be traced to the
 session at session-enable time. To record this information, the following event
@@ -405,8 +409,8 @@ specified in milliseconds. The value 0 means "don't wait". The value
 recommended for applications with time constraints on the process
 startup time.
 .PP
-.IP "LTTNG_UST_WITHOUT_BADDR_STATEDUMP"
-Prevent liblttng-ust to perform a base-address statedump on session-enable.
+.IP "LTTNG_UST_WITH_EXPERIMENTAL_BADDR_STATEDUMP"
+Experimentally allow liblttng-ust to perform a base-address statedump on session-enable.
 .PP
 
 .SH "SEE ALSO"
diff --git a/liblttng-ust/lttng-ust-baddr.c b/liblttng-ust/lttng-ust-baddr.c
index 922899b..dec7e82 100644
--- a/liblttng-ust/lttng-ust-baddr.c
+++ b/liblttng-ust/lttng-ust-baddr.c
@@ -176,7 +176,7 @@ int lttng_ust_baddr_statedump(void *owner)
 {
 	struct extract_data data;
 
-	if (getenv("LTTNG_UST_WITHOUT_BADDR_STATEDUMP"))
+	if (!getenv("LTTNG_UST_WITH_EXPERIMENTAL_BADDR_STATEDUMP"))
 		return 0;
 
 	data.owner = owner;
-- 
1.9.0




More information about the lttng-dev mailing list