From: Mathieu Desnoyers Date: Tue, 6 Mar 2012 23:07:24 +0000 (-0500) Subject: Merge branch 'master' into dev X-Git-Tag: v2.1.0-rc1~97^2~1 X-Git-Url: http://git.liburcu.org/?a=commitdiff_plain;h=e3feda7db3de3530e7c9c511536c36cccf317013;hp=cf7b4f7a95b7a4ff78969206944a0ddc77efd6d7;p=lttng-ust.git Merge branch 'master' into dev --- diff --git a/ChangeLog b/ChangeLog index ab59be5b..70c0c7d8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,32 @@ +2012-03-02 lttng-ust 2.0.0-rc2 + * Manpage fixes + * Fix: dmesg printout should not print metadata warnings + * Fix: use transport name as channel name + * Fix: Add signature check in tracepoint activation + * Fix: add tracepoint signature at tracepoint definition site + * Fix: keep event probe signature, for use by event probe signature check + * Fix ABI: add padding to structures shared between UST and consumer + * Fix ABI: add padding to tracepoint and ring buffer config public structu + * Fix ABI: Adding missing padding in tracepoint event structures + * Fix: Add include/lttng/ust-config.h to git ignore + * Fix effect: update README about dlopen() + * Fix: fixup vtid TLS + * Fix: fixup ringbuffer tls at constructor by forcing read + * Fix: fix deadlock with dlopen() lttng-ust + * Fix: only print event errors every 1048576 hits + * Fix: add missing debug printout to identify the cause of lost events + * fix: liblttng-ust-ctl should check for incorrect parameters + * fix: ust comm error handling segfault + * Fix: Return -EINVAL instead of print warning if non power of 2 size/num_ + * fix: on exit, leave thread/mmap reclaim to OS + * fix: Handle sys_futex with async cancel, add missing pthread_join + * fix: Only munmap the wait page when not exiting from process + * Use CPPFLAGS instead of CFLAGS for -I + * Fix type range comparison always false for 64-bit arch + * demo: remove useless libs + * tests: include missing headers + * Add missing limits.h include for NAME_MAX + 2012-02-20 lttng-ust 2.0.0-rc1 * Standardize version across toolchain * Fix a typo in gen-tp Makefile diff --git a/configure.ac b/configure.ac index d4f879eb..6c21ac73 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_INIT([lttng-ust],[2.0.0-rc1],[mathieu dot desnoyers at efficios dot com]) +AC_INIT([lttng-ust],[2.0.0-rc2],[mathieu dot desnoyers at efficios dot com]) # Following the numbering scheme proposed by libtool for the library version # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html diff --git a/doc/man/lttng-gen-tp.1 b/doc/man/lttng-gen-tp.1 index 551f0036..5bfe17de 100644 --- a/doc/man/lttng-gen-tp.1 +++ b/doc/man/lttng-gen-tp.1 @@ -29,7 +29,7 @@ link it with your application. Refer to the UST documentation for the advantages and disadvantage of each form. To compile the resulting .c file, you need to add the options -"-llttng-ust -I." +"\-llttng-ust \-I." .SH "OPTIONS" @@ -55,7 +55,7 @@ When no output is specified de default files are generated with the same base fi .SH "TEMPLATE FILE FORMAT" -The template file, which has the usual extention \fB.tp\fP, contains a list of +The template file, which has the usual extension \fB.tp\fP, contains a list of TRACEPOINT_EVENT definitions and other optional definition entries like TRACEPOINT_LOGLEVEL. (See lttng-ust(3) for the complete list of available definition.) diff --git a/doc/man/lttng-ust.3 b/doc/man/lttng-ust.3 index 6bbfc96c..3ba5c7cc 100644 --- a/doc/man/lttng-ust.3 +++ b/doc/man/lttng-ust.3 @@ -251,13 +251,13 @@ carefully: directly or through a static library (.a): - Into exactly one object of your application: define "TRACEPOINT_DEFINE" and include the tracepoint provider. - - Use "-I." for the compilation unit containing the tracepoint + - Use "\-I." for the compilation unit containing the tracepoint provider include (e.g. tp.c). - - Link application with "-ldl". + - Link application with "\-ldl". - If building the provider directly into the application, - link the application with "-llttng-ust". + link the application with "\-llttng-ust". - If building a static library for the provider, link the static - library with "-lllttng-ust". + library with "\-lllttng-ust". - Include the tracepoint provider header into all C files using the provider. - Example: @@ -271,9 +271,9 @@ carefully: provider header. - Include the tracepoint provider header into all instrumented C files that use the provider. - - Compile the tracepoint provider with "-I.". - - Link the tracepoint provider with "-llttng-ust". - - Link application with "-ldl". + - Compile the tracepoint provider with "\-I.". + - Link the tracepoint provider with "\-llttng-ust". + - Link application with "\-ldl". - Set a LD_PRELOAD environment to preload the tracepoint provider shared object before starting the application when tracing is needed. @@ -284,7 +284,7 @@ carefully: way libc lazily resolves Thread-Local Storage (TLS) symbols when a library is dlopen'd, linking the tracepoint probe or liblttng-ust with dlopen() is discouraged. They should be linked with the - application using "-llibname" or loaded with LD_PRELOAD. + application using "\-llibname" or loaded with LD_PRELOAD. - Enable instrumentation and control tracing with the "lttng" command from lttng-tools. See lttng-tools doc/quickstart.txt. @@ -302,7 +302,7 @@ specify how long the applications should wait for sessiond "registration done" command before proceeding to execute the main program. The default is 3000ms (3 seconds). The timeout value is specified in milliseconds. The value 0 means "don't wait". The value --1 means "wait forever". Setting this environment variable to 0 is +\-1 means "wait forever". Setting this environment variable to 0 is recommended for applications with time constraints on the process startup time. .PP diff --git a/liblttng-ust/ltt-events.c b/liblttng-ust/ltt-events.c index dcc64a55..ac2b20f7 100644 --- a/liblttng-ust/ltt-events.c +++ b/liblttng-ust/ltt-events.c @@ -455,7 +455,7 @@ struct ltt_channel *ltt_channel_create(struct ltt_session *session, * headers. Therefore the "chan" information used as input * should be already accessible. */ - chan = transport->ops.channel_create("[lttng]", buf_addr, + chan = transport->ops.channel_create(transport_name, buf_addr, subbuf_size, num_subbuf, switch_timer_interval, read_timer_interval, shm_fd, wait_fd, memory_map_size, chan_priv_init); diff --git a/libringbuffer/ring_buffer_frontend.c b/libringbuffer/ring_buffer_frontend.c index 0ae3d72f..728cbf9b 100644 --- a/libringbuffer/ring_buffer_frontend.c +++ b/libringbuffer/ring_buffer_frontend.c @@ -983,23 +983,30 @@ void lib_ring_buffer_print_errors(struct channel *chan, const struct lttng_ust_lib_ring_buffer_config *config = &chan->backend.config; void *priv = channel_get_private(chan); - DBG("ring buffer %s, cpu %d: %lu records written, " - "%lu records overrun\n", - chan->backend.name, cpu, - v_read(config, &buf->records_count), - v_read(config, &buf->records_overrun)); - - if (v_read(config, &buf->records_lost_full) - || v_read(config, &buf->records_lost_wrap) - || v_read(config, &buf->records_lost_big)) - DBG("ring buffer %s, cpu %d: records were lost. Caused by:\n" - " [ %lu buffer full, %lu nest buffer wrap-around, " - "%lu event too big ]\n", - chan->backend.name, cpu, - v_read(config, &buf->records_lost_full), - v_read(config, &buf->records_lost_wrap), - v_read(config, &buf->records_lost_big)); - + if (!strcmp(chan->backend.name, "relay-metadata-mmap")) { + DBG("ring buffer %s: %lu records written, " + "%lu records overrun\n", + chan->backend.name, + v_read(config, &buf->records_count), + v_read(config, &buf->records_overrun)); + } else { + DBG("ring buffer %s, cpu %d: %lu records written, " + "%lu records overrun\n", + chan->backend.name, cpu, + v_read(config, &buf->records_count), + v_read(config, &buf->records_overrun)); + + if (v_read(config, &buf->records_lost_full) + || v_read(config, &buf->records_lost_wrap) + || v_read(config, &buf->records_lost_big)) + DBG("ring buffer %s, cpu %d: records were lost. Caused by:\n" + " [ %lu buffer full, %lu nest buffer wrap-around, " + "%lu event too big ]\n", + chan->backend.name, cpu, + v_read(config, &buf->records_lost_full), + v_read(config, &buf->records_lost_wrap), + v_read(config, &buf->records_lost_big)); + } lib_ring_buffer_print_buffer_errors(buf, chan, priv, cpu, handle); } diff --git a/tools/lttng-gen-tp b/tools/lttng-gen-tp old mode 100644 new mode 100755 index 3f285348..828bee6e --- a/tools/lttng-gen-tp +++ b/tools/lttng-gen-tp @@ -158,9 +158,11 @@ class TemplateFile: self.text = f.read() #Remove # comments (from input and output file - self.text = re.sub("#.*$","",self.text,flags=re.MULTILINE) + removeComments = re.compile("#.*$",flags=re.MULTILINE) + self.text = removeComments.sub("",self.text) #Remove // comments - nolinecomment = re.sub("\/\/.*$","",self.text,flags=re.MULTILINE) + removeLineComment = re.compile("\/\/.*$",flags=re.MULTILINE) + nolinecomment = removeLineComment.sub("",self.text) #Remove all spaces and lines cleantext = re.sub("\s*","",nolinecomment) #Remove multine C style comments