diff options
author | Greg Kroah-Hartman <gregkh@google.com> | 2021-03-24 11:22:11 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@google.com> | 2021-03-24 11:22:11 +0100 |
commit | ff91fba478b0b7e2b81b13de25e9a226f1daf296 (patch) | |
tree | 328d3052ba44bdf361568b198782b3ba9dc81575 /arch/x86/kernel | |
parent | 901297f61843b004aa3b39e28c53b89f586896d5 (diff) | |
parent | 4d422f6e1358d7eb9f493ec832e8cf0b8e6bc28d (diff) |
Merge 4.4.263 into android-4.4-p
Changes in 4.4.263
ext4: handle error of ext4_setup_system_zone() on remount
ext4: don't allow overlapping system zones
ext4: check journal inode extents more carefully
platform/chrome: cros_ec_dev - Fix security issue
btrfs: fix race when cloning extent buffer during rewind of an old root
NFSD: Repair misuse of sv_lock in 5.10.16-rt30.
scsi: lpfc: Fix some error codes in debugfs
USB: replace hardcode maximum usb string length by definition
usb: gadget: configfs: Fix KASAN use-after-free
PCI: rpadlpar: Fix potential drc_name corruption in store functions
x86/ioapic: Ignore IRQ2 again
ext4: find old entry again if failed to rename whiteout
ext4: fix potential error in ext4_do_update_inode
genirq: Disable interrupts for force threaded handlers
Linux 4.4.263
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I2f08b8f294218dd5ef2df6f13ca83f43a8728a28
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index 5e8fc9809da3..497ad354e123 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c @@ -1040,6 +1040,16 @@ static int mp_map_pin_to_irq(u32 gsi, int idx, int ioapic, int pin, if (idx >= 0 && test_bit(mp_irqs[idx].srcbus, mp_bus_not_pci)) { irq = mp_irqs[idx].srcbusirq; legacy = mp_is_legacy_irq(irq); + /* + * IRQ2 is unusable for historical reasons on systems which + * have a legacy PIC. See the comment vs. IRQ2 further down. + * + * If this gets removed at some point then the related code + * in lapic_assign_system_vectors() needs to be adjusted as + * well. + */ + if (legacy && irq == PIC_CASCADE_IR) + return -EINVAL; } mutex_lock(&ioapic_mutex); |