| Zeile 28: | Zeile 28: | ||
::::Ich habe es jetzt in qemu getestet (echte Hardware geht gerade nicht), sieht funktionierend aus. Kompiliert mit -Wall -Wextra -pedantic -std=gnu99. Wobei das offensichtlich ein Fehler da ist, das +4 muss wohl eher ans barOffset (und die Aussage „das war der Test, ob ihr auch alle aufpasst“ wäre gar nicht so falsch ^^). —[[Benutzer:XanClic|Clici McXan]] 22:48, 22. Jul. 2010 (CEST) | ::::Ich habe es jetzt in qemu getestet (echte Hardware geht gerade nicht), sieht funktionierend aus. Kompiliert mit -Wall -Wextra -pedantic -std=gnu99. Wobei das offensichtlich ein Fehler da ist, das +4 muss wohl eher ans barOffset (und die Aussage „das war der Test, ob ihr auch alle aufpasst“ wäre gar nicht so falsch ^^). —[[Benutzer:XanClic|Clici McXan]] 22:48, 22. Jul. 2010 (CEST) | ||
Allgemein was zu dem Code: Was soll der hier? Mit den ganzen Fehlermeldungen sieht das danach aus, als würde da ein Test der Hardware auf Funktionsfähigkeit durchgeführt werden. Solche Dinge gehören meiner Meinung nach nicht an diesen Platz, der Artikel ist eh schon ziemlich geschwätzig. --[[Benutzer:Jidder|Jidder]] 22:55, 22. Jul. 2010 (CEST) | Allgemein was zu dem Code: Was soll der hier? Mit den ganzen Fehlermeldungen sieht das danach aus, als würde da ein Test der Hardware auf Funktionsfähigkeit durchgeführt werden. Solche Dinge gehören meiner Meinung nach nicht an diesen Platz, der Artikel ist eh schon ziemlich geschwätzig. --[[Benutzer:Jidder|Jidder]] 22:55, 22. Jul. 2010 (CEST) | ||
| + | |||
| + | Der große Beispielcode ist von mir und wurde bei mir tatsächlich weder kompiliert noch getestet (das habe ich damals im IRC auch deutlich gesagt und um Tests gebeten), ich habe den Buchstabengetreu nach der PCI-Spec geschrieben. Das der so gründlich testet liegt daran das ich schon oft PCI-Devices gesehen hab die sich nicht ganz an die Spec halten, falls das wirklich zu einem Problem wird dann versuche ich das ganze etwas zu entschärfen. Ich wollte das der Code '''alle''' Möglichkeiten gründlich abtestet. Wenn die Meldung "FEHLER : 32Bit-Memory-BAR %u enthält keine beschreibbaren Adressbits!\n" kommt dann bedeutet dass das in einem unbenutztem BAR das prefetchable-Bit gesetzt ist und das darf eigentlich nicht sein ist aber auch kein so schwerwiegender Fehler (@Jidder: schick mir doch mal die eine passende lspci-Aufgabe von den betreffenden Geräten dann schau ich mal wie ich den Code am geschicktesten verbessere). Wenn gewünscht mache ich daraus ein Warning ;) . Die +4 war tatsächlich an der falschen Stelle, sorry. Das die 'while( ( value & mask ) != 0 )' gegen 'while (!(value & mask))' ausgetauscht wurden finde ich persönlich nicht besonders gut, ich bevorzuge es nur auf Dinge zu testen die eindeutig TRUE oder FALSE ergeben. --[[Benutzer:Erik.vikinger|Erik.vikinger]] 10:19, 23. Jul. 2010 (CEST) | ||