On Thu, Jul 28, 2016 at 04:44:05PM +0200, Thomas Gleixner wrote: > > +static int jcore_pit_cpu_notify(struct notifier_block *self, > > + unsigned long action, void *hcpu) > > +{ > > + struct jcore_pit_nb *nb = container_of(self, struct jcore_pit_nb, nb); > > + switch (action & ~CPU_TASKS_FROZEN) { > > + case CPU_STARTING: > > + jcore_pit_local_init(this_cpu_ptr(nb->pit_percpu)); > > + break; > > + } > > + return NOTIFY_OK; > > Please convert this to the new state machine model of cpu > hotplug. CPU_STARTING will be gone very soon. Here is an example: > > http://git.kernel.org/cgit/linux/kernel/git/tip/tip.git/commit/?h=smp/hotplug&id=7e86e8bd8dd67649d176e08d8dfb90039f0a1e98 Trying this change now and I'm getting hangs inside cpuhp_invoke_ap_callback between wake_up_process and wait_for_completion. I suspect it's not possible to run a scheduled task yet because there's no timer yet, or something like that. Do I need further infrastructure from tip that's not upstream yet in order to test this? I just rebased on linus/master and still have the same problem, but none of the other driver changes are in Linus's tree yet. Following the other drivers in tip (again, I don't have any of these in my tree), I put the new state between CPUHP_AP_SCHED_STARTING and CPUHP_AP_NOTIFY_STARTING; is this correct? Rich -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html