Preklad tejto stránky zatiaľ nie je dokončený. Dovtedy sa nedokončené časti zobrazia v anglickom origináli.
Obsah
Získanie účtu v Trac
Vytvorenie hlásenia o chybe
Chyby aplikácií
Chyby serverov
Chyby jadra
Kernel Debugging Land - KDL
Syslog
Výstup ladenia na obrazovku
Chyby hardvéru/ovládačov
Čo ďalej?

Nahlasovanie chýb

Keďže je nemožné, aby naši vývojári otestovali každú kombináciu hardvéru či každý možný spôsob interakcie s operačným systémom, spoliehame sa na našich používateľov, aby nám poslali spätnú väzbu ako veci fungujú u nich. Keďže Haiku je stále relatívne mladé, je veľmi pravdepodobné, že narazíte na chyby. ďakujeme vám za čas, ktorý venujete ich nahláseniu. Spolu môžeme Haiku vylepšovať, trochu po troche.

Aby bol náš nástroj na sledovanie chýb fungoval efektívne, je nevyhnutné dodržiavať Etiketu nástroja na sledovanie chýb.

index Získanie účtu v Trac

Aby ste mohli založiť hlásenie, musíte mať účet v Nástroji na sledovanie chýb Haiku.
Pri vytváraní účtu určite poskytnite vašu emailovú adresu, pretože je potrebné získať základné oprávnenia na zmenu hlásení. Určite sa krátko potom pozrite aj do spamového priečinka, pretože dôležité overovacie emaily tam často skončia.

index Vytvorenie hlásenia o chybe

Pred nahlásením chyby sa prosím uisitite, že už nebola nahlásená. Tiež na to môžete použiť funkciu hľadanie.
Potom, ako ste sa uistili, že chyba je jedinečná, uveďte čo najpresnejšie vaše informácie:

index Chyby aplikácií

Keď aplikácia havaruje, mali by ste vyvolať ladiaci nástroj z upozornenia, ktoré vyskočí. To otvorí okno Terminálu, v ktorom beží gdb (GNU debugger). Zadaním bt vytvoríte „backtrace“, ktorý by ste mali kompletne skopírovať (vrátane časti zorbazenej než ste zadali príkaz bt) a priložiť ho k hláseniu.

index Chyby serverov

Ak havarujú dôležité servery ako aplikačný server, registrátor alebo server vstupu, neuvidíte zvyčajné upozornenie na haváriu. Namiesto toho sa celá obrazovka zmaže na bielu farbu, spustí sa relácia gdb a jej výstup sa objaví priamo na obrazovke. Pravdepodobne budete môcť pohybovať myšou, čo prepíše bielu farbu a výstup gdb na obrazovke. Aplikácie, ktoré ešte bežia (ako ProcessController alebo hodiny v Paneli) tiež možno prekreslia časť ladiaceho výstupu na obrazovke.
Okrem toho, že je všetko škaredšie a nepohodlné platí prakticky to isté ako pri chybách aplikácií. Predovšetkým získajte backtrace (príkaz bt). Možno budete musieť odfotiť obrazovku digitálnym fotoaparátom, pretože nebudete môcť text nikam skopírovať.

index Chyby jadra

Chyby jadra sú zvyčajne tie, ktoré majú najzávažnejší vplyv a zároveň sa najťažšie ladia. Existujú rôzne druhy symptómov, ktoré pravdepodobne naznačujú problém s jadrom alebo ovládačom:

pamätajte, že hoci iba posledný bod indikuje súvislosť s hardvérom, všetky ostatné symptómy môžu byť spôsobené aj chybou v ovládači hardvéru. Ak máte podozrenie, ktorá časť hardvéru alebo zodpovedajúci ovládač môže súvisieť s problémom, skontrolujte, či odstránenie alebo vypnutie hardvéru či ovládača pomôže. Napríklad ak podozrievate Wi-Fi, možno zistíte, že váš BIOS umožňuje ju vypnúť. Alebo ak nie, môžete odstrániť príslušný ovládač Wi-Fi z vašej inštalácie Haiku (v /boot/system/add-ons/kernel/drivers/bin).

index Kernel Debugging Land - KDL

Ak systém sám nevstúpil do KDL, môžete ho úmyselne vyvolať klávesovou skratkou ALT SysReq D.
Pamätajte, že v KDL vaša klávesnica nemusí fungovať. Klávesnice PS/2 fungujú vždy, klávesnice USB pripojené prostredníctvom ovládačov UHCI fungujú iba ak už aspoň raz ste vstúpili do KDL použitím klávesovej skratky. USB OHCI momentálne nie je podporované.

Samotné KDL je istým druhom shellu. Môžete vykonávať príkazy, ktoré vypisujú informácie o systéme. Nasledovné príkazy môžu byť zaujímavé:

bt (resp. sc) Vypíše backtrace. Ak systém svojvoľne vstúpil do KDL, vždy ho spustite.
ints Zobrazí ošetrené a neošetrené hardvérové prerušenia.
co (resp. continue) Opustí ladenie jadra a pokračuje v normálnej prevádzke systému ak je to možné.
reboot Okamžite reštartuje systém. Stratíte všetky neuložené dáta a aj tie, ktoré už boli uložené, ale zatiaľ neboli zapísané na disk.

Ďalšie informácie nájdete v článku Welcome to Kernel Debugging Land.

Výstup KDL sa zapisuje na sériový port (ak ho máte a ak máte príslušný kábel na pripojenie druhého počítača, môžete prostredníctvom neho zachytiť výstup pomocou terminálového programu) a do syslogu. Ak nemôžete opustiť KDL, nezapíše však sa do súboru syslog. Existuje voľba zavádzača systému, ktorá vám umožňuje zachytiť ho napriek tomu (pozri nižšie).

You can generate QR codes from KDL output that can then be converted to text using smartphones or similar devices. See the blog post QR Encode your KDL Output on how to get data out of KDL using that feature.

index Syslog

This is the preferred method for gaining information from a non-booting system.
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 /boot/common/var/log/syslog. 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).

The option Enable debug syslog in the boot loader's Debug menu makes the syslog somewhat persistent in memory. By default the option is enabled. "Somewhat persistent" means that it survives a reset and will still be accessible when you enter the boot loader menu directly afterwards. Booting an operating system (Haiku definitely, others likely) destroys the information, though. So you have to enter the boot loader menu by holding down SHIFT while booting.
In the boot loader's Debug menu you should now find the entries Display syslog from previous session and Save syslog from previous session. 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. But again: Don't accidentally boot any operating system or the data will be lost.

index Výstup ladenia na obrazovku

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.
This is only relevant when Haiku fails to boot on your machine and the Debug syslog option doesn't work for some reason. Before the Haiku boot logo appears, hold SHIFT to enter the boot loader menu. Select Select safe mode options. Near the bottom, [ ] Enable on screen debug output 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.)
Finally select Return to main menu and then Continue booting.
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 Boot Loader.

index Chyby hardvéru/ovládačov

When dealing with a hardware/driver related bug, you should attach the following information as text files:

- listdev A detailed listing of your hardware, including vendor and pci id's, similar to Linux' lshw and lspci.
- listusb -v Assuming its a USB related issue, similar to lsusb.
- open /var/log/syslog The primary system log used by Haiku, akin to on screen debugging during boot. With the open command you can crop down the relevant part of the syslog in a text editor.
- listimage | grep drivers/ Lists all used drivers.
- ints Only available within Kernel Debugging Land (see above). Shows interrupt usage. There shouldn't be too many that are shared by different devices.
- On screen debug output (a safe mode boot time option).

The first four commands are entered into Terminal. Add a > output.txt after a command, and it's piped into a text file called "output.txt" that you can attach to your bug report or email.

index

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.

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'.