]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Fix abug in 64-bit memory address space
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Mon, 21 Dec 2009 21:32:33 +0000 (22:32 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Mon, 21 Dec 2009 21:32:33 +0000 (22:32 +0100)
commands/lspci.c

index fd07ad8d64ca79fe1b8cf6ff46bbbd09078050fb..1eba10b43aad2679c43c88c8728c68241fb411f9 100644 (file)
@@ -176,7 +176,8 @@ grub_lspci_iter (int bus, int dev, int func, grub_pci_id_t pciid)
              if ((space & GRUB_PCI_ADDR_MEM_TYPE_MASK) 
                  == GRUB_PCI_ADDR_MEM_TYPE_64)
                {
-                 space |= grub_pci_make_address (dev, reg);
+                 addr = grub_pci_make_address (dev, reg);
+                 space |= ((grub_uint64_t) grub_pci_read (addr)) << 32;
                  reg++;
                  grub_printf ("\t64-bit memory space %d at 0x%016llx [%s]\n",
                               i, (unsigned long long)