Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7133a9a authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq core changes from Ingo Molnar:
 "The biggest changes are the IRQ-work and printk changes from Frederic
  Weisbecker, which prepare the code for 'full dynticks' (the ability to
  stop or slow down the periodic tick arbitrarily, not just in idle time
  as today):

   - Don't stop tick with irq works pending.  This fix is generally
     useful and concerns archs that can't raise self IPIs.

   - Flush irq works before CPU offlining.

   - Introduce "lazy" irq works that can wait for the next tick to be
     executed, unless it's stopped.

   - Implement klogd wake up using irq work.  This removes the ad-hoc
     printk_tick()/printk_needs_cpu() hooks and make it working even in
     dynticks mode.

   - Cleanups and fixes."

* 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  genirq: Export enable/disable_percpu_irq()
  arch Kconfig: Remove references to IRQ_PER_CPU
  irq_work: Remove return value from the irq_work_queue() function
  genirq: Avoid deadlock in spurious handling
  printk: Wake up klogd using irq_work
  irq_work: Make self-IPIs optable
  irq_work: Warn if there's still work on cpu_down
  irq_work: Flush work on CPU_DYING
  irq_work: Don't stop the tick with pending works
  nohz: Add API to check tick state
  irq_work: Remove CONFIG_HAVE_IRQ_WORK
  irq_work: Fix racy check on work pending flag
  irq_work: Fix racy IRQ_WORK_BUSY flag setting
parents e84cf5d0 36a5df85
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -5,7 +5,6 @@ config ALPHA
	select HAVE_IDE
	select HAVE_OPROFILE
	select HAVE_SYSCALL_WRAPPERS
	select HAVE_IRQ_WORK
	select HAVE_PCSPKR_PLATFORM
	select HAVE_PERF_EVENTS
	select HAVE_DMA_ATTRS
+0 −1
Original line number Diff line number Diff line
@@ -36,7 +36,6 @@ config ARM
	select HAVE_GENERIC_HARDIRQS
	select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
	select HAVE_IDE if PCI || ISA || PCMCIA
	select HAVE_IRQ_WORK
	select HAVE_KERNEL_GZIP
	select HAVE_KERNEL_LZMA
	select HAVE_KERNEL_LZO
+0 −1
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@ config ARM64
	select HAVE_GENERIC_DMA_COHERENT
	select HAVE_GENERIC_HARDIRQS
	select HAVE_HW_BREAKPOINT if PERF_EVENTS
	select HAVE_IRQ_WORK
	select HAVE_MEMBLOCK
	select HAVE_PERF_EVENTS
	select IRQ_DOMAIN
+0 −2
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@ config BLACKFIN
	select HAVE_FUNCTION_TRACER
	select HAVE_FUNCTION_TRACE_MCOUNT_TEST
	select HAVE_IDE
	select HAVE_IRQ_WORK
	select HAVE_KERNEL_GZIP if RAMKERNEL
	select HAVE_KERNEL_BZIP2 if RAMKERNEL
	select HAVE_KERNEL_LZMA if RAMKERNEL
@@ -38,7 +37,6 @@ config BLACKFIN
	select HAVE_GENERIC_HARDIRQS
	select GENERIC_ATOMIC64
	select GENERIC_IRQ_PROBE
	select IRQ_PER_CPU if SMP
	select USE_GENERIC_SMP_HELPERS if SMP
	select HAVE_NMI_WATCHDOG if NMI_WATCHDOG
	select GENERIC_SMP_IDLE_THREAD
+0 −1
Original line number Diff line number Diff line
@@ -3,7 +3,6 @@ config FRV
	default y
	select HAVE_IDE
	select HAVE_ARCH_TRACEHOOK
	select HAVE_IRQ_WORK
	select HAVE_PERF_EVENTS
	select HAVE_UID16
	select HAVE_GENERIC_HARDIRQS
Loading