@@ -12,7 +12,7 @@
typedef uint16_t pcidevaddr_t;
enum {
- PCIDEVADDR_INVALID = 0x0
+ PCIDEVADDR_INVALID = 0xffff,
};
pcidevaddr_t pci_find_dev(uint16_t vendor_id, uint16_t device_id);
unsigned long pci_bar_addr(pcidevaddr_t dev, int bar_num);
@@ -388,7 +388,7 @@ int main(int ac, char **av)
printf("PM timer port is %x\n", pm_tmr_blk);
pcidev = pci_find_dev(PCI_VENDOR_ID_REDHAT, PCI_DEVICE_ID_REDHAT_TEST);
- if (pcidev) {
+ if (pcidev != PCIDEVADDR_INVALID) {
for (i = 0; i < PCI_TESTDEV_NUM_BARS; i++) {
if (!pci_bar_is_valid(pcidev, i)) {
continue;
dev addr 0 is valid, just not for the pci-testdev (since the host bridge is already there). So, while it's not a problem, let's "fix" it anyway. Suggested-by: Alexander Gordeev <agordeev@redhat.com> Signed-off-by: Andrew Jones <drjones@redhat.com> --- lib/pci.h | 2 +- x86/vmexit.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)