Imported Upstream version 1.2.4
[archive/platform/upstream/libvirt.git] / docs / bugs.html
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4 <!--
5         This file is autogenerated from bugs.html.in
6         Do not edit this file. Changes will be lost.
7       -->
8   <head>
9     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
10     <link rel="stylesheet" type="text/css" href="main.css" />
11     <link rel="SHORTCUT ICON" href="32favicon.png" />
12     <title>libvirt: Bug reporting</title>
13     <meta name="description" content="libvirt, virtualization, virtualization API" />
14   </head>
15   <body>
16     <div id="header">
17       <div id="headerLogo"></div>
18       <div id="headerSearch">
19         <form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><div>
20             <input id="query" name="query" type="text" size="12" value="" />
21             <input id="submit" name="submit" type="submit" value="Search" />
22           </div></form>
23       </div>
24     </div>
25     <div id="body">
26       <div id="menu">
27         <ul class="l0"><li>
28             <div>
29               <a title="Front page of the libvirt website" class="inactive" href="index.html">Home</a>
30             </div>
31           </li><li>
32             <div>
33               <a title="Details of new features and bugs fixed in each release" class="inactive" href="news.html">News</a>
34             </div>
35           </li><li>
36             <div>
37               <a title="Applications known to use libvirt" class="inactive" href="apps.html">Applications</a>
38             </div>
39           </li><li>
40             <div>
41               <a title="Get the latest source releases, binary builds and get access to the source repository" class="inactive" href="downloads.html">Downloads</a>
42             </div>
43           </li><li>
44             <div>
45               <a title="Information for users, administrators and developers" class="inactive" href="docs.html">Documentation</a>
46             </div>
47           </li><li>
48             <div>
49               <a title="User contributed content" class="inactive" href="http://wiki.libvirt.org">Wiki</a>
50             </div>
51           </li><li>
52             <div>
53               <a title="Frequently asked questions" class="inactive" href="http://wiki.libvirt.org/page/FAQ">FAQ</a>
54             </div>
55           </li><li>
56             <div>
57               <span class="active">Bug reports</span>
58               <ul class="l1"><li>
59                   <div>
60                     <a title="Security bug reporting and resolution process" class="inactive" href="securityprocess.html">Security Process</a>
61                   </div>
62                 </li><li>
63                   <div>
64                     <a title="Main feature request list" class="inactive" href="todo.html">Todo list</a>
65                   </div>
66                 </li><li>
67                   <div>
68                     <a title="Pending patches awaiting reviews and integration" class="inactive" href="pending.html">Pending patches</a>
69                   </div>
70                 </li></ul>
71             </div>
72           </li><li>
73             <div>
74               <a title="How to contact the developers via email and IRC" class="inactive" href="contact.html">Contact</a>
75             </div>
76           </li><li>
77             <div>
78               <a title="Available test suites for libvirt" class="inactive" href="testsuites.html">Test suites</a>
79             </div>
80           </li><li>
81             <div>
82               <a title="Miscellaneous links of interest related to libvirt" class="inactive" href="relatedlinks.html">Related Links</a>
83             </div>
84           </li><li>
85             <div>
86               <a title="Overview of all content on the website" class="inactive" href="sitemap.html">Sitemap</a>
87             </div>
88           </li></ul>
89       </div>
90       <div id="content">
91         <h1>Bug reporting</h1>
92         <ul><li>
93             <a href="#security">Security Issues</a>
94           </li><li>
95             <a href="#bugzilla">Bug Tracking</a>
96           </li><li>
97             <a href="#general">General libvirt bug reports</a>
98           </li><li>
99             <a href="#distribution">Linux Distribution specific bug reports</a>
100           </li><li>
101             <a href="#quality">How to file high quality bug reports</a>
102           </li></ul>
103         <h2>
104           <a name="security" shape="rect" id="security">Security Issues</a>
105           <a class="headerlink" href="#security" title="Permalink to this headline">¶</a>
106         </h2>
107         <p>
108       If you think that an issue with libvirt may have security
109       implications, <strong>please do not</strong> publically
110       report it in the bug tracker, mailing lists, or irc. Libvirt
111       has <a href="securityprocess.html" shape="rect">a dedicated process for handling (potential) security issues</a>
112       that should be used instead. So if your issue has security
113       implications, ignore the rest of this page and follow the
114       <a href="securityprocess.html" shape="rect">security process</a> instead.
115     </p>
116         <h2>
117           <a name="bugzilla" shape="rect" id="bugzilla">Bug Tracking</a>
118           <a class="headerlink" href="#bugzilla" title="Permalink to this headline">¶</a>
119         </h2>
120         <p>
121       If you are using libvirt binaries from a Linux distribution
122       check below for distribution specific bug reporting policies
123       first.
124     </p>
125         <h2>
126           <a name="general" shape="rect" id="general">General libvirt bug reports</a>
127           <a class="headerlink" href="#general" title="Permalink to this headline">¶</a>
128         </h2>
129         <p>
130       The <a href="http://bugzilla.redhat.com" shape="rect">Red Hat Bugzilla Server</a>
131       should be used to report bugs and request features in libvirt.
132       Before submitting a ticket, check the existing tickets to see if
133       the bug/feature is already tracked.
134
135       For general libvirt bug reports, from self-built releases, GIT snapshots
136       and any other non-distribution supported builds, enter tickets under
137       the <code>Virtualization Tools</code> product and the <code>libvirt</code>
138       component.
139     </p>
140         <p>
141       It's always a good idea to file bug reports, as the process of
142       filing the report always makes it easier to describe the
143       problem, and the bug number provides a quick way of referring to
144       the problem.  However, not everybody in the community pays
145       attention to bugzilla, so after you file a bug, asking questions
146       and submitting patches on <a href="contact.html" shape="rect">the libvirt
147       mailing lists</a> will increase your bug's visibility and
148       encourage people to think about your problem.  Don't hesitate to
149       ask questions on the list, as others may know of existing
150       solutions or be interested in collaborating with you on finding
151       a solution.  Patches are always appreciated, and it's likely
152       that someone else has the same problem you do!
153     </p>
154         <p>
155       If you decide to write code, though, before you begin please
156       read the <a href="hacking.html" shape="rect">contributor guidelines</a>,
157       especially the first point: "Discuss any large changes on the
158       mailing list first. Post patches early and listen to feedback."
159       Few development experiences are more discouraging than spending
160       a bunch of time writing a patch only to have someone point out a
161       better approach on list.
162     </p>
163         <ul><li><a href="http://bugzilla.redhat.com/buglist.cgi?component=libvirt&amp;product=Virtualization%20Tools" shape="rect">View libvirt tickets</a></li><li><a href="http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Virtualization%20Tools&amp;component=libvirt" shape="rect">New libvirt ticket</a></li></ul>
164         <h2>
165           <a name="distribution" shape="rect" id="distribution">Linux Distribution specific bug reports</a>
166           <a class="headerlink" href="#distribution" title="Permalink to this headline">¶</a>
167         </h2>
168         <ul><li>
169         If you are using binaries from <strong>Fedora</strong>, enter
170         tickets against the <code>Fedora</code> product and
171         the <code>libvirt</code> component.
172         <ul><li><a href="http://bugzilla.redhat.com/buglist.cgi?component=libvirt&amp;product=Fedora" shape="rect">View Fedora libvirt tickets</a></li><li><a href="http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&amp;component=libvirt" shape="rect">New Fedora libvirt ticket</a></li></ul>
173       </li><li>
174         <p>
175           If you are using binaries from <strong>Red Hat Enterprise
176           Linux</strong>, enter tickets against the Red Hat Enterprise
177           Linux product that you're using (e.g., Red Hat Enterprise
178           Linux 6) and the <code>libvirt</code> component.  Red Hat
179           bugzilla has <a href="http://bugzilla.redhat.com" shape="rect">additional guidance</a> about getting support if
180           you are a Red Hat customer.
181         </p>
182       </li><li>
183         <p>
184           If you are using binaries from another Linux distribution
185           first follow their own bug reporting guidelines.
186         </p>
187       </li><li>
188         <p>
189           Finally, if you are a contributor to another Linux
190           distribution and would like to have your procedure for
191           filing bugs mentioned here, please mail the libvirt
192           development list.
193         </p>
194       </li></ul>
195         <h2>
196           <a name="quality" shape="rect" id="quality">How to file high quality bug reports</a>
197           <a class="headerlink" href="#quality" title="Permalink to this headline">¶</a>
198         </h2>
199         <p>
200       To increase the likelihood of your bug report being addressed it is
201       important to provide as much information as possible. When filing
202       libvirt bugs use this checklist to see if you are providing enough
203       information:
204     </p>
205         <ul><li>The version number of the libvirt build, or SHA1 of the GIT
206         commit</li><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>
207         <p>
208       If the bug leads to a tool linked to libvirt crash, then the best
209       is to provide a backtrace along with the scenario used to get the
210       crash, the simplest is to run the program under gdb, reproduce the
211       steps leading to the crash and then issue a gdb "bt -a" command to
212       get the stack trace, attach it to the bug. Note that for the
213       data to be really useful libvirt debug information must be present
214       for example by installing libvirt debuginfo package on Fedora or
215       Red Hat Enterprise Linux (with debuginfo-install libvirt) prior
216       to running gdb.</p>
217         <p>
218       It may also happen that the libvirt daemon itself crashes or gets stuck,
219       in the first case run it (as root) under gdb, and reproduce the sequence
220       leading to the crash, similarly to a normal program provide the
221       "bt" backtrace information to where gdb will have stopped.<br />
222       But if libvirtd gets stuck, for example seems to stop processing
223       commands, try to attach to the faulty daemon and issue a gdb command
224       "thread apply all bt" to show all the threads backtraces, as in:</p>
225         <pre xml:space="preserve"> #  ps -o etime,pid `pgrep libvirt`
226 ... note the process id from the output
227 # gdb /usr/sbin/libvirtd
228 .... some information about gdb and loading debug data
229 (gdb) attach $the_daemon_process_id
230 ....
231 (gdb) thread apply all bt
232 .... information to attach to the bug
233 (gdb)
234 </pre>
235       </div>
236     </div>
237     <div id="footer">
238       <p id="sponsor">
239             Sponsored by:<br /><a href="http://et.redhat.com/"><img src="et.png" alt="Project sponsored by Red Hat Emerging Technology" /></a></p>
240     </div>
241   </body>
242 </html>