[libvirt] [PATCH] Augment bug reporting documentation

Daniel P. Berrange berrange at redhat.com
Wed Nov 10 11:34:23 UTC 2010


On Wed, Nov 10, 2010 at 11:01:15AM +0100, Daniel Veillard wrote:
> With some instruction on how to attach useful gdb backtraces
> 
> Daniel
> 
> diff --git a/docs/bugs.html.in b/docs/bugs.html.in
> index 201705b..560dfa4 100644
> --- a/docs/bugs.html.in
> +++ b/docs/bugs.html.in
> @@ -78,6 +78,35 @@
>      </ul>
>  
>      <p>
> +      If the bug leads to a tool linked to libvirt crash, then the best
> +      is to provide a backtrace along with the scenario used to get the
> +      crash, the simplest is to run the program under gdb, reproduce the
> +      steps leading to the crash and then issue a gdb "bt" command to
> +      get the stack trace, attach it to the bug. Note that for the
> +      data to be really useful libvirt debug informations must be present
> +      for example by installing libvirt debuginfo package on Fedora or
> +      Red Hat Enterprise Linux (with debuginfo-install libvirt) prior
> +      to running gdb.</p>
> +    <p>
> +      It may also happen that the libvirt daemon itself crashes or get stuck,
> +      in the first case run it (as root) under gdb, and reproduce the sequence
> +      leading to the crash, similary to a normal program provide the
> +      "bt" backtrace information to where gdb will have stopped.<br/>
> +      But if libvirtd get stuck, for example seems to stop processing
> +      commands, try to attach to the faulty daemon and issue a gdb command
> +      "thread apply all bt" to show all the threads backtraces, as in:</p>
> +      <pre> #  ps -o etime,pid `pgrep libvirt`
> +... note the process id from the output
> +# gdb /usr/sbin/libvirtd
> +.... some informations about gdb and loading debug data
> +(gdb) attach $the_damon_process_id
> +....
> +(gdb) thread apply all bt
> +.... informations to attach to the bug
> +(gdb)
> +</pre>

You don't need to specify the  /usr/sbin/libvirtd binary name on the
command line to GDB if you're about to use 'attach', because GDB will
find it automatically from the PID, but ACK anyway


Daniel
-- 
|: Red Hat, Engineering, London    -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org        -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list