Commit 3381d7b2b3dd for kernel

commit 3381d7b2b3dd012d366b9ba9339f98d54bea69fd
Merge: dc855b77719f cb9b6f9d2be6
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 10 16:30:29 2026 -0800

    Merge tag 'irq-msi-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

    Pull MSI updates from Thomas Gleixner:
     "Updates for the [PCI] MSI subsystem:

       - Add interrupt redirection infrastructure

         Some PCI controllers use a single demultiplexing interrupt for the
         MSI interrupts of subordinate devices.

         This prevents setting the interrupt affinity of device interrupts,
         which causes device interrupts to be delivered to a single CPU.
         That obviously is counterproductive for multi-queue devices and
         interrupt balancing.

         To work around this limitation the new infrastructure installs a
         dummy irq_set_affinity() callback which captures the affinity mask
         and picks a redirection target CPU out of the mask.

         When the PCI controller demultiplexes the interrupts it invokes a
         new handling function in the core, which either runs the interrupt
         handler in the context of the target CPU or delegates it to
         irq_work on the target CPU.

       - Utilize the interrupt redirection mechanism in the PCI DWC host
         controller driver.

         This allows affinity control for the subordinate device MSI
         interrupts instead of being randomly executed on the CPU which runs
         the demultiplex handler.

       - Replace the binary 64-bit MSI flag with a DMA mask

         Some PCI devices have PCI_MSI_FLAGS_64BIT in the MSI capability,
         but implement less than 64 address bits. This breaks on platforms
         where such a device is assigned an MSI address higher than what's
         supported.

         With the binary 64-bit flag there is no other choice than disabling
         64-bit MSI support which leaves the device disfunctional.

         By using a DMA mask the address limit of a device can be described
         correctly which provides support for the above scenario.

       - Make use of the DMA mask based address limit in the hda/intel and
         radeon drivers to enable them on affected platforms

       - The usual small cleanups and improvements"

    * tag 'irq-msi-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      ALSA: hda/intel: Make MSI address limit based on the device DMA limit
      drm/radeon: Make MSI address limit based on the device DMA limit
      PCI/MSI: Check the device specific address mask in msi_verify_entries()
      PCI/MSI: Convert the boolean no_64bit_msi flag to a DMA address mask
      genirq/redirect: Prevent writing MSI message on affinity change
      PCI/MSI: Unmap MSI-X region on error
      genirq: Update effective affinity for redirected interrupts
      PCI: dwc: Enable MSI affinity support
      PCI: dwc: Code cleanup
      genirq: Add interrupt redirection infrastructure
      genirq/msi: Correct kernel-doc in <linux/msi.h>