bugs.html.in 6.7 KB
Newer Older
1 2 3
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
4 5 6 7
  <body>

    <h1>Bug reporting</h1>

8 9
    <ul id="toc"></ul>

10
    <h2><a id="security">Security Issues</a></h2>
11 12 13

    <p>
      If you think that an issue with libvirt may have security
M
Martin Kletzander 已提交
14
      implications, <strong>please do not</strong> publicly
15 16 17 18 19 20 21
      report it in the bug tracker, mailing lists, or irc. Libvirt
      has <a href="securityprocess.html">a dedicated process for handling (potential) security issues</a>
      that should be used instead. So if your issue has security
      implications, ignore the rest of this page and follow the
      <a href="securityprocess.html">security process</a> instead.
    </p>

22
    <h2><a id="bugzilla">Bug Tracking</a></h2>
23

24
    <p>
D
Dave Allan 已提交
25 26 27
      If you are using libvirt binaries from a Linux distribution
      check below for distribution specific bug reporting policies
      first.
28 29
    </p>

30
    <h2><a id="general">General libvirt bug reports</a></h2>
31 32

    <p>
D
Dave Allan 已提交
33 34 35 36 37
      The <a href="http://bugzilla.redhat.com">Red Hat Bugzilla Server</a>
      should be used to report bugs and request features in libvirt.
      Before submitting a ticket, check the existing tickets to see if
      the bug/feature is already tracked.

38
      For general libvirt bug reports, from self-built releases, GIT snapshots
39 40 41 42
      and any other non-distribution supported builds, enter tickets under
      the <code>Virtualization Tools</code> product and the <code>libvirt</code>
      component.
    </p>
D
Dave Allan 已提交
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
    <p>
      It's always a good idea to file bug reports, as the process of
      filing the report always makes it easier to describe the
      problem, and the bug number provides a quick way of referring to
      the problem.  However, not everybody in the community pays
      attention to bugzilla, so after you file a bug, asking questions
      and submitting patches on <a href="contact.html">the libvirt
      mailing lists</a> will increase your bug's visibility and
      encourage people to think about your problem.  Don't hesitate to
      ask questions on the list, as others may know of existing
      solutions or be interested in collaborating with you on finding
      a solution.  Patches are always appreciated, and it's likely
      that someone else has the same problem you do!
    </p>
    <p>
      If you decide to write code, though, before you begin please
      read the <a href="hacking.html">contributor guidelines</a>,
      especially the first point: "Discuss any large changes on the
      mailing list first. Post patches early and listen to feedback."
      Few development experiences are more discouraging than spending
      a bunch of time writing a patch only to have someone point out a
      better approach on list.
    </p>
66 67

    <ul>
G
Garry Dolley 已提交
68
      <li><a href="http://bugzilla.redhat.com/buglist.cgi?component=libvirt&amp;product=Virtualization%20Tools">View libvirt tickets</a></li>
69 70 71
      <li><a href="http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Virtualization%20Tools&amp;component=libvirt">New libvirt ticket</a></li>
    </ul>

72
    <h2><a id="distribution">Linux Distribution specific bug reports</a></h2>
73 74
    <ul>
      <li>
D
Dave Allan 已提交
75 76 77
        If you are using binaries from <strong>Fedora</strong>, enter
        tickets against the <code>Fedora</code> product and
        the <code>libvirt</code> component.
M
Matthew Booth 已提交
78 79 80 81
        <ul>
          <li><a href="http://bugzilla.redhat.com/buglist.cgi?component=libvirt&amp;product=Fedora">View Fedora libvirt tickets</a></li>
          <li><a href="http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&amp;component=libvirt">New Fedora libvirt ticket</a></li>
        </ul>
82 83
      </li>
      <li>
D
Dave Allan 已提交
84 85 86 87 88 89 90 91
        <p>
          If you are using binaries from <strong>Red Hat Enterprise
          Linux</strong>, enter tickets against the Red Hat Enterprise
          Linux product that you're using (e.g., Red Hat Enterprise
          Linux 6) and the <code>libvirt</code> component.  Red Hat
          bugzilla has <a href="http://bugzilla.redhat.com">additional guidance</a> about getting support if
          you are a Red Hat customer.
        </p>
92 93
      </li>
      <li>
D
Dave Allan 已提交
94 95 96 97 98 99 100 101 102 103 104 105
        <p>
          If you are using binaries from another Linux distribution
          first follow their own bug reporting guidelines.
        </p>
      </li>
      <li>
        <p>
          Finally, if you are a contributor to another Linux
          distribution and would like to have your procedure for
          filing bugs mentioned here, please mail the libvirt
          development list.
        </p>
106 107 108 109
      </li>
    </ul>


110
    <h2><a id="quality">How to file high quality bug reports</a></h2>
111 112 113 114 115 116 117 118 119

    <p>
      To increase the likelihood of your bug report being addressed it is
      important to provide as much information as possible. When filing
      libvirt bugs use this checklist to see if you are providing enough
      information:
    </p>

    <ul>
120 121
      <li>The version number of the libvirt build, or SHA1 of the GIT
        commit</li>
122 123 124 125 126 127 128
      <li>The hardware architecture being used</li>
      <li>The name of the hypervisor (Xen, QEMU, KVM)</li>
      <li>The XML config of the guest domain if relevant</li>
      <li>For Xen hypervisor, the XenD logfile from /var/log/xen</li>
      <li>For QEMU/KVM, the domain logfile from /var/log/libvirt/qemu</li>
    </ul>

129 130 131 132
    <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
D
Dave Allan 已提交
133
      steps leading to the crash and then issue a gdb "bt -a" command to
134
      get the stack trace, attach it to the bug. Note that for the
135
      data to be really useful libvirt debug information must be present
136 137 138 139
      for example by installing libvirt debuginfo package on Fedora or
      Red Hat Enterprise Linux (with debuginfo-install libvirt) prior
      to running gdb.</p>
    <p>
D
Dave Allan 已提交
140
      It may also happen that the libvirt daemon itself crashes or gets stuck,
141
      in the first case run it (as root) under gdb, and reproduce the sequence
142
      leading to the crash, similarly to a normal program provide the
143
      "bt" backtrace information to where gdb will have stopped.<br/>
D
Dave Allan 已提交
144
      But if libvirtd gets stuck, for example seems to stop processing
145 146 147 148 149
      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
150
.... some information about gdb and loading debug data
N
Nehal J Wani 已提交
151
(gdb) attach $the_daemon_process_id
152 153
....
(gdb) thread apply all bt
154
.... information to attach to the bug
155 156 157
(gdb)
</pre>

158 159
  </body>
</html>