Revision c36e33e2f477052b0f4b1da45af403f98d3f7eb4 authored by Linus Torvalds on 14 November 2021, 18:38:27 UTC, committed by Linus Torvalds on 14 November 2021, 18:38:27 UTC
Pull irq fixes from Thomas Gleixner:
 "A set of fixes for the interrupt subsystem

  Core code:

   - A regression fix for the Open Firmware interrupt mapping code where
     a interrupt controller property in a node caused a map property in
     the same node to be ignored.

  Interrupt chip drivers:

   - Workaround a limitation in SiFive PLIC interrupt chip which
     silently ignores an EOI when the interrupt line is masked.

   - Provide the missing mask/unmask implementation for the CSKY MP
     interrupt controller.

  PCI/MSI:

   - Prevent a use after free when PCI/MSI interrupts are released by
     destroying the sysfs entries before freeing the memory which is
     accessed in the sysfs show() function.

   - Implement a mask quirk for the Nvidia ION AHCI chip which does not
     advertise masking capability despite implementing it. Even worse
     the chip comes out of reset with all MSI entries masked, which due
     to the missing masking capability never get unmasked.

   - Move the check which prevents accessing the MSI[X] masking for XEN
     back into the low level accessors. The recent consolidation missed
     that these accessors can be invoked from places which do not have
     that check which broke XEN. Move them back to he original place
     instead of sprinkling tons of these checks all over the code"

* tag 'irq-urgent-2021-11-14' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  of/irq: Don't ignore interrupt-controller when interrupt-map failed
  irqchip/sifive-plic: Fixup EOI failed when masked
  irqchip/csky-mpintc: Fixup mask/unmask implementation
  PCI/MSI: Destroy sysfs before freeing entries
  PCI: Add MSI masking quirk for Nvidia ION AHCI
  PCI/MSI: Deal with devices lying about their MSI mask capability
  PCI/MSI: Move non-mask check back into low level accessors
2 parent s 218cc8b + 979292a
History
File Mode Size
.gitignore -rw-r--r-- 59 bytes
Makefile -rw-r--r-- 9.4 KB
test-all.c -rw-r--r-- 4.6 KB
test-backtrace.c -rw-r--r-- 244 bytes
test-bionic.c -rw-r--r-- 112 bytes
test-bpf.c -rw-r--r-- 899 bytes
test-clang-bpf-co-re.c -rw-r--r-- 190 bytes
test-clang.cpp -rw-r--r-- 772 bytes
test-compile.c -rw-r--r-- 112 bytes
test-cplus-demangle.c -rw-r--r-- 298 bytes
test-cxx.cpp -rw-r--r-- 275 bytes
test-disassembler-four-args.c -rw-r--r-- 247 bytes
test-dwarf.c -rw-r--r-- 197 bytes
test-dwarf_getlocations.c -rw-r--r-- 304 bytes
test-eventfd.c -rw-r--r-- 195 bytes
test-file-handle.c -rw-r--r-- 282 bytes
test-fortify-source.c -rw-r--r-- 95 bytes
test-get_cpuid.c -rw-r--r-- 176 bytes
test-get_current_dir_name.c -rw-r--r-- 177 bytes
test-gettid.c -rw-r--r-- 213 bytes
test-glibc.c -rw-r--r-- 361 bytes
test-gtk2-infobar.c -rw-r--r-- 257 bytes
test-gtk2.c -rw-r--r-- 243 bytes
test-hello.c -rw-r--r-- 95 bytes
test-jvmti-cmlr.c -rw-r--r-- 286 bytes
test-jvmti.c -rw-r--r-- 320 bytes
test-libaio.c -rw-r--r-- 302 bytes
test-libaudit.c -rw-r--r-- 202 bytes
test-libbabeltrace.c -rw-r--r-- 212 bytes
test-libbfd-buildid.c -rw-r--r-- 183 bytes
test-libbfd.c -rw-r--r-- 269 bytes
test-libbpf.c -rw-r--r-- 123 bytes
test-libcap.c -rw-r--r-- 322 bytes
test-libcrypto.c -rw-r--r-- 361 bytes
test-libdebuginfod.c -rw-r--r-- 150 bytes
test-libdw-dwarf-unwind.c -rw-r--r-- 309 bytes
test-libelf-gelf_getnote.c -rw-r--r-- 143 bytes
test-libelf-getphdrnum.c -rw-r--r-- 123 bytes
test-libelf-getshdrstrndx.c -rw-r--r-- 126 bytes
test-libelf.c -rw-r--r-- 137 bytes
test-libnuma.c -rw-r--r-- 125 bytes
test-libopencsd.c -rw-r--r-- 374 bytes
test-libperl.c -rw-r--r-- 121 bytes
test-libpfm4.c -rw-r--r-- 137 bytes
test-libpython-version.c -rw-r--r-- 136 bytes
test-libpython.c -rw-r--r-- 125 bytes
test-libslang-include-subdir.c -rw-r--r-- 107 bytes
test-libslang.c -rw-r--r-- 101 bytes
test-libtraceevent.c -rw-r--r-- 219 bytes
test-libtracefs.c -rw-r--r-- 197 bytes
test-libunwind-aarch64.c -rw-r--r-- 650 bytes
test-libunwind-arm.c -rw-r--r-- 647 bytes
test-libunwind-debug-frame-aarch64.c -rw-r--r-- 423 bytes
test-libunwind-debug-frame-arm.c -rw-r--r-- 419 bytes
test-libunwind-debug-frame.c -rw-r--r-- 415 bytes
test-libunwind-x86.c -rw-r--r-- 647 bytes
test-libunwind-x86_64.c -rw-r--r-- 650 bytes
test-libunwind.c -rw-r--r-- 747 bytes
test-libzstd.c -rw-r--r-- 172 bytes
test-llvm-version.cpp -rw-r--r-- 341 bytes
test-llvm.cpp -rw-r--r-- 365 bytes
test-lzma.c -rw-r--r-- 211 bytes
test-numa_num_possible_cpus.c -rw-r--r-- 108 bytes
test-pthread-attr-setaffinity-np.c -rw-r--r-- 307 bytes
test-pthread-barrier.c -rw-r--r-- 244 bytes
test-reallocarray.c -rw-r--r-- 152 bytes
test-sched_getcpu.c -rw-r--r-- 166 bytes
test-sdt.c -rw-r--r-- 119 bytes
test-setns.c -rw-r--r-- 135 bytes
test-stackprotector-all.c -rw-r--r-- 95 bytes
test-timerfd.c -rw-r--r-- 335 bytes
test-zlib.c -rw-r--r-- 119 bytes

back to top