Skip to content
  • Bjorn Helgaas's avatar
    PCI: Check all IORESOURCE_TYPE_BITS in pci_bus_alloc_from_region() · aa11fc58
    Bjorn Helgaas authored
    When allocating space from a bus resource, i.e., from apertures leading to
    this bus, make sure the entire resource type matches.  The previous code
    assumed the IORESOURCE_TYPE_BITS field was a bitmask with only a single bit
    set, but this is not true.  IORESOURCE_TYPE_BITS is really an enumeration,
    and we have to check all the bits.
    
    See 72dcb119
    
     ("resources: Add register address resource type").
    
    No functional change.  If we used this path for allocating IRQs, DMA
    channels, or bus numbers, this would fix a bug because those types are
    indistinguishable when masked by IORESOURCE_IO | IORESOURCE_MEM.  But we
    don't, so this shouldn't make any difference.
    
    Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
    aa11fc58