Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: pierre-marc.fournier@polymtl.ca (Pierre-Marc Fournier)
Subject: [ltt-dev] UST use case: Tracing QEMU/KVM
Date: Wed, 26 May 2010 18:46:22 -0400	[thread overview]
Message-ID: <4BFDA4BE.4020400@polymtl.ca> (raw)
In-Reply-To: <AANLkTinVlM-03onbGD5LmJuNdqoXLRLJwn25FiDDnGRI@mail.gmail.com>

Stefan Hajnoczi wrote:
> On Mon, May 24, 2010 at 4:57 AM, Pierre-Marc Fournier
> <pierre-marc.fournier at polymtl.ca> wrote:
> 
> Thanks for the quick reply, Pierre-Marc.
> 
>> If there are specific subjects in mind you feel would benefit from being covered in more depth in the manual, please let me know.
> 
> For large programs or programs that closely manage resources, a
> documented list of resources that libust uses would be useful.  This
> information can be used to understand whether libust might interfere
> with the program being traced.  For example, will heap allocations be
> made after startup?  Will file descriptors be held open?  The listener
> thread?

Currently, ust is designed to be transparent to the running process in 
most cases. However, if your program makes very unusual assumptions 
about the usage of some resources, this could result in a conflict.

- Yes, heap allocations can be made after startup.
- Sockets will definitely be kept open by the listener thread.
- Currently, I don't think any file descriptors are kept open, but it 
could be the case in the future.
- SystemV shared memory segments are mapped in the address space.
- A listener thread is always started to wait for connections from 
ustctl or ustd.

If you feel it would be important to avoid some of these things, please 
let me know.

> 
> I don't understand the --create-trace, --alloc-trace, --destroy-trace,
> and subbuf concepts that ustctl exposes.  Perhaps these are documented
> in kernel LTTng and I haven't read that.

Normally you should not need to go to LTTng kernel tracer documentation 
to understand.

I just pushed an updated manpage for ustctl in the git which clarifies 
these concepts. If you think things could be even clearer, let me know.

> 
>>> One note about the manual: the TP_PROTO() versus TPPROTO() change was
>>> confusing.  Perhaps a note can be added to the manual that ust.git
>>> uses TP_PROTO() but libust 0.4 uses TPPROTO()?
>> This reflects an API change in the kernel. But you are right, this is confusing. I will do a 0.5 release next week, which will obsolete 0.4 and sync the manual.
> 
> Thanks.
> 
>>> poll([{fd=3, events=POLLIN}], 1, -1)      = ? ERESTART_RESTARTBLOCK (To
>>> be restarted)
>>> restart_syscall(<... resuming interrupted call ...>) = ?
>>> ERESTART_RESTARTBLOCK (To be restarted)
>> Hmmm. Do you have any pointers to documentation about this return code? I suspect userspace should never see it. Could it be a kernel bug?
> 
> I have sent an example that triggers this behavior and explains how it
> can occur.
> 

Will look at this shortly.




  reply	other threads:[~2010-05-26 22:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-23 19:54 Stefan Hajnoczi
2010-05-24  3:57 ` Pierre-Marc Fournier
2010-05-24  9:00   ` Stefan Hajnoczi
2010-05-26 22:46     ` Pierre-Marc Fournier [this message]
2010-05-27  5:21       ` Stefan Hajnoczi
2010-05-27 19:36         ` Pierre-Marc Fournier
2010-05-27 20:22           ` Stefan Hajnoczi
2010-05-27 20:26             ` Mathieu Desnoyers
2010-05-24  8:41 Stefan Hajnoczi
2010-05-27 16:08 ` 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=4BFDA4BE.4020400@polymtl.ca \
    --to=pierre-marc.fournier@polymtl.ca \
    /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