• Linus Torvalds's avatar
    Merge tag 'irq-core-2021-10-31' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5a47ebe9
    Linus Torvalds authored
    Pull irq updates from Thomas Gleixner:
     "Updates for the interrupt subsystem:
    
      Core changes:
    
       - Prevent a potential deadlock when initial priority is assigned to a
         newly created interrupt thread. A recent change to plug a race
         between cpuset and __sched_setscheduler() introduced a new lock
         dependency which is now triggered. Break the lock dependency chain
         by moving the priority assignment to the thread function.
    
       - A couple of small updates to make the irq core RT safe.
    
       - Confine the irq_cpu_online/offline() API to the only left unfixable
         user Cavium Octeon so that it does not grow new usage.
    
       - A small documentation update
    
      Driver changes:
    
       - A large cross architecture rework to move irq_enter/exit() into the
         architecture code to make addressing the NOHZ_FULL/RCU issues
         simpler.
    
       - The obligatory new irq chip driver for Microchip EIC
    
       - Modularize a few irq chip drivers
    
       - Expand usage of devm_*() helpers throughout the driver code
    
       - The usual small fixes and improvements all over the place"
    
    * tag 'irq-core-2021-10-31' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (53 commits)
      h8300: Fix linux/irqchip.h include mess
      dt-bindings: irqchip: renesas-irqc: Document r8a774e1 bindings
      MIPS: irq: Avoid an unused-variable error
      genirq: Hide irq_cpu_{on,off}line() behind a deprecated option
      irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()
      MIPS: loongson64: Drop call to irq_cpu_offline()
      irq: remove handle_domain_{irq,nmi}()
      irq: remove CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRY
      irq: riscv: perform irqentry in entry code
      irq: openrisc: perform irqentry in entry code
      irq: csky: perform irqentry in entry code
      irq: arm64: perform irqentry in entry code
      irq: arm: perform irqentry in entry code
      irq: add a (temporary) CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRY
      irq: nds32: avoid CONFIG_HANDLE_DOMAIN_IRQ
      irq: arc: avoid CONFIG_HANDLE_DOMAIN_IRQ
      irq: add generic_handle_arch_irq()
      irq: unexport handle_irq_desc()
      irq: simplify handle_domain_{irq,nmi}()
      irq: mips: simplify do_domain_IRQ()
      ...
    5a47ebe9
Kconfig 85.4 KB