|
@@ -43,7 +43,7 @@ static void rpaphp_release_slot(struct hotplug_slot *hotplug_slot)
|
|
void dealloc_slot_struct(struct slot *slot)
|
|
void dealloc_slot_struct(struct slot *slot)
|
|
{
|
|
{
|
|
kfree(slot->hotplug_slot->info);
|
|
kfree(slot->hotplug_slot->info);
|
|
- kfree(slot->hotplug_slot->name);
|
|
|
|
|
|
+ kfree(slot->name);
|
|
kfree(slot->hotplug_slot);
|
|
kfree(slot->hotplug_slot);
|
|
kfree(slot);
|
|
kfree(slot);
|
|
}
|
|
}
|
|
@@ -63,11 +63,9 @@ struct slot *alloc_slot_struct(struct device_node *dn,
|
|
GFP_KERNEL);
|
|
GFP_KERNEL);
|
|
if (!slot->hotplug_slot->info)
|
|
if (!slot->hotplug_slot->info)
|
|
goto error_hpslot;
|
|
goto error_hpslot;
|
|
- slot->hotplug_slot->name = kmalloc(strlen(drc_name) + 1, GFP_KERNEL);
|
|
|
|
- if (!slot->hotplug_slot->name)
|
|
|
|
|
|
+ slot->name = kstrdup(drc_name, GFP_KERNEL);
|
|
|
|
+ if (!slot->name)
|
|
goto error_info;
|
|
goto error_info;
|
|
- slot->name = slot->hotplug_slot->name;
|
|
|
|
- strcpy(slot->name, drc_name);
|
|
|
|
slot->dn = dn;
|
|
slot->dn = dn;
|
|
slot->index = drc_index;
|
|
slot->index = drc_index;
|
|
slot->power_domain = power_domain;
|
|
slot->power_domain = power_domain;
|