Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: chris.meyers.fsu@gmail.com (chris meyers)
Subject: [ltt-dev] ltt channel thread safe?
Date: Wed, 4 Aug 2010 02:12:26 -0400	[thread overview]
Message-ID: <AANLkTi=Ar2TBEhDb9n4xBiqnW14BJ9A4oA4O=PMPkg=x@mail.gmail.com> (raw)
Message-ID: <20100804061226.AiQTJhsu-irM5h7ZWH4Ic4KJfTcjrekkdIRBMkLvgq0@z> (raw)

To give a bit of context to the problem.  I am using user space ltt to help
profile code.  I have created two events, time_begin and time_end.  The goal
is to allow for logging the runtime of specific code blocks via start()
stop() insertions.

I am having some issues with traces not coming out "correct" on the other
"end".  Let me further explain what I mean by correct and end.

correct
trace_mark(ust, time_begin, "thread %d func %s depth %d extra %s", 0,
__FUNCTION__, 1, __FUNCTION__)
trace_mark(ust, time_end, "thread %d func %s depth %d extra %s", 0,
__FUNCTION__, 1, __FUNCTION__)

end
ust.time_begin: 30208.932264102
(/home/meyers/.usttraces/lappy-20100804020140730811027/28367_5501430910891543571/ust_0),
0, 0, , , 0, 0x0, MODE_UNKNOWN { thread = 1, func =
"memloc_request_response_decider", depth = 1, extra =
"memloc_request_response_decider" }
ust.time_end: 30208.932267455
(/home/meyers/.usttraces/lappy-20100804020140730811027/28367_5501430910891543571/ust_0),
0, 0, , , 0, 0x0, MODE_UNKNOWN { thread = 1, func =
"memloc_request_response_decider", depth = 1, extra =
"memloc_request_response_decider" }

Later on the output looks like this:
ust.time_begin: 30198.142843837
(/home/meyers/.usttraces/lappy-20100804020140730811027/28367_5501430910891543571/ust_0),
0, 0, , , 0, 0x0, MODE_UNKNOWN { thread = 1, func = "ne_worker_thread",
depth = 560296821, extra = "" }

Notice that in the trace_mark() code above I hard coded depth to be 0 and
_str is always __FUNCTION__.

Possible reasons:
* Buffer is being overrun.  I changed the buffer size using the -N and -S
options in usttrace to something > 2 MB (plenty large).
* Channels are not thread-safe?  I have 3 threads of execution in this
example.  All using the ust channel.
* My code is crappy and I am overwriting the lust library buffer?


Also, I am having trouble using any channel other than ust.  Is ust the only
channel available in user space?

Many thanks,
-Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.casi.polymtl.ca/pipermail/lttng-dev/attachments/20100804/0436241d/attachment-0001.htm>


             reply	other threads:[~2010-08-04  6:12 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-04  6:12 chris meyers [this message]
2010-08-04  6:12 ` chris meyers
2010-08-04  6:12 ` chris meyers
2010-08-06 20:55 ` chris meyers
2010-08-06 20:55   ` chris meyers
2010-08-06 20:55   ` chris meyers
2010-08-06 21:02   ` Mathieu Desnoyers
2010-08-10  4:29     ` Pierre-Marc Fournier
2010-08-10  4:28 ` Pierre-Marc Fournier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='AANLkTi=Ar2TBEhDb9n4xBiqnW14BJ9A4oA4O=PMPkg=x@mail.gmail.com' \
    --to=chris.meyers.fsu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox