Richard Cochran
eb0a9d8c67
clocksource/atlas7: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Barry Song <baohua@kernel.org >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153338.310333816@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:45 +02:00
Richard Cochran
2c48fef74c
clocksource/armada-370-xp: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153338.229913786@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:45 +02:00
Richard Cochran
d11b3a60fc
clocksource/exynos_mct: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com >
Cc: Kukjin Kim <kgene@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: linux-samsung-soc@vger.kernel.org
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153338.147940411@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:44 +02:00
Richard Cochran
b8a12296ac
clocksource/arm_global_timer: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Maxime Coquelin <maxime.coquelin@st.com >
Cc: Patrice Chotard <patrice.chotard@st.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Srinivas Kandagatla <srinivas.kandagatla@gmail.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: kernel@stlinux.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153338.062741642@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:44 +02:00
Thomas Gleixner
4df8374254
rcu: Convert rcutree to hotplug state machine
...
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 <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.982013161@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:44 +02:00
Anna-Maria Gleixner
15d7e3d349
KVM/arm/arm64/vgic-new: Convert to hotplug state machine
...
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 <anna-maria@linutronix.de >
Cc: Andre Przywara <andre.przywara@arm.com >
Cc: Christoffer Dall <christoffer.dall@linaro.org >
Cc: Eric Auger <eric.auger@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:41:43 +02:00
Richard Weinberger
31487f8328
smp/cfd: Convert core to hotplug state machine
...
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 <richard@nod.at >
[ Added the dropped CPU dying case back in. ]
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Davidlohr Bueso <dave@stgolabs>
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@techsingularity.net >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.818376366@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:43 +02:00
Sebastian Andrzej Siewior
6b2c28471d
x86/x2apic: Convert to CPU hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Len Brown <len.brown@intel.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mathias Krause <minipli@googlemail.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.736898691@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:42 +02:00
Sebastian Andrzej Siewior
e722d8daaf
profile: Convert to hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Andrew Morton <akpm@linux-foundation.org >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@techsingularity.net >
Cc: Michal Hocko <mhocko@suse.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Vlastimil Babka <vbabka@suse.cz >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.649867675@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:42 +02:00
Richard Cochran
24f73b9971
timers/core: Convert to hotplug state machine
...
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 <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: John Stultz <john.stultz@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.566790058@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:42 +02:00
Thomas Gleixner
27590dc17b
hrtimer: Convert to hotplug state machine
...
Split out the clockevents callbacks instead of piggybacking them on
hrtimers.
This gets rid of a POST_DEAD user. See commit:
54e88fad22
("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 <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk >
Cc: Rusty Russell <rusty@rustcorp.com.au >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153337.485419196@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:41:37 +02:00
Richard Cochran
ae6a8a2ed7
x86/tboot: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Gang Wei <gang.wei@intel.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Ning Sun <ning.sun@intel.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Richard L Maliszewski <richard.l.maliszewski@intel.com >
Cc: Shane Wang <shane.wang@intel.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:30 +02:00
Sebastian Andrzej Siewior
27c01a8c73
arm64/armv8 deprecated: Convert to hotplug state machine
...
Install the callbacks via the state machine.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Cc: Catalin Marinas <catalin.marinas@arm.com >
Cc: James Morse <james.morse@arm.com >
Cc: Jisheng Zhang <jszhang@marvell.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Shengjiu Wang <shengjiu.wang@freescale.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Will Deacon <will.deacon@arm.com >
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 <mingo@kernel.org >
2016-07-15 10:40:30 +02:00
Sebastian Andrzej Siewior
58eb457be0
hwtracing/coresight-etm4x: Convert to hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Acked-by: Mathieu Poirier <mathieu.poirier@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:30 +02:00
Richard Cochran
2b5283d12f
hwtracing/coresight-etm3x: Convert to hotplug state machine
...
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 <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Acked-by: Mathieu Poirier <mathieu.poirier@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:29 +02:00
Richard Cochran
65264e3bc3
MIPS/Loongson-3: Convert oprofile to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Acked-by: Ralf Baechle <ralf@linux-mips.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Robert Richter <rric@kernel.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:29 +02:00
Richard Cochran
4761adb6f4
arm/xen: Convert to hotplug state machine
...
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 <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Russell King <linux@armlinux.org.uk >
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:28 +02:00
Richard Cochran
26b8768868
arm/twd: Convert to hotplug state machine
...
Install the callbacks via the state machine. The callbacks won't be invoked on
already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Eric Anholt <eric@anholt.net >
Cc: Felipe Balbi <balbi@ti.com >
Cc: Heiko Stuebner <heiko@sntech.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Marc Gonzalez <marc_gonzalez@sigmadesigns.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Vineet Gupta <vgupta@synopsys.com >
Cc: Viresh Kumar <viresh.kumar@linaro.org >
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 <mingo@kernel.org >
2016-07-15 10:40:28 +02:00
Richard Cochran
9eeb226477
arm/l2c: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Brad Mouring <brad.mouring@ni.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Linus Walleij <linus.walleij@linaro.org >
Cc: Marek Szyprowski <m.szyprowski@samsung.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Rob Herring <robh@kernel.org >
Cc: Russell King <linux@arm.linux.org.uk >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:28 +02:00
Richard Cochran
04d045a681
metag/perf: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com >
Cc: Arnaldo Carvalho de Melo <acme@kernel.org >
Cc: James Hogan <james.hogan@imgtec.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:27 +02:00
Richard Cochran
b3c9950a5c
arm/kvm/arch_timer: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Christoffer Dall <christoffer.dall@linaro.org >
Cc: Gleb Natapov <gleb@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:27 +02:00
Richard Cochran
42ec50b5f2
arm/kvm/vgic: Convert to hotplug state machine
...
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 <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Christoffer Dall <christoffer.dall@linaro.org >
Cc: Gleb Natapov <gleb@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Marc Zyngier <marc.zyngier@arm.com >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:26 +02:00
Richard Cochran
911a359de9
leds/trigger/cpu: Convert to hotplug state machine
...
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 <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Acked-by: Jacek Anaszewski <j.anaszewski@samsung.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Linus Walleij <linus.walleij@linaro.org >
Cc: Paul Gortmaker <paul.gortmaker@windriver.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Richard Purdie <rpurdie@rpsys.net >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:26 +02:00
Richard Cochran
2dab90932f
clocksource/mips-gic: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153336.380737946@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:26 +02:00
Richard Cochran
b04041655d
clocksource/qcom-timer: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153336.295486558@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:25 +02:00
Richard Cochran
31e8e5db88
clocksource/metag: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: James Hogan <james.hogan@imgtec.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-15 10:40:25 +02:00
Richard Cochran
00c1d17aab
clocksource/dummy_timer: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153336.130385842@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:24 +02:00
Richard Cochran
7e86e8bd8d
clocksource/arm_arch_timer: Convert to hotplug state machine
...
Install the callbacks via the state machine and let the core invoke
the callbacks on the already online CPUs.
Signed-off-by: Richard Cochran <rcochran@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Daniel Lezcano <daniel.lezcano@linaro.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153336.048259040@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:24 +02:00
Thomas Gleixner
8c18b2d2d0
virt: Convert kvm hotplug to state machine
...
Install the callbacks via the state machine. The core won't invoke the
callbacks on already online CPUs.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Acked-by: Paolo Bonzini <pbonzini@redhat.com >
Cc: Gleb Natapov <gleb@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: kvm@vger.kernel.org
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.886159080@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:23 +02:00
Thomas Gleixner
7d88eb695a
arm/perf: Convert to hotplug state machine
...
Straight forward conversion w/o bells and whistles.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mark Rutland <mark.rutland@arm.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Will Deacon <will.deacon@arm.com >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.794097159@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:23 +02:00
Thomas Gleixner
e5b61bafe7
arm: Convert VFP hotplug notifiers to state machine
...
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 <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Russell King <linux@arm.linux.org.uk >
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 <mingo@kernel.org >
2016-07-15 10:40:22 +02:00
Sebastian Andrzej Siewior
148b9e2abe
x86/apb_timer: Convert to hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.625342983@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:22 +02:00
Sebastian Andrzej Siewior
251a5fd64b
x86/kvm/kvmclock: Convert to hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Acked-by: Paolo Bonzini <pbonzini@redhat.com >
Cc: Gleb Natapov <gleb@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: kvm@vger.kernel.org
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.542880859@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:40:21 +02:00
Ingo Molnar
38452af242
Merge branch 'x86/asm' into x86/mm, to resolve conflicts
...
Conflicts:
tools/testing/selftests/x86/Makefile
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-15 10:26:04 +02:00
Hugh Dickins
5a49973d71
mm: thp: refix false positive BUG in page_move_anon_rmap()
...
The VM_BUG_ON_PAGE in page_move_anon_rmap() is more trouble than it's
worth: the syzkaller fuzzer hit it again. It's still wrong for some THP
cases, because linear_page_index() was never intended to apply to
addresses before the start of a vma.
That's easily fixed with a signed long cast inside linear_page_index();
and Dmitry has tested such a patch, to verify the false positive. But
why extend linear_page_index() just for this case? when the avoidance in
page_move_anon_rmap() has already grown ugly, and there's no reason for
the check at all (nothing else there is using address or index).
Remove address arg from page_move_anon_rmap(), remove VM_BUG_ON_PAGE,
remove CONFIG_DEBUG_VM PageTransHuge adjustment.
And one more thing: should the compound_head(page) be done inside or
outside page_move_anon_rmap()? It's usually pushed down to the lowest
level nowadays (and mm/memory.c shows no other explicit use of it), so I
think it's better done in page_move_anon_rmap() than by caller.
Fixes: 0798d3c022
("mm: thp: avoid false positive VM_BUG_ON_PAGE in page_move_anon_rmap()")
Link: http://lkml.kernel.org/r/alpine.LSU.2.11.1607120444540.12528@eggly.anvils
Signed-off-by: Hugh Dickins <hughd@google.com >
Reported-by: Dmitry Vyukov <dvyukov@google.com >
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com >
Cc: Mika Westerberg <mika.westerberg@linux.intel.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Rik van Riel <riel@redhat.com >
Cc: <stable@vger.kernel.org > [4.5+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2016-07-15 14:54:27 +09:00
Naoya Horiguchi
33f4751e99
mm: thp: move pmd check inside ptl for freeze_page()
...
I found a race condition triggering VM_BUG_ON() in freeze_page(), when
running a testcase with 3 processes:
- process 1: keep writing thp,
- process 2: keep clearing soft-dirty bits from virtual address of process 1
- process 3: call migratepages for process 1,
The kernel message is like this:
kernel BUG at /src/linux-dev/mm/huge_memory.c:3096!
invalid opcode: 0000 [#1 ] SMP
Modules linked in: cfg80211 rfkill crc32c_intel ppdev serio_raw pcspkr virtio_balloon virtio_console parport_pc parport pvpanic acpi_cpufreq tpm_tis tpm i2c_piix4 virtio_blk virtio_net ata_generic pata_acpi floppy virtio_pci virtio_ring virtio
CPU: 0 PID: 28863 Comm: migratepages Not tainted 4.6.0-v4.6-160602-0827-+ #2
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
task: ffff880037320000 ti: ffff88007cdd0000 task.ti: ffff88007cdd0000
RIP: 0010:[<ffffffff811f8e06>] [<ffffffff811f8e06>] split_huge_page_to_list+0x496/0x590
RSP: 0018:ffff88007cdd3b70 EFLAGS: 00010202
RAX: 0000000000000001 RBX: ffff88007c7b88c0 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000700000200 RDI: ffffea0003188000
RBP: ffff88007cdd3bb8 R08: 0000000000000001 R09: 00003ffffffff000
R10: ffff880000000000 R11: ffffc000001fffff R12: ffffea0003188000
R13: ffffea0003188000 R14: 0000000000000000 R15: 0400000000000080
FS: 00007f8ec241d740(0000) GS:ffff88007dc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f8ec1f3ed20 CR3: 000000003707b000 CR4: 00000000000006f0
Call Trace:
? list_del+0xd/0x30
queue_pages_pte_range+0x4d1/0x590
__walk_page_range+0x204/0x4e0
walk_page_range+0x71/0xf0
queue_pages_range+0x75/0x90
? queue_pages_hugetlb+0x190/0x190
? new_node_page+0xc0/0xc0
? change_prot_numa+0x40/0x40
migrate_to_node+0x71/0xd0
do_migrate_pages+0x1c3/0x210
SyS_migrate_pages+0x261/0x290
entry_SYSCALL_64_fastpath+0x1a/0xa4
Code: e8 b0 87 fb ff 0f 0b 48 c7 c6 30 32 9f 81 e8 a2 87 fb ff 0f 0b 48 c7 c6 b8 46 9f 81 e8 94 87 fb ff 0f 0b 85 c0 0f 84 3e fd ff ff <0f> 0b 85 c0 0f 85 a6 00 00 00 48 8b 75 c0 4c 89 f7 41 be f0 ff
RIP split_huge_page_to_list+0x496/0x590
I'm not sure of the full scenario of the reproduction, but my debug
showed that split_huge_pmd_address(freeze=true) returned without running
main code of pmd splitting because pmd_present(*pmd) in precheck somehow
returned 0. If this happens, the subsequent try_to_unmap() fails and
returns non-zero (because page_mapcount() still > 0), and finally
VM_BUG_ON() fires. This patch tries to fix it by prechecking pmd state
inside ptl.
Link: http://lkml.kernel.org/r/1466990929-7452-1-git-send-email-n-horiguchi@ah.jp.nec.com
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com >
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2016-07-15 14:54:27 +09:00
Amir Vadai
a351a1b03b
net/mlx5: Introduce bulk reading of flow counters
...
This commit utilize the ability of ConnectX-4 to bulk read flow counters.
Few bulk counter queries could be done instead of issuing thousands of
firmware commands per second to get statistics of all flows set to HW,
such as those programmed when we offload tc filters.
Counters are stored sorted by hardware id, and queried in blocks (id +
number of counters).
Due to hardware requirement, start of block and number of counters in a
block must be four aligned.
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com >
Signed-off-by: Amir Vadai <amir@vadai.me >
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2016-07-14 13:34:28 -07:00
Amir Vadai
29cc667907
net/mlx5: Store counters in rbtree instead of list
...
In order to use bulk counters, we need to have counters sorted by id.
Signed-off-by: Amir Vadai <amir@vadai.me >
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com >
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2016-07-14 13:34:28 -07:00
Christoph Hellwig
b1c04e80c6
libata: return boolean values from ata_is_*
...
This way we don't have to worry about the exact bit postition of the
test to leak out and any crazy propagation effects in the callers.
Suggested-by: Tejun Heo <tj@kernel.org >
Signed-off-by: Christoph Hellwig <hch@lst.de >
Signed-off-by: Tejun Heo <tj@kernel.org >
2016-07-14 10:44:51 -04:00
Jarkko Nikula
55d38d060e
i2c: core: Add function for finding the bus speed from ACPI
...
ACPI 5 specification doesn't have property for the I2C bus speed but
I2cSerialBus resource descriptors which define each controller-slave
connection define the maximum speed supported by that connection.
Thus finding the maximum safe speed for the bus is to walk all
I2cSerialBus resources that are associated to I2C controller and use
the speed of slowest connection.
Add function i2c_acpi_find_bus_speed() to the i2c-core that adapter
drivers can call prior registering itself to core.
This implies two-step walk through the I2cSerialBus resources: call to
i2c_acpi_find_bus_speed() does the first scan and finds the safe bus
speed that adapter drivers can set up. Adapter driver registration does
the second scan when i2c-core creates the I2C slaves by calling the
i2c_acpi_register_devices(). In that way the bus speed is set in case
slave device probe gets called during registration and does
communication.
Implement this by reusing the existing ACPI I2C walk routines in the
i2c-core. Extend them so that slowest connection speed is saved during
the walk and I2C slaves are registered only when calling through the
i2c_acpi_register_devices() with the i2c_adapter pointer.
Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com >
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com >
Signed-off-by: Wolfram Sang <wsa@the-dreams.de >
2016-07-14 22:25:10 +09:00
Arnd Bergmann
f1844aca29
Merge tag 'ux500-cleanup-bundle' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/drivers
...
Merge "Ux500 cleanups from Arnd" from Linus Walleij:
This is a set of cleanups for the Ux500 that reduce the number
of machine-local files and boardfile-type data for regulators
and ASoC.
* tag 'ux500-cleanup-bundle' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
ARM: ux500: consolidate base platform files
ARM: ux500: move soc_id driver to drivers/soc
ARM: ux500: call ux500_setup_id later
ARM: ux500: consolidate soc_device code in id.c
ARM: ux500: remove cpu_is_u* helpers
ARM: ux500: use CLK_OF_DECLARE()
ARM: ux500: move l2x0 init to .init_irq
mfd: db8500 stop passing around platform data
ASoC: ab8500-codec: remove platform data based probe
ARM: ux500: move ab8500_regulator_plat_data into driver
ARM: ux500: remove unused regulator data
2016-07-14 15:23:19 +02:00
Frederic Weisbecker
8612f17ab9
sched/cputime: Reorganize vtime native irqtime accounting headers
...
The vtime irqtime accounting headers are very scattered and convoluted
right now. Reorganize them such that it is obvious that only
CONFIG_VIRT_CPU_ACCOUNTING_NATIVE does use it.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mike Galbraith <efault@gmx.de >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Rik van Riel <riel@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Wanpeng Li <wanpeng.li@hotmail.com >
Link: http://lkml.kernel.org/r/1468421405-20056-5-git-send-email-fweisbec@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 10:42:35 +02:00
Frederic Weisbecker
0cfdf9a198
sched/cputime: Clean up the old vtime gen irqtime accounting completely
...
Vtime generic irqtime accounting has been removed but there are a few
remnants to clean up:
* The vtime_accounting_cpu_enabled() check in irq entry was only used
by CONFIG_VIRT_CPU_ACCOUNTING_GEN. We can safely remove it.
* Without the vtime_accounting_cpu_enabled(), we no longer need to
have a vtime_common_account_irq_enter() indirect function.
* Move vtime_account_irq_enter() implementation under
CONFIG_VIRT_CPU_ACCOUNTING_NATIVE which is the last user.
* The vtime_account_user() call was only used on irq entry for
CONFIG_VIRT_CPU_ACCOUNTING_GEN. We can remove that too.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mike Galbraith <efault@gmx.de >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Rik van Riel <riel@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Wanpeng Li <wanpeng.li@hotmail.com >
Link: http://lkml.kernel.org/r/1468421405-20056-4-git-send-email-fweisbec@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 10:42:35 +02:00
Rik van Riel
b58c358405
sched/cputime: Replace VTIME_GEN irq time code with IRQ_TIME_ACCOUNTING code
...
The CONFIG_VIRT_CPU_ACCOUNTING_GEN irq time tracking code does not
appear to currently work right.
On CPUs without nohz_full=, only tick based irq time sampling is
done, which breaks down when dealing with a nohz_idle CPU.
On firewalls and similar systems, no ticks may happen on a CPU for a
while, and the irq time spent may never get accounted properly. This
can cause issues with capacity planning and power saving, which use
the CPU statistics as inputs in decision making.
Remove the VTIME_GEN vtime irq time code, and replace it with the
IRQ_TIME_ACCOUNTING code, when selected as a config option by the user.
Signed-off-by: Rik van Riel <riel@redhat.com >
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mike Galbraith <efault@gmx.de >
Cc: Paolo Bonzini <pbonzini@redhat.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Radim Krcmar <rkrcmar@redhat.com >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Wanpeng Li <wanpeng.li@hotmail.com >
Link: http://lkml.kernel.org/r/1468421405-20056-3-git-send-email-fweisbec@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 10:42:34 +02:00
Ingo Molnar
cefef3a762
Merge branch 'sched/core' into timers/nohz, to avoid conflicts in upcoming patches
...
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 10:37:48 +02:00
Sebastian Andrzej Siewior
48d7f6c715
x86/hpet: Convert to hotplug state machine
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: Borislav Petkov <bp@suse.de >
Cc: Denys Vlasenko <dvlasenk@redhat.com >
Cc: Jan Beulich <JBeulich@suse.com >
Cc: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Viresh Kumar <viresh.kumar@linaro.org >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.279718463@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 09:34:44 +02:00
Thomas Gleixner
7ee681b252
workqueue: Convert to state machine callbacks
...
Get rid of the prio ordering of the separate notifiers and use a proper state
callback pair.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Acked-by: Tejun Heo <tj@kernel.org >
Cc: Andrew Morton <akpm@linux-foundation.org >
Cc: Lai Jiangshan <jiangshanlai@gmail.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Nicolas Iooss <nicolas.iooss_linux@m4x.org >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk >
Cc: Rusty Russell <rusty@rustcorp.com.au >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.197083890@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 09:34:43 +02:00
Anna-Maria Gleixner
c6a84daa34
perf/x86/amd/power: Convert the hotplug notifier to state machine
...
Install the callbacks via the state machine.
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Borislav Petkov <bp@suse.de >
Cc: Huang Rui <ray.huang@amd.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.027571056@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 09:34:42 +02:00
Thomas Gleixner
89ab9cb169
perf/core: Remove perf CPU notifier code
...
All users converted to state machine callbacks.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com >
Cc: Arnaldo Carvalho de Melo <acme@kernel.org >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Nicolas Iooss <nicolas.iooss_linux@m4x.org >
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: rt@linutronix.de
Link: http://lkml.kernel.org/r/20160713153335.115333381@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-07-14 09:34:42 +02:00
Sebastian Andrzej Siewior
25a77b55e7
xtensa/perf: Convert the hotplug notifier to state machine callbacks
...
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 <bigeasy@linutronix.de >
Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de >
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com >
Cc: Arnaldo Carvalho de Melo <acme@kernel.org >
Cc: Chris Zankel <chris@zankel.net >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Max Filippov <jcmvbkbc@gmail.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
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 <mingo@kernel.org >
2016-07-14 09:34:41 +02:00