userguide/welcome/it/bugreports.html
2023-07-24 19:01:02 +00:00

189 lines
20 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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" lang="it" xml:lang="it">
<head>
<!--
*
* Copyright 2008-2020, Haiku. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Niels Reedijk, Matt Madia and Ingo Weinhold who wrote
* http://dev.haiku-os.org/wiki/ and http://dev.haiku-os.org/wiki/ReportingBugs
* Humdinger <humdingerb@gmail.com>
* Translators:
* Gabriele
*
-->
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="robots" content="all" />
<title>Aprire una segnalazione di bug</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="../Haiku-doc.css" />
</head>
<body>
<div id="banner">
<div><span>Guida dell'utente</span></div>
</div>
<div class="nav">
<div class="inner">
<ul class="lang-menu">
<li class="now">Italiano&nbsp;<span class="dropdown-caret">&#9660;</span></li>
<li><a href="../id/bugreports.html">Bahasa Indonesia</a></li>
<li><a href="../ca/bugreports.html">Català</a></li>
<li><a href="../de/bugreports.html">Deutsch</a></li>
<li><a href="../en/bugreports.html">English</a></li>
<li><a href="../es/bugreports.html">Español</a></li>
<li><a href="../eo/bugreports.html">Esperanto</a></li>
<li><a href="../fr/bugreports.html">Français</a></li>
<li><a href="../fur/bugreports.html">Furlan</a></li>
<li><a href="../hu/bugreports.html">Magyar</a></li>
<li><a href="../pl/bugreports.html">Polski</a></li>
<li><a href="../pt_PT/bugreports.html">Português</a></li>
<li><a href="../pt_BR/bugreports.html">Português (Brazil)</a></li>
<li><a href="../ro/bugreports.html">Română</a></li>
<li><a href="../sk/bugreports.html">Slovenčina</a></li>
<li><a href="../fi/bugreports.html">Suomi</a></li>
<li><a href="../sv_SE/bugreports.html">Svenska</a></li>
<li><a href="../tr/bugreports.html">Türkçe</a></li>
<li><a href="../zh_CN/bugreports.html"> 中文 [中文]</a></li>
<li><a href="../ru/bugreports.html">Русский</a></li>
<li><a href="../uk/bugreports.html">Українська</a></li>
<li><a href="../jp/bugreports.html">日本語</a></li>
</ul>
<span>
<a href="../welcome_it.html" class="uplink">Welcome</a>
</span></div>
</div>
<div id="content">
<div>
<div class="box-info">La traduzione di questa pagina non è stata ancora completata. Finché non lo sarà, le parti non tradotte saranno visualizzate in inglese.</div>
<table class="index" id="index" summary="index">
<tr class="heading"><td>Indice</td></tr>
<tr class="index"><td><a href="#account">Getting a Trac account</a><br />
<a href="#report">Creating a bug report</a><br />
<a href="#app">Application bugs</a><br />
<a href="#server">Server bugs</a><br />
<a href="#kernel">Kernel bugs</a><br />
<a href="#kdl">Kernel Debugging Land - KDL</a><br />
<a href="#syslog">Syslog</a><br />
<a href="#onscreen">On screen debug output</a><br />
<a href="#hardware">Hardware/Driver bugs</a><br />
<a href="#next">What's next?</a></td></tr>
</table>
<h1>Aprire una segnalazione di bug</h1>
<p>Poiché i nostri sviluppatori non sono in grado di testare tutte le possibili combinazioni di hardware, o tutte le modalità con cui è possibile interagire col sistema operativo, ci affidiamo agli utenti per darci più informazioni su come le cose funzionano dal loro punto di vista. Poiché Haiku è un progetto ancora molto giovane, è molto probabile che sia possibile incorrere in alcuni malfunzionamenti. Vi ringraziamo per il tempo che dedicherete a segnalarci questi bug. Insieme, miglioreremo Haiku, un passo alla volta.</p>
<p>Affinché il tracciamento dei bug sia efficiente, è essenziale rispettare la <a href="http://dev.haiku-os.org/wiki/BugTrackerEtiquette">Bug Tracker Etiquette</a> (pagina in inglese).</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="account" name="accout">Iscrizione a Trac</a></h2>
<p>Per aprire un ticket, è necessario un account sulla <a href="http://dev.haiku-os.org/register" title="Register at Haiku's Bugtracker">piattaforma di segnalazione di Haiku</a>.<br />
Nel momento in cui crei un nuovo account, assicurati di <b>fornire un indirizzo mail valido</b>, in quanto esso è necessario per ottenere alcuni privilegi base per modificare il ticket. Assicurati di <b>controllare la cartella della posta indsiderata</b>, perché talvolta la mail di verifica è erroneamente marcata come tale.</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="report" name="report">Creazione di un bug report</a></h2>
<p>Prima di effettuare una segnalazione di bug, per favore <a href="http://dev.haiku-os.org/query?status=new&amp;status=assigned&amp;status=reopened&amp;status=closed&amp;summary=%7Etext+you+want+to+search+for&amp;order=priority">verifica</a> che non sia già stato riportato. A tale scopo, puoi anche utilizzare la funzione di <a href="http://dev.haiku-os.org/search?q=&amp;noquickjump=1&amp;ticket=on">ricerca</a>.<br />
Una volta stabilito che il bug non sia già stato segnalato, assicurati di fornire quante più informazioni possibili:</p>
<ul>
<li><p>I tentativi di riprodurre il bug che hai condotto nella versione più recente di Haiku. Le immagini per i test sono <a href="http://download.haiku-os.org">disponibili per il download</a>.</p></li>
<li><p>Includi alcune informazioni di base dell'ambiente in cui stai testando Haiku (su una macchina reale, su VMWare, su QEMU, ecc.).</p></li>
<li><p>Riporta che revisione del sistema stai utilizzando. Puoi recuperare questa informazione alla voce <span class="menu">Informazioni su Haiku</span> dal menu della Deskbar. Riporta anche che tipo di architettura (x86_gcc2, x86_64) stai testando. Le immagini che è possibile scaricare hanno ben evidente questa informazione nel nome del file, per le immagini compilate da te si suppone che tu sappia come le hai costruite.</p></li>
<li><p>Descrivi il problema che hai riscontrato. Cerca di essere il più accurato possibile: descrivi il comportamento riscontrato e quello atteso.</p></li>
<li><p>Riporta tutti i passaggi che è necessario compiere per esporre il bug. Questo aiuterà gli sviluppatori a riprodurlo.</p></li>
<li><p>Allega quante più informazioni possibilli. Se il problema riguarda l'interfaccia grafica, o un'applicazione particolare, allega alla segnalazione un'istantanea dello schermo, se possibile, premendo il tasto <span class="key">STAMPA</span>.</p></li>
</ul>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="app" name="app">Bug delle applicazioni</a></h2>
<p>Quando ad andare in errore è un'applicazione, puoi sia salvare un file di registro oppure un dump della memoria (in entrambi i casi il file sarà salvato sulla Scrivania) che puoi poi, eventualmente, allegare al ticket. Puoi anche decidere di avviare il <a href="../../userguide/it/applications/debugger.html">Debugger</a>.</p>
<p>Se il bug non provoca il crash dell'applicazione, è possibili che maggiori informazioni siano disponibili a schermo quando l'applicazione è lanciata tramite Terminale. Alcune applicazioni dispongono di opzioni di logging particolari quando lanciate in questo modo con degli opportuni parametri; prova <tt>-h</tt> oppure <tt>--help</tt> per vedere se è questo il caso. A titolo d'esempio, osserva i diversi livelli di log di <a href="../../userguide/it/applications/haikudepot.html#logs">HaikuDepot</a>.</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="server" name="server">Bug dei server</a></h2>
<p>When vital servers like the app server, the registrar or the input server crash, you won't see the usual crash alert. Instead the whole screen will be cleared white and the Debugger will be started in text-mode, its output appearing directly on screen. Likely you will still be able to move the mouse, which will overwrite the white and Debugger output on screen. Applications still running (like ProcessController or the clock in the Deskbar) might also draw over the debugger output on screen.<br />
Besides everything being more ugly and inconvenient, basically the same applies as for application bugs. Most importantly procure a back trace (<span class="cli">bt</span> command). You may need to take a picture of the screen with a digital camera, since you won't be able to copy the text anywhere.<br />
Depending on what exactly crashed, you can try to save a crash report on the Desktop with <span class="cli">save-report</span> or <span class="cli">write-core</span> for a core file, and then press the power button once to try shutting cleanly down. If the power button doesn't work, there are also the commands <span class="cli">shutdown</span> and <span class="cli">reboot</span>.</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="kernel" name="kernel">Bug del kernel</a></h2>
<p>Kernel bugs are usually the ones with the most severe effects while at the same time being the hardest to debug. There are different kinds of symptoms, which most likely point to a kernel or driver issue:</p>
<ul>
<li><p>The system enters kernel debugging land (KDL) on its own volition. The upper part of the screen is cleared white and several lines of text are printed on it. The second line says "<i>Welcome to Kernel Debugging Land...</i>", the one above it states the immediate reason for entering KDL.</p></li>
<li><p>The system reboots spontaneously.</p></li>
<li><p>The system freezes completely. You can't move the mouse and no application draws anything anymore. An important test in that situation is, whether you still can enter KDL via the shortcut <span class="key">ALT</span> <span class="key">SysReq</span> <span class="key">D</span> (<span class="key">SysReq</span> being <span class="key">PRINT</span> on most keyboards). Wait at least a minute to see, if anything happens.</p></li>
<li><p>The system doesn't boot up correctly. It may reboot spontaneously or stop at some point (e.g. at some icon of the boot screen). In the latter case also try <span class="key">ALT</span> <span class="key">SysReq</span> <span class="key">D</span>.</p></li>
<li><p>The whole system or some piece of hardware doesn't behave correctly. For example, it could be very slow, errors occur, or something doesn't work at all. If some hardware doesn't work at all, the first obvious check is whether Haiku supports it at all at the moment (e.g. ask on a mailing list or a forum).</p></li>
</ul>
<p>Note that while only the last point seems to indicate hardware relation, all the other symptoms could be caused by a bug in a hardware driver as well. If you have a suspicion what piece of hardware or corresponding driver might have to do with the problem, check whether removing/disabling the hardware or the driver makes a difference. For example, if you suspect Wifi you may find that your BIOS has an option to disable it. Or if not, you could blacklist the responsible Wifi driver from your Haiku installation (see <a href="../../userguide/it/bootloader.html">Boot Loader</a>).</p>
<h3><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="kdl" name="kdl">Kernel Debugging Land - KDL</a></h3>
<p>If the system hasn't entered KDL by itself, you can do that intentionally by invoking the keyboard shortcut <span class="key">ALT</span> <span class="key">SysReq</span> <span class="key">D</span> (<span class="key">SysReq</span> being the <span class="key">Print</span> key, normally).<br />
Note that in KDL your keyboard may not work. PS/2 keyboards always do, with USB keyboards it depends on the type of USB controller (UHCI/EHCI). Generally, the keyboard should be plugged into the port directly, not via any hubs. In some circumstances, the keyboard only works if one has entered KDL via the keyboard shortcut at least once. USB OHCI is not supported at the moment.</p>
<p>KDL itself is a kind of a shell. One can execute commands that print information about the system. The following commands might be of interest:</p>
<table summary="layout" border="0" cellpadding="2" cellspacing="0">
<tr><td><span class="cli">bt</span> (aka <span class="cli">sc</span>)</td><td> </td><td>Prints a back trace (aka stack crawl). If the system entered KDL on its on volition, a back trace is normally printed automatically. Enter the command if that didn't happen or part of it is obscured (e.g. when the stack trace is so long that it wrapped around) and your only way of providing the information to developers is by taking a picture of the screen.</td></tr>
<tr><td><span class="cli">ints</span></td><td> </td><td>Shows the handled and unhandled hardware interrupts.</td></tr>
<tr><td class="onelinetop"><span class="cli">co</span> (aka <span class="cli">continue</span>)</td><td> </td><td>Leaves the kernel debugger and continues normal operation of the system, if that is possible.</td></tr>
<tr><td><span class="cli">reboot</span></td><td> </td><td>Reboots the system immediately. You will lose all unsaved data and even those that have been saved, but have not yet been written back to disk.</td></tr>
</table>
<p>For more information, see the article <a href="http://www.haiku-os.org/documents/dev/welcome_to_kernel_debugging_land">Welcome to Kernel Debugging Land</a>.</p>
<p>The KDL output is written to the serial port (if you have one, a respective cable, and a second computer to connect with, you can capture the output there via a terminal program) and to the syslog. If you can't leave KDL it won't be written to the syslog file, though. There's a boot loader debug option that allows you to capture it nonetheless (see below).</p>
<p>You can generate QR codes from KDL output that can then be converted to text using smartphones or similar devices. See the blog post <a href="http://www.haiku-os.org/blog/mmlr/2012-07-01_qr_encode_your_kdl_output">QR Encode your KDL Output</a> on how to get data out of KDL using that feature.</p>
<h3><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="syslog" name="syslog">Syslog</a></h3>
<p><b>This is the preferred method for extracting information from a non-booting system.</b><br />
The syslog (short for system log) contains valuable information about what has happened in your system, including the output of KDL sessions. It's usually a good idea to attach it to the kernel related Trac ticket. The syslog is written to the file <span class="path">/boot/system/var/log/syslog</span>. Since writing to a file requires a working system, the most recent output might not have made it to the syslog when a kernel problem occurs (particularly on spontaneous reboots or uncontinuable KDL sessions).</p>
<p>The option <span class="menu">Enable debug syslog</span> in the boot loader's <span class="menu">Debug menu</span> makes the syslog persistent. If the option <span class="menu">Save syslog from previous session during boot</span> is activated in the boot loader options (as it is by default), you'll find the syslog of your last session as <span class="path">/boot/system/var/log/previous_syslog</span>.<br />
If you're not able to boot to get to the previous_syslog, you have to enter the boot loader menu by holding down <span class="key">SHIFT</span> (or <span class="key">SPACE</span> when booting via UEFI) while booting.<br />
In the boot loader's <span class="menu">Debug menu</span> you should find the entries <span class="menu">Display syslog from previous session</span> and <span class="menu">Save syslog from previous session</span>. The former displays the syslog on screen, the latter allows you to save it as a file to disk. Note that at the moment only FAT32 volumes are supported for saving the file. If you want to use a USB stick, but have plugged it in too late so that it isn't recognized yet, you can reset the machine and re-enter the boot loader menu. Note: Don't accidentally boot any operating system or the data will be lost.</p>
<h3><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="onscreen" name="onscreen">On screen debug output</a></h3>
<p><b>The on-screen debug output is useful only for debugging very specific issues and is known to have (timing) issues. Don't use it, if you don't have to.</b><br />
This is only relevant when Haiku fails to boot on your machine and the <span class="menu">Debug syslog</span> option doesn't work for some reason. Before the Haiku boot logo appears, hold <span class="key">SHIFT</span> (or <span class="key">SPACE</span> when booting via UEFI) to enter the boot loader menu. Select <span class="menu">Select debug options</span>. Near the bottom, <span class="menu">Enable on screen debug output</span> will be listed. (Note: The other options could be enabled in an attempt to boot Haiku. If Haiku will boot only when one or more options are activated, be sure to mention which ones.)<br />
Finally select <span class="menu">Return to main menu</span> and then <span class="menu">Continue booting</span>.<br />
One or more pages of text will display on the screen, only the last few lines need to be included on your ticket. There's more information on the <a href="../../userguide/it/bootloader.html">Boot Loader</a>.</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="hardware" name="hardware">Hardware/Driver bugs</a></h2>
<p>When dealing with a hardware/driver related bug, you should attach the following information as text files:</p>
<table summary="layout" border="0" cellpadding="2" cellspacing="0">
<tr><td>- <span class="cli">listdev</span></td><td> </td><td>A detailed listing of your hardware, including vendor and pci id's, similar to Linux' <span class="cli">lshw</span> and <span class="cli">lspci</span>.</td></tr>
<tr><td>- <span class="cli">listusb -v</span></td><td> </td><td>Assuming it's a USB related issue, similar to <span class="cli">lsusb</span>.</td></tr>
<tr><td>- <span class="cli">open /var/log/syslog</span></td><td> </td><td>The primary system log used by Haiku, see <a href="#syslog">Syslog</a> above, akin to on screen debugging during boot. With the <span class="cli">open</span> command you can crop down the relevant part of the syslog in a text editor.</td></tr>
<tr><td class="onelinetop">- <span class="cli">listimage | grep drivers/</span></td><td> </td><td>Lists all used drivers.</td></tr>
<tr><td>- <span class="cli">usb_hid_report</span></td><td> </td><td>In case of USB input devices, add the <span class="cli">/tmp/usb_hid_report_descriptor_*.bin</span> file.</td></tr>
<tr><td>- <span class="cli">ints</span></td><td> </td><td>Only available within <i>Kernel Debugging Land</i> (see above). Shows interrupt usage. There shouldn't be too many that are shared by different devices.</td></tr>
<tr><td colspan="3">- On screen debug output (a debug boot time option, see <a href="#onscreen">above</a>).</td></tr>
</table>
<p>The first four commands are entered into Terminal. Add a <span class="cli">&gt; output.txt</span> after a command, and it's piped into a text file called "<tt>output.txt</tt>" that you can attach to your bug report or email.</p>
<h2><a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="next" name="next">What's next?</a></h2>
<p>After the bug has been reported, a developer will look at your bug and try to classify it. Remember, we are all volunteers, and as such, sometimes a bug report might go unanswered for a while. Adding new information when it becomes available usually helps getting a bug picked up quicker, but do not try to 'bump' the bug up by adding
non-descriptive comments.</p>
<p>Remember, reporting a bug is not something you spend a little time on and then you are done. If you reported a bug, then you are part of the Haiku development process. Developers might come up with questions while they are trying to fix your bug. Please stay around to answer these. Consider your participation 'done' when the bug is marked
as 'fixed'.</p>
</div>
</div>
<div class="nav">
<div class="inner"><span>
<a href="../welcome_it.html" class="uplink">Welcome</a>
</span></div>
</div>
</body>
</html>