ANDROID: cpu: send KOBJ_ONLINE event when enabling cpus
authorThierry Strudel <tstrudel@google.com>
Wed, 15 Jun 2016 00:46:44 +0000 (17:46 -0700)
committerAmit Pundir <amit.pundir@linaro.org>
Mon, 18 Dec 2017 15:41:22 +0000 (21:11 +0530)
In case some sysfs nodes needs to be labeled with a different label than
sysfs then user needs to be notified when a core is brought back online.

Signed-off-by: Thierry Strudel <tstrudel@google.com>
Bug: 29359497
Change-Id: I0395c86e01cd49c348fda8f93087d26f88557c91

kernel/cpu.c

index 04892a82f6ac36c92324806b66a1c1855880c8f7..41191a48af079255242693c787b2b4d0af207dd3 100644 (file)
@@ -1133,6 +1133,7 @@ void __weak arch_enable_nonboot_cpus_end(void)
 void enable_nonboot_cpus(void)
 {
        int cpu, error;
+       struct device *cpu_device;
 
        /* Allow everyone to use the CPU hotplug again */
        cpu_maps_update_begin();
@@ -1150,6 +1151,12 @@ void enable_nonboot_cpus(void)
                trace_suspend_resume(TPS("CPU_ON"), cpu, false);
                if (!error) {
                        pr_info("CPU%d is up\n", cpu);
+                       cpu_device = get_cpu_device(cpu);
+                       if (!cpu_device)
+                               pr_err("%s: failed to get cpu%d device\n",
+                                      __func__, cpu);
+                       else
+                               kobject_uevent(&cpu_device->kobj, KOBJ_ONLINE);
                        continue;
                }
                pr_warn("Error taking CPU%d up: %d\n", cpu, error);