From ba6f3a9819cbe6417e8db3802e4d7451c1e226cf Mon Sep 17 00:00:00 2001 From: Linas Vepstas Date: Fri, 13 Apr 2007 15:34:09 -0700 Subject: [PATCH] --- yaml --- r: 53362 b: refs/heads/master c: 31be7586d1122538747519d786408f142f59dd46 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/pci/hotplug/rpaphp_core.c | 5 +++++ trunk/drivers/pci/hotplug/rpaphp_pci.c | 1 - trunk/drivers/pci/hotplug/rpaphp_slot.c | 1 - 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index daac658acdfc..44aefb8b63a4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fa1891596ca252e48e8803738fd8ead5b3082217 +refs/heads/master: 31be7586d1122538747519d786408f142f59dd46 diff --git a/trunk/drivers/pci/hotplug/rpaphp_core.c b/trunk/drivers/pci/hotplug/rpaphp_core.c index 3afd154bf543..ca95e1515d6f 100644 --- a/trunk/drivers/pci/hotplug/rpaphp_core.c +++ b/trunk/drivers/pci/hotplug/rpaphp_core.c @@ -321,10 +321,15 @@ int rpaphp_add_slot(struct device_node *dn) indexes[i + 1], name, type); retval = rpaphp_register_pci_slot(slot); + if (retval) + dealloc_slot_struct(slot); + name += strlen(name) + 1; type += strlen(type) + 1; } dbg("%s - Exit: rc[%d]\n", __FUNCTION__, retval); + + /* XXX FIXME: reports a failure only if last entry in loop failed */ return retval; } diff --git a/trunk/drivers/pci/hotplug/rpaphp_pci.c b/trunk/drivers/pci/hotplug/rpaphp_pci.c index 6f6cbede5135..a669ba3f29c9 100644 --- a/trunk/drivers/pci/hotplug/rpaphp_pci.c +++ b/trunk/drivers/pci/hotplug/rpaphp_pci.c @@ -195,7 +195,6 @@ static int setup_pci_slot(struct slot *slot) } return 0; exit_rc: - dealloc_slot_struct(slot); return -EINVAL; } diff --git a/trunk/drivers/pci/hotplug/rpaphp_slot.c b/trunk/drivers/pci/hotplug/rpaphp_slot.c index 907f1301f84a..dd1e275a82ce 100644 --- a/trunk/drivers/pci/hotplug/rpaphp_slot.c +++ b/trunk/drivers/pci/hotplug/rpaphp_slot.c @@ -184,7 +184,6 @@ int rpaphp_register_slot(struct slot *slot) sysfs_fail: pci_hp_deregister(php_slot); register_fail: - rpaphp_release_slot(php_slot); return retval; }