resource: Add resource_contains()
authorBjorn Helgaas <bhelgaas@google.com>
Wed, 5 Feb 2014 03:32:28 +0000 (19:32 -0800)
committerBjorn Helgaas <bhelgaas@google.com>
Wed, 26 Feb 2014 21:42:09 +0000 (14:42 -0700)
commit5edb93b89f6cc3089ee283656555e7a9ad36a8a0
tree496964f830aa06af8351de8645ec7e19ef931264
parentd2e074ccbf84e91819ae07b3ca838120db2c97a9
resource: Add resource_contains()

We have two identical copies of resource_contains() already, and more
places that could use it.  This moves it to ioport.h where it can be
shared.

resource_contains(struct resource *r1, struct resource *r2) returns true
iff r1 and r2 are the same type (most callers already checked this
separately) and the r1 address range completely contains r2.

In addition, the new resource_contains() checks that both r1 and r2 have
addresses assigned to them.  If a resource is IORESOURCE_UNSET, it doesn't
have a valid address and can't contain or be contained by another resource.
Some callers already check this or for res->start.

No functional change.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/host-bridge.c
include/linux/ioport.h
kernel/resource.c