• Linus Torvalds's avatar
    Merge tag 'irq-core-2023-02-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9e58df97
    Linus Torvalds authored
    Pull irq updates from Thomas Gleixner:
     "Updates for the interrupt subsystem:
    
      Core:
    
       - Move the interrupt affinity spreading mechanism into lib/group_cpus
         so it can be used for similar spreading requirements, e.g. in the
         block multi-queue code
    
         This also contains a first usecase in the block multi-queue code
         which Jens asked to take along with the librarization
    
       - Improve irqdomain locking to close a number race conditions which
         can be observed with massive parallel device driver probing
    
       - Enforce and document the semantics of disable_irq() which cannot be
         invoked safely from non-sleepable context
    
       - Move the IPI multiplexing code from the Apple AIC driver into the
         core, so it can be reused by RISCV
    
      Drivers:
    
       - Plug OF node refcounting leaks in various drivers
    
       - Correctly mark level triggered interrupts in the Broadcom L2
         drivers
    
       - The usual small fixes and improvements
    
       - No new drivers for the record!"
    
    * tag 'irq-core-2023-02-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (42 commits)
      irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts
      irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts
      irqdomain: Switch to per-domain locking
      irqchip/mvebu-odmi: Use irq_domain_create_hierarchy()
      irqchip/loongson-pch-msi: Use irq_domain_create_hierarchy()
      irqchip/gic-v3-mbi: Use irq_domain_create_hierarchy()
      irqchip/gic-v3-its: Use irq_domain_create_hierarchy()
      irqchip/gic-v2m: Use irq_domain_create_hierarchy()
      irqchip/alpine-msi: Use irq_domain_add_hierarchy()
      x86/uv: Use irq_domain_create_hierarchy()
      x86/ioapic: Use irq_domain_create_hierarchy()
      irqdomain: Clean up irq_domain_push/pop_irq()
      irqdomain: Drop leftover brackets
      irqdomain: Drop dead domain-name assignment
      irqdomain: Drop revmap mutex
      irqdomain: Fix domain registration race
      irqdomain: Fix mapping-creation race
      irqdomain: Refactor __irq_domain_alloc_irqs()
      irqdomain: Look for existing mapping only once
      irqdomain: Drop bogus fwspec-mapping error handling
      ...
    9e58df97
Kconfig 15.4 KB