Messages in this thread | | | Subject | Re: [v5 RFC PATCH 0/7]: cpuidle/x86/POWER (REDESIGN): Cleanup idle power management code in x86, cleanup drivers/cpuidle/cpuidle.c and introduce cpuidle to POWER. | From | Peter Zijlstra <> | Date | Tue, 22 Sep 2009 09:25:59 +0200 |
| |
Much better :-)
But I'm puzzled by all the per-cpu-ish-ness of the stuff. Why would you need to register things on a per-cpu basis?
Also:
+ list_for_each(pos, &per_cpu(cpuidle_devices_list, cpu)) { + temp_dev = container_of(pos, struct cpuidle_device, + percpu_list[cpu]); + if (dev == temp_dev) { + list_del(&temp_dev->percpu_list[cpu]); + cpuidle_remove_state_sysfs(temp_dev); + } + }
Looks buggy, either you want to break out of the loop on dev == temp_dev, or you want to use list_for_each_safe().
| |