resources: when allocate_resource() fails, leave resource untouched
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Mon, 2 Nov 2009 17:45:36 +0000 (10:45 -0700)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Wed, 4 Nov 2009 21:06:46 +0000 (13:06 -0800)
commit1e5ad9679016275d422e36b12a98b0927d76f556
treebde97d71c5ce1d4ecd238e1d187dc548078b928c
parent03db42adfeeabe856dbb6894dd3aaff55838330a
resources: when allocate_resource() fails, leave resource untouched

When "allocate_resource(root, new, size, ...)" fails, we currently
clobber "new".  This is inconvenient for the caller, who might care
about the original contents of the resource.

For example, when pci_bus_alloc_resource() fails, the "can't allocate
mem resource %pR" message from pci_assign_resources() currently contains
junk for the resource start/end.

This patch delays the "new" update until we're about to return success.

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
kernel/resource.c