diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2016-11-22 16:15:59 -0500 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2016-11-24 15:58:31 -0500 |
commit | a74f43675790ae55b908940652b4b04b236d8f18 (patch) | |
tree | d189b5b172644d771f5053c36a2dae80e84f5a7b | |
parent | bed5ab6375cd556d93661bbcea0d18c109c50df1 (diff) |
powercap/intel_rapl: Propagate error code when registration fails
If rapl_package_register_powercap() fails in rapl_add_package() the
function happily returns 0.
Capture the error code and propagate it.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/powercap/intel_rapl.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/powercap/intel_rapl.c b/drivers/powercap/intel_rapl.c index 94b9901d192f..79b1e041f2ec 100644 --- a/drivers/powercap/intel_rapl.c +++ b/drivers/powercap/intel_rapl.c | |||
@@ -1563,9 +1563,8 @@ static void rapl_remove_package(struct rapl_package *rp) | |||
1563 | /* called from CPU hotplug notifier, hotplug lock held */ | 1563 | /* called from CPU hotplug notifier, hotplug lock held */ |
1564 | static int rapl_add_package(int cpu) | 1564 | static int rapl_add_package(int cpu) |
1565 | { | 1565 | { |
1566 | int ret = 0; | ||
1567 | int phy_package_id; | ||
1568 | struct rapl_package *rp; | 1566 | struct rapl_package *rp; |
1567 | int ret, phy_package_id; | ||
1569 | 1568 | ||
1570 | phy_package_id = topology_physical_package_id(cpu); | 1569 | phy_package_id = topology_physical_package_id(cpu); |
1571 | rp = kzalloc(sizeof(struct rapl_package), GFP_KERNEL); | 1570 | rp = kzalloc(sizeof(struct rapl_package), GFP_KERNEL); |
@@ -1583,10 +1582,11 @@ static int rapl_add_package(int cpu) | |||
1583 | ret = -ENODEV; | 1582 | ret = -ENODEV; |
1584 | goto err_free_package; | 1583 | goto err_free_package; |
1585 | } | 1584 | } |
1586 | if (!rapl_package_register_powercap(rp)) { | 1585 | ret = rapl_package_register_powercap(rp); |
1586 | if (!ret) { | ||
1587 | INIT_LIST_HEAD(&rp->plist); | 1587 | INIT_LIST_HEAD(&rp->plist); |
1588 | list_add(&rp->plist, &rapl_packages); | 1588 | list_add(&rp->plist, &rapl_packages); |
1589 | return ret; | 1589 | return 0; |
1590 | } | 1590 | } |
1591 | 1591 | ||
1592 | err_free_package: | 1592 | err_free_package: |