| Zeile 22: | Zeile 22: | ||
::::Ich habe den Code auch mal unverändert getestet und da ließ er sich nichteinmal kompilieren. Es gibt immer die Meldung von GCC pci.c:158: error: invalid operands to binary + (have 'pci_bdf_t' and 'int') Das ist hier die Zeile 119 "const uint32_t barHighValue = pci_config_readd(addr+4,barOffset); // und wieder zurücklesen" --[[Benutzer:Programm Noob|Programm Noob]] 22:36, 22. Jul. 2010 (CEST) | ::::Ich habe den Code auch mal unverändert getestet und da ließ er sich nichteinmal kompilieren. Es gibt immer die Meldung von GCC pci.c:158: error: invalid operands to binary + (have 'pci_bdf_t' and 'int') Das ist hier die Zeile 119 "const uint32_t barHighValue = pci_config_readd(addr+4,barOffset); // und wieder zurücklesen" --[[Benutzer:Programm Noob|Programm Noob]] 22:36, 22. Jul. 2010 (CEST) | ||
::::Das mit dem höchsten Bit sehe ich ein. Aber die zweite Alternative führt eben genau dann zur Fehlermeldung, weil das unterste Bit nicht 0x80000000 (also lowestBit > 31) ist. --[[Benutzer:Jidder|Jidder]] 22:42, 22. Jul. 2010 (CEST) | ::::Das mit dem höchsten Bit sehe ich ein. Aber die zweite Alternative führt eben genau dann zur Fehlermeldung, weil das unterste Bit nicht 0x80000000 (also lowestBit > 31) ist. --[[Benutzer:Jidder|Jidder]] 22:42, 22. Jul. 2010 (CEST) | ||
| + | :::::Wenn das unterste Bit über 31 ist (also mehr als 4 GB), dann läuft was schief. Insofern finde ich diesen Test vollkommen in Ordnung (bei 64 Bit könnte man nochmal drüber nachdenken). —[[Benutzer:XanClic|Clici McXan]] 22:50, 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) | ::::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) | ||