15 Jul, 2016

31 commits

  • Straight forward conversion to the state machine. Though the question arises
    whether this needs really all these state transitions to work.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Linus Torvalds
    Cc: Paul E. McKenney
    Cc: Peter Zijlstra
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.982013161@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Anna-Maria Gleixner
    Cc: Andre Przywara
    Cc: Christoffer Dall
    Cc: Eric Auger
    Cc: Linus Torvalds
    Cc: Marc Zyngier
    Cc: Paolo Bonzini
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: Thomas Gleixner
    Cc: kvm@vger.kernel.org
    Cc: kvmarm@lists.cs.columbia.edu
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.900484868@linutronix.de
    Signed-off-by: Ingo Molnar

    Anna-Maria Gleixner
     
  • Install the callbacks via the state machine. They are installed at runtime so
    smpcfd_prepare_cpu() needs to be invoked by the boot-CPU.

    Signed-off-by: Richard Weinberger
    [ Added the dropped CPU dying case back in. ]
    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Davidlohr Bueso
    Cc: Linus Torvalds
    Cc: Mel Gorman
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Rasmus Villemoes
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.818376366@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Weinberger
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Len Brown
    Cc: Linus Torvalds
    Cc: Mathias Krause
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.736898691@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs. A lot of code is removed because
    the for-loop is used and create_hash_tables() is removed since its purpose
    is covered by the startup / teardown hooks.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Andrew Morton
    Cc: Arnd Bergmann
    Cc: Linus Torvalds
    Cc: Mel Gorman
    Cc: Michal Hocko
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: Vlastimil Babka
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.649867675@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • When tearing down, call timers_dead_cpu() before notify_dead().
    There is a hidden dependency between:

    - timers
    - block multiqueue
    - rcutree

    If timers_dead_cpu() comes later than blk_mq_queue_reinit_notify()
    that latter function causes a RCU stall.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: John Stultz
    Cc: Linus Torvalds
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Rasmus Villemoes
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.566790058@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Split out the clockevents callbacks instead of piggybacking them on
    hrtimers.

    This gets rid of a POST_DEAD user. See commit:

    54e88fad223c ("sched: Make sure timers have migrated before killing the migration_thread")

    We just move the callback state to the proper place in the state machine.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Linus Torvalds
    Cc: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Rasmus Villemoes
    Cc: Rusty Russell
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.485419196@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Gang Wei
    Cc: Linus Torvalds
    Cc: Ning Sun
    Cc: Peter Zijlstra
    Cc: Richard L Maliszewski
    Cc: Shane Wang
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Cc: tboot-devel@lists.sourceforge.net
    Link: http://lkml.kernel.org/r/20160713153337.400227322@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Ard Biesheuvel
    Cc: Catalin Marinas
    Cc: James Morse
    Cc: Jisheng Zhang
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Shengjiu Wang
    Cc: Thomas Gleixner
    Cc: Will Deacon
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.311115906@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • This driver has an asymmetry of ONLINE code without any corresponding tear
    down code. Otherwise, this is a straightforward conversion.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Acked-by: Mathieu Poirier
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.228918408@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • This driver has an asymmetry of ONLINE code without any corresponding tear
    down code. Otherwise, this is a straightforward conversion.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Acked-by: Mathieu Poirier
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.147128995@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Acked-by: Ralf Baechle
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Robert Richter
    Cc: Thomas Gleixner
    Cc: linux-mips@linux-mips.org
    Cc: oprofile-list@lists.sf.net
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153337.054827168@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    The get_cpu() in xen_starting_cpu() boils down to preempt_disable() since
    we already know the CPU we run on. Disabling preemption shouldn't be required
    here from what I see since it we don't switch CPUs while invoking the function.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Reviewed-by: Stefano Stabellini
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Russell King
    Cc: Stefano Stabellini
    Cc: Thomas Gleixner
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Cc: xen-devel@lists.xenproject.org
    Link: http://lkml.kernel.org/r/20160713153336.971559670@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine. The callbacks won't be invoked on
    already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: Eric Anholt
    Cc: Felipe Balbi
    Cc: Heiko Stuebner
    Cc: Linus Torvalds
    Cc: Marc Gonzalez
    Cc: Peter Zijlstra
    Cc: Russell King
    Cc: Thomas Gleixner
    Cc: Vineet Gupta
    Cc: Viresh Kumar
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.881124821@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Brad Mouring
    Cc: Linus Torvalds
    Cc: Linus Walleij
    Cc: Marek Szyprowski
    Cc: Peter Zijlstra
    Cc: Rob Herring
    Cc: Russell King
    Cc: Thomas Gleixner
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.801270887@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Alexander Shishkin
    Cc: Arnaldo Carvalho de Melo
    Cc: James Hogan
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-metag@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.717395164@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Christoffer Dall
    Cc: Gleb Natapov
    Cc: Linus Torvalds
    Cc: Marc Zyngier
    Cc: Paolo Bonzini
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: Thomas Gleixner
    Cc: kvm@vger.kernel.org
    Cc: kvmarm@lists.cs.columbia.edu
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.634155707@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.
    The VGIC callback is run after KVM's main callback since it reflects the
    makefile order.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Christoffer Dall
    Cc: Gleb Natapov
    Cc: Linus Torvalds
    Cc: Marc Zyngier
    Cc: Paolo Bonzini
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: Thomas Gleixner
    Cc: kvm@vger.kernel.org
    Cc: kvmarm@lists.cs.columbia.edu
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.546953286@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • This is a straightforward conversion. We place this callback last
    in the list so that the LED illuminates only after a successful
    bring up sequence.

    ( NOTE: The patch adds a FIXME question about the callback used,
    this question should probably be revisited later on.)

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Acked-by: Jacek Anaszewski
    Cc: Linus Torvalds
    Cc: Linus Walleij
    Cc: Paul Gortmaker
    Cc: Peter Zijlstra
    Cc: Richard Purdie
    Cc: Thomas Gleixner
    Cc: linux-leds@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.465496902@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.380737946@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.295486558@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: James Hogan
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-metag@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.215137642@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.130385842@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Daniel Lezcano
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153336.048259040@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • As part of the hotplug cleanup, the CPU_STARTING/DYING actions are going
    away soon. This driver needlessly uses those two macro, and so this patch
    replaces that code with something more sensible.

    Commit:

    8da8373447d6a57a5a9f55233d35beb15d92d0d2 ("ACPI / processor: Fix STARTING/DYING action in acpi_cpu_soft_notify()")

    added checks for those two actions, because the notification callback can
    sleep, causing a hung CPU. This patch instead checks for the ONLINE/DEAD
    actions, which are the ones that are handled by the driver in the first
    place.

    Signed-off-by: Richard Cochran
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Len Brown
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Rafael J. Wysocki
    Cc: Thomas Gleixner
    Cc: linux-acpi@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.964962885@linutronix.de
    Signed-off-by: Ingo Molnar

    Richard Cochran
     
  • Install the callbacks via the state machine. The core won't invoke the
    callbacks on already online CPUs.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Acked-by: Paolo Bonzini
    Cc: Gleb Natapov
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: kvm@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.886159080@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Straight forward conversion w/o bells and whistles.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Linus Torvalds
    Cc: Mark Rutland
    Cc: Peter Zijlstra
    Cc: Will Deacon
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.794097159@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Straight forward conversion plus commentary why code which is executed
    in hotplug callbacks needs to be invoked before installing them.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Russell King
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.713612993@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Install the callbacks via the state machine. There is no setup just one
    teardown callback. Remove the silly comment about the workqueue up dependency.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.625342983@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    We assumed that the priority ordering was ment to invoke the online
    callback as the last step. In the original code this also invoked the
    down prepare callback as the last step. With the symmetric state
    machine the down prepare callback is now the first step.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Acked-by: Paolo Bonzini
    Cc: Gleb Natapov
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: Thomas Gleixner
    Cc: kvm@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.542880859@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Since the following commit:

    1cf4f629d9d2 ("cpu/hotplug: Move online calls to hotplugged cpu")

    ... the CPU_ONLINE and CPU_DOWN_PREPARE notifiers are always run on the hot
    plugged CPU, and as of commit:

    3b9d6da67e11 ("cpu/hotplug: Fix rollback during error-out in __cpu_disable()")

    the CPU_DOWN_FAILED notifier also runs on the hot plugged CPU. This patch
    converts the SMP functional calls into direct calls.

    smp_function_call_single() executes the function with interrupts
    disabled. This calling convention is not preserved because there
    is no reason to do so.

    Signed-off-by: Anna-Maria Gleixner
    Acked-by: Paolo Bonzini
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Radim Krcmar
    Cc: Thomas Gleixner
    Cc: kvm@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.452527104@linutronix.de
    Signed-off-by: Ingo Molnar

    Anna-Maria Gleixner
     

14 Jul, 2016

9 commits

  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Denys Vlasenko
    Cc: Jan Beulich
    Cc: Jiang Liu
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: Viresh Kumar
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.279718463@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Get rid of the prio ordering of the separate notifiers and use a proper state
    callback pair.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Acked-by: Tejun Heo
    Cc: Andrew Morton
    Cc: Lai Jiangshan
    Cc: Linus Torvalds
    Cc: Nicolas Iooss
    Cc: Oleg Nesterov
    Cc: Paul E. McKenney
    Cc: Peter Zijlstra
    Cc: Rasmus Villemoes
    Cc: Rusty Russell
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.197083890@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • Install the callbacks via the state machine.

    Signed-off-by: Anna-Maria Gleixner
    Cc: Borislav Petkov
    Cc: Huang Rui
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.027571056@linutronix.de
    Signed-off-by: Ingo Molnar

    Anna-Maria Gleixner
     
  • All users converted to state machine callbacks.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Alexander Shishkin
    Cc: Arnaldo Carvalho de Melo
    Cc: Linus Torvalds
    Cc: Nicolas Iooss
    Cc: Paul E. McKenney
    Cc: Peter Zijlstra
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153335.115333381@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner
     
  • To simplify the hotplug mechanism move the starting callback to
    online. There is no functional requirement that the cpumask bit has to
    be set in the starting callback.

    Signed-off-by: Anna-Maria Gleixner
    Cc: Borislav Petkov
    Cc: Huang Rui
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153334.944849172@linutronix.de
    Signed-off-by: Ingo Molnar

    Anna-Maria Gleixner
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Alexander Shishkin
    Cc: Arnaldo Carvalho de Melo
    Cc: Chris Zankel
    Cc: Linus Torvalds
    Cc: Max Filippov
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-xtensa@linux-xtensa.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153334.852575891@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Arnd Bergmann
    Cc: Dan Carpenter
    Cc: Linus Torvalds
    Cc: Pawel Moll
    Cc: Peter Zijlstra
    Cc: Suzuki K Poulose
    Cc: Thomas Gleixner
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153334.768498577@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Anna-Maria Gleixner
    Cc: Andrzej Hajda
    Cc: Linus Torvalds
    Cc: Mark Rutland
    Cc: Olof Johansson
    Cc: Pawel Moll
    Cc: Peter Zijlstra
    Cc: Punit Agrawal
    Cc: Suzuki K Poulose
    Cc: Suzuki K. Poulose
    Cc: Thomas Gleixner
    Cc: Will Deacon
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153334.679142601@linutronix.de
    Signed-off-by: Ingo Molnar

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine and let the core invoke
    the callbacks on the already online CPUs.

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Anna-Maria Gleixner
    Reviewed-by: Sebastian Andrzej Siewior
    Cc: Alexander Shishkin
    Cc: Arnaldo Carvalho de Melo
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Rich Felker
    Cc: Yoshinori Sato
    Cc: linux-sh@vger.kernel.org
    Cc: rt@linutronix.de
    Link: http://lkml.kernel.org/r/20160713153334.597790464@linutronix.de
    Signed-off-by: Ingo Molnar

    Thomas Gleixner