<divclass="box-info">Tämän sivun kotoistaminen ei ole vielä täydellinen. Siihen asti keskeneräiset osat käyttävät englanninkielistä alkuperäistekstiä.</div>
<p>Koska kehittäjämme eivät pysty testaamaan jokaista laitteistoyhdistelmää, eikä jokaista erilaista käyttöjärjestelmän vuorovaikutusta, luotamme käyttäjien antavan meille palautetta siitä, kuinka asiat toimivat heidän laitteissaan. Koska Haiku on aika nuori, on hyvin todennäköistä, että käyttäjä kohtaa vikoja. Kiitämme siitä ajasta, jota käytät niistä ilmoittamiseen. Yhdessä voimme parantaa Haikua pala palalta.</p>
<p>Vianjäljityksen pitämiseksi tehokkaana on olennaista noudattaa <ahref="http://dev.haiku-os.org/wiki/BugTrackerEtiquette">Vianjäljitysetikettiä</a>.</p>
<p>Jos luot vikalipun, sinulla on oltava tili <ahref="http://dev.haiku-os.org/register"title="Registröidy Haikun vikajäljittäjään">Haikun vikajäljittäjässä</a>.<br/>
Luotaessa uutta tiliä muista <b>tarjota sähköpostiosoitteesi</b>, koska se on välttämätön lipun muokkausoikeusien saamiseksi. Tarkista varmuuden vuoksi <b>roskapostikansiosi</b> pian jälkeenpäin, koska kaikki tärkeät vahvistussähköpostiviestit usein päättyvät sinne.</p>
<p><ahref="http://dev.haiku-os.org/query?status=new&status=assigned&status=reopened&status=closed&summary=%7Etext+you+want+to+search+for&order=priority">Varmista</a> ennen vian ilmoittamista, että vastaavaa vikailmoitusta ei ole jo olemassa. Voit käyttää myös <ahref="http://dev.haiku-os.org/search?q=&noquickjump=1&ticket=on">etsi</a>-toimintoa tähän.<br/>
Varmista sen jälkeen kun olet esitellyt ainutlaatuisen vian, että tietosi ovat niin tarkkoja kuin mahdollista:</p>
<li><p>Sisällytä mukaan perustietoa siitä, kuinka testaat Haikua (todellisessa tietokoneessa, VMWare-ympäristössä, QEMU-emulaattorissa, jne.).</p></li>
<li><p>Mainitse, mitä <acronymtitle="Subversion, käyttämämme lähdekoodin versionhallintajärjestelmä">SVN</acronym>-korjausversiota käytät. Löydät tämän tiedon Työpöytäpalkin valikosta <spanclass="menu">Haikusta...</span>. Mainitse myös, että minkälaisella rakennusjärjestelmällä (gcc2, gcc4, gcc2hybrid, gcc4hybrid) testaamasi järjestelmä on rakennettu. Ladattavat tiedostovedokset on nimetty niiden mukaan. Itse rakennetuissa tiedostovedoksissa tiedät itse, kuinka se on rakennettu.</p></li>
<li><p>Kuvaile kokemasi pulma. Yritä olla niin tarkka kuin voit: kuvaile todellinen käyttäytyminen, ja se käyttäytyminen, jota odotit.</p></li>
<li><p>Kuvaile, mitä vaiheita pitää suorittaa vian paljastumiseksi. Tämä auttaa kehittäjiä toistamaan vian.</p></li>
<li><p>Liitä mukaan niin paljon tietoja, kuin sinulla on. Jos kyseessä on graafisen käyttöliittymän vika, tai vika yhdessä sovelluksessa, yritä tehdä näytönkaappaus painamalla <spanclass="key">PRINT SCREEN</span>-näppäintä.</p></li>
<p>Kun sovellus kaatuu, sinun pitäisi kutsua vikajäljitintä hälytysikkunasta, joka ponnahtaa näkyviin. Tämä avaa Pääteikkunan gdb-ohjelmalla (GNU-vikajäljitin), joka käynnistyy. Kirjoittamalla <spanclass="cli">bt</span>, luot "paluujäljen". jonka sinun pitäisi kopioida kokonaisuudessaan (mukaan lukien se osa, joka tuli näkyviin, ennen kuin kirjoitit <spanclass="cli">bt</span>-komennon) ja liittää se vikalippuun.</p>
<p>Kun elintärkeät palvelimet, kuten app-, registrar- tai input-palvelin kaatuvat, et näe tavallista kaatumishälytystä. Sen sijaan koko näyttö muuttuu valkoiseksi tja gdb-istunto käynnistyy ja sen tuloste ilmaantuu näytölle. Todennäköisesti pystyt yhä liikuttamaan hiiren kohdistinta, mikä ylikirjoittaa valkoisen ja gdb-tulosteen näytöllä. Yhä vielä toimivat sovellukset (kuten Prosessivalvonta tai Työpöytäpalkin kello) saattavat myös kirjoittaa vikajäljitin tulosteen päälle näytölle.<br/>
Paitsi että kaikki on rumempaa ja epämukavampaa, sama koskee myös sovellusvikoja. Tärkeintä on hankkia paluujälki (<spanclass="cli">bt</span>-komento). Sinun on ehkä otettava valokuva näytöstä digitaalikameralla, koska et voi kopioida tekstiä mihinkään.</p>
<p>Käyttöjärjestelmäydinviat ovat tavallisesti vaikutuksiltaan vakavimmat ja samanaikaisesti niiden vikajäljittäminen on vaikeinta. Käyttöjärjestelmäytimeen tai ajuriin osoittavat selvimmin seuraavat oireet:</p>
<li><p>Järjestelmä siirtyy Käyttöjärjestelmän vianjäljitysmaahan (KDL) omasta tahdostaan. Näytön ylempi osa muuttuu valkoiseksi ja sille tulostetaan useita rivejä tekstiä. Toinen rivi sanoo "<i>Welcome to Kernel Debugging Land...</i>". Sen yläpuolella oleva rivi kertoo välittömän syyn siirtymisestä KDL:ään.</p></li>
<li><p>Järjestelmä jäätyy täysin. Et voi siirtää hiiren osoitinta ja mikään sovellus ei enää toimi. Tärkeä testi siinä tilanteessa on, että pystytkö siirtymään KDL:ään pikanäppäimellä <spanclass="key">ALT</span><spanclass="key">SysReq</span><spanclass="key">D</span> (<spanclass="key">SysReq</span> mikä on <spanclass="key">PRINT</span> useimmissa näppäimistöissä). Odota vähintään minuutti nähdeksesi, että tapahtuuko jotain.</p></li>
<li><p>Järjestelmä ei alkulataa oikein. Se voi alkulatautua itsestään tai pysähtyä jossain vaiheessa (esimerkiksi jonkun alkaulatausnäytön kuvakkeen kohdalla). Yritä jälkimmäisessä tapauksessa myös <spanclass="key">ALT</span><spanclass="key">SysReq</span><spanclass="key">D</span>.</p></li>
<li><p>Koko järjestelmä tai joku laitteiston osa ei toimi kunnolla. Esimerkiksi se voisi olla hyvin hidas, tapahtuu virheitä, tai jokin ei toimi ollenkaan. Jos jokin laite ei toimi ollenkaan, ensimmäinen ilmeinen tarkistus on, että tukeeko Haiku sitä ylimalkaan tällä hetkellä (esim.: kysy sähköpostituslistalta tai foorumilta).</p></li>
<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 <ahref="../../../userguide/en/bootloader.html">Boot Loader</a>).</p>
<p>Jos järjestelmä ei ole siirtynyt KDL-tilaan itsestään, voit tehdä sen tarkoituksellisesti pikanäppäimillä <spanclass="key">ALT</span><spanclass="key">SysReq</span><spanclass="key">D</span>.<br/>
Huomaa, että KDL-tilassa näppäimistösi ei ehkä toimi. PS/2-näppäimistöt toimivat aina, UCHI-ohjaimen kautta yhdistetyt USB-näppäimistöt toimivat vain jos jos KDL-tilaan on siirrytty näppäimistön avulla vähintään kerran. USB OHCI ei tällä hetkellä tueta.</p>
<p>KDL itse on erään tyyppinen komentotulkki. Käyttäjä voi suorittaa komentoja, jotka tulostavat tietoja järjestelmästä. Seuraavat komennot saattavat olla kiinnostavia:</p>
<tr><td><spanclass="cli">bt</span> (eli sc)</td><td></td><td>Tulostaa paluujäljen. Jos järjestelmä siirtyy KDL-tilaan omasta tahdostaan, kirjoita aina tämä komento.</td></tr>
<tr><td><spanclass="cli">ints</span></td><td></td><td>Näyttää käsitellyt ja käsittelemättömät laitteistokeskeytykset.</td></tr>
<tr><tdclass="onelinetop"><spanclass="cli">co</span> (eli jatka)</td><td></td><td>Jättää järjestelmävianjäljittimen ja jatkaa normaalia järjestelmän toimintaa, jos se on mahdollista.</td></tr>
<tr><td><spanclass="cli">reboot</span></td><td></td><td>Alkulataa järjestelmän välittömästi. Menetät kaiken tallentamattomat tiedot ja vieläpä nuo, jotka on tallennettu, mutta joita ei ole vielä kirjoitettu levylle.</td></tr>
<p>KDL-tuloste kirjoitetaan sarjaporttiin (jos sinulla on sellainen, vastaavaan kaapeliin ja toiseen tietokoneeseen, voit kaapata tulosteen siellä pääteikkunan kautta) ja syslog-järjestelmälokiin. Jos et voi poistua KDL:stä, sitä ei kuitenkaan voida kirjoittaa järjestelmälokiin. Alkulatausvianjäljitysvalitsin mahdollistaa sen tallentamisen kaikesta huolimatta (katso alla).</p>
<p>Voit tuottaa QR-koodeja KDL-tulosteesta, joka voidaan muuntaa tekstiksi käyttäen älypuhelimia ja vastaavia laitteita. Katso blogikirjoitusta <ahref="http://www.haiku-os.org/blog/mmlr/2012-07-01_qr_encode_your_kdl_output">QR-koodaa KDL-tulosteesi</a> siitä kuinka saat ulos tietoja KDL:sta käyttäen tätä ominaisuutta.</p>
<p><b>This is the preferred method for gaining 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 <spanclass="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 <spanclass="menu">Enable debug syslog</span> in the boot loader's <spanclass="menu">Debug menu</span> makes the syslog persistent. If the option <spanclass="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 <spanclass="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 <spanclass="key">SHIFT</span> while booting.<br/>
In the boot loader's <spanclass="menu">Debug menu</span> you should find the entries <spanclass="menu">Display syslog from previous session</span> and <spanclass="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>
<p><b>Vianjäljitystulostus näytölle on hyödyllinen vain hyvin erikoisten kohteiden vianjäljityksessä ja siinä tiedetään olevan (ajoitus) pulmia.</b><br/>
Se on ajankohtainen vain kun Haikun alkulataus epäonnistuu ja valikkovalinta <spanclass="menu">Vikajäljitä järjestelmäloki</span> ei jostain syystä toimi. Pidä ennen Haikun alkulatauslogon ilmaantumistta alhaalla <spanclass="key">VAIHTO</span>-näppäintä päästäksesi alkulatausvalikkoon. Valitse <spanclass="menu">Valitse turvatila</span>-valitsimet. Lähellä alareunaa luetelleaan <spanclass="menu">[ ] Ota käyttöön vikajäljitystulostus näytölle</span>. (Huomaa: Toiset valitsime voivat olla käytössä yrityksenä alkuladata Haiku. Jos Haiku alkulatautuu vain kun yksi tai useampi valitsin on käytössä, varmista, että mainitset ne).<br/>
Valitse lopuksi <spanclass="menu">Paluu päävalikkoon</span> ja sitten <spanclass="menu">Jatka alkulatausta</span>.<br/>
Yksi tai useampia tekstisivuja näytetään näytölle, vain muutama harva viimeinen rivi on liitettävä vikailmoituslippuun. Tässä on lisätietoja <ahref="../../../userguide/fi/bootloader.html">Alkulataaja</a>sta.</p>
<tr><td>- <spanclass="cli">listdev</span></td><td></td><td>Yksityiskohtainen luettelo laitteistostasi, mukaanlukien valmistaja- ja pci-tunnisteet, samanlainen kuin Linuxin <spanclass="cli">lshw</span> ja <spanclass="cli">lspci</span>.</td></tr>
<tr><td>- <spanclass="cli">listusb -v</span></td><td></td><td>Otaksutaan sen olevan USB:hen liittyvä pulma, sama kuin <spanclass="cli">lsusb</span>.</td></tr>
<tr><td>- <spanclass="cli">open /var/log/syslog</span></td><td></td><td>Haikun ensisijainen järjestelmäloki, sukua alkulatauksen aikaiselle vianjäljitykselle. Komennolla <spanclass="cli">open</span> voit poimia olennaisen osan järjestelmälokista testieditorissa.</td></tr>
<tr><tdclass="onelinetop">- <spanclass="cli">listimage | grep drivers/</span></td><td></td><td>Luettelee kaikki käytetyt ajurit.</td></tr>
<tr><td>- <spanclass="cli">ints</span></td><td></td><td>Käytettävissä vain <i>Käyttöjärjestelmäytimen vianjäljitysalueella</i> (katso yllä). Näyttää keskeytysten käytön. Eri laitteiden kesken jaettuja keskeytyksiä ei pitäisi olla montaa.</td></tr>
<p>Neljä ensimmäistä komentoa kirjoitetaan Pääteikkunassa. Lisää <spanclass="cli">> output.txt</span> komennon jälkeen ja se putkitetaan tekstitiedostoon, jonka nimi on "output.txt", jonka voit liittää vikailmoitukseesi tai sähköpostiviestiisi.</p>
<p>Vikailmoituksen tekemisen jälkeen kehittäjä tutkii vikaa ja yrittää luokitella sen. Muista, että olemme kaikki vapaaehtoisia ja sellaisena joskus vikailmoitus voi olla vastaamattomana jonkin aikaa. Lisätietojen lisääminen silloin kun sellaista ilmenee, auttaa tavallisesti vian poimimista käsiteltäväksi nopeammin, mutta älä yritä 'töniä' vikaa lisäämällä ei-kuvaavia kommentteja.</p>
<p>Muista, että vika ei ole jotain, johon käytät pikkuisen aikaa ja sitten kaikki on tehty. Jos ilmoitat viasta, olet osa Haikun kehitysprosessia. Kehittäjät saattavat esittää kysymyksiä yrittäessään korjata vikaa. Pysyttele tavoitettavissa vastataksesi kysymyksiin. Katso osanottamisesi -tehdyksi' kun vika on merkitty 'fixed'.</p>