From 0c347acd307f4fe0d870f2e750313ad027075c8f Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Thu, 27 Jan 2022 10:03:08 -0600 Subject: [PATCH] kernel-5.15.17-0 * Thu Jan 27 2022 Justin M. Forbes [5.15.17-0] - Revert "PCI/MSI: Mask MSI-X vectors only on success" (Justin M. Forbes) Resolves: rhbz# Signed-off-by: Justin M. Forbes --- Patchlist.changelog | 3 + kernel-aarch64-debug-fedora.config | 1 - kernel-aarch64-fedora.config | 1 - kernel-armv7hl-debug-fedora.config | 1 - kernel-armv7hl-fedora.config | 1 - kernel-armv7hl-lpae-debug-fedora.config | 1 - kernel-armv7hl-lpae-fedora.config | 1 - kernel-i686-debug-fedora.config | 1 - kernel-i686-fedora.config | 1 - kernel-ppc64le-debug-fedora.config | 1 - kernel-ppc64le-fedora.config | 1 - kernel-s390x-debug-fedora.config | 1 - kernel-s390x-fedora.config | 1 - kernel-x86_64-debug-fedora.config | 1 - kernel-x86_64-fedora.config | 1 - kernel.spec | 11 +- patch-5.15-redhat.patch | 129 +++++++++--------------- sources | 6 +- 18 files changed, 63 insertions(+), 100 deletions(-) diff --git a/Patchlist.changelog b/Patchlist.changelog index 49ecb4f96..f939a9fe2 100644 --- a/Patchlist.changelog +++ b/Patchlist.changelog @@ -1,3 +1,6 @@ +https://gitlab.com/cki-project/kernel-ark/-/commit/63aede4769015c5f4cccb3f297229905f547dab5 + 63aede4769015c5f4cccb3f297229905f547dab5 Revert "PCI/MSI: Mask MSI-X vectors only on success" + https://gitlab.com/cki-project/kernel-ark/-/commit/d585d2f953aa602153c0912e68c27015c4c77320 d585d2f953aa602153c0912e68c27015c4c77320 drm/amdgpu: don't do resets on APUs which don't support it diff --git a/kernel-aarch64-debug-fedora.config b/kernel-aarch64-debug-fedora.config index 8b1c393d1..72466055f 100644 --- a/kernel-aarch64-debug-fedora.config +++ b/kernel-aarch64-debug-fedora.config @@ -4620,7 +4620,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-aarch64-fedora.config b/kernel-aarch64-fedora.config index ce609ee53..efb190152 100644 --- a/kernel-aarch64-fedora.config +++ b/kernel-aarch64-fedora.config @@ -4596,7 +4596,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-armv7hl-debug-fedora.config b/kernel-armv7hl-debug-fedora.config index e3c26283d..1b0531885 100644 --- a/kernel-armv7hl-debug-fedora.config +++ b/kernel-armv7hl-debug-fedora.config @@ -4693,7 +4693,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-armv7hl-fedora.config b/kernel-armv7hl-fedora.config index 629e446e8..e1b46ecb1 100644 --- a/kernel-armv7hl-fedora.config +++ b/kernel-armv7hl-fedora.config @@ -4670,7 +4670,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-armv7hl-lpae-debug-fedora.config b/kernel-armv7hl-lpae-debug-fedora.config index 66cc832d3..5ccf5ea11 100644 --- a/kernel-armv7hl-lpae-debug-fedora.config +++ b/kernel-armv7hl-lpae-debug-fedora.config @@ -4592,7 +4592,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-armv7hl-lpae-fedora.config b/kernel-armv7hl-lpae-fedora.config index 51abcfdc5..e57d4c32c 100644 --- a/kernel-armv7hl-lpae-fedora.config +++ b/kernel-armv7hl-lpae-fedora.config @@ -4569,7 +4569,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m # CONFIG_NET_TULIP is not set -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set CONFIG_NET_VENDOR_8390=y # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-i686-debug-fedora.config b/kernel-i686-debug-fedora.config index 1dbd4ba3c..2a1584e0d 100644 --- a/kernel-i686-debug-fedora.config +++ b/kernel-i686-debug-fedora.config @@ -4206,7 +4206,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel-i686-fedora.config b/kernel-i686-fedora.config index 34c4dbc0e..9059dc9cf 100644 --- a/kernel-i686-fedora.config +++ b/kernel-i686-fedora.config @@ -4183,7 +4183,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel-ppc64le-debug-fedora.config b/kernel-ppc64le-debug-fedora.config index c425cf2c4..094390a80 100644 --- a/kernel-ppc64le-debug-fedora.config +++ b/kernel-ppc64le-debug-fedora.config @@ -3941,7 +3941,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel-ppc64le-fedora.config b/kernel-ppc64le-fedora.config index 84c27c36c..6f3dc93b2 100644 --- a/kernel-ppc64le-fedora.config +++ b/kernel-ppc64le-fedora.config @@ -3917,7 +3917,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel-s390x-debug-fedora.config b/kernel-s390x-debug-fedora.config index 08366c4aa..90b9469c4 100644 --- a/kernel-s390x-debug-fedora.config +++ b/kernel-s390x-debug-fedora.config @@ -3922,7 +3922,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set # CONFIG_NET_VENDOR_8390 is not set # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-s390x-fedora.config b/kernel-s390x-fedora.config index 779702b69..bbe80b9b0 100644 --- a/kernel-s390x-fedora.config +++ b/kernel-s390x-fedora.config @@ -3898,7 +3898,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m # CONFIG_NET_VENDOR_3COM is not set # CONFIG_NET_VENDOR_8390 is not set # CONFIG_NET_VENDOR_ADAPTEC is not set diff --git a/kernel-x86_64-debug-fedora.config b/kernel-x86_64-debug-fedora.config index f94b12fd7..b252d3d4d 100644 --- a/kernel-x86_64-debug-fedora.config +++ b/kernel-x86_64-debug-fedora.config @@ -4250,7 +4250,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel-x86_64-fedora.config b/kernel-x86_64-fedora.config index ef531b5af..2676a9003 100644 --- a/kernel-x86_64-fedora.config +++ b/kernel-x86_64-fedora.config @@ -4227,7 +4227,6 @@ CONFIG_NET_TEAM_MODE_LOADBALANCE=m CONFIG_NET_TEAM_MODE_RANDOM=m CONFIG_NET_TEAM_MODE_ROUNDROBIN=m CONFIG_NET_TULIP=y -CONFIG_NET_UDP_TUNNEL=m CONFIG_NET_VENDOR_3COM=y CONFIG_NET_VENDOR_8390=y CONFIG_NET_VENDOR_ADAPTEC=y diff --git a/kernel.spec b/kernel.spec index 9e4af38bb..688764c1c 100755 --- a/kernel.spec +++ b/kernel.spec @@ -128,7 +128,7 @@ Summary: The Linux kernel # The kernel tarball/base version %define kversion 5.15 -%define rpmversion 5.15.16 +%define rpmversion 5.15.17 %define patchversion 5.15 %define pkgrelease 200 @@ -682,7 +682,7 @@ BuildRequires: lld # exact git commit you can run # # xzcat -qq ${TARBALL} | git get-tar-commit-id -Source0: linux-5.15.16.tar.xz +Source0: linux-5.15.17.tar.xz Source1: Makefile.rhelver @@ -1374,8 +1374,8 @@ ApplyOptionalPatch() fi } -%setup -q -n kernel-5.15.16 -c -mv linux-5.15.16 linux-%{KVERREL} +%setup -q -n kernel-5.15.17 -c +mv linux-5.15.17 linux-%{KVERREL} cd linux-%{KVERREL} cp -a %{SOURCE1} . @@ -2972,6 +2972,9 @@ fi # # %changelog +* Thu Jan 27 2022 Justin M. Forbes [5.15.17-0] +- Revert "PCI/MSI: Mask MSI-X vectors only on success" (Justin M. Forbes) + * Thu Jan 20 2022 Justin M. Forbes [5.15.16-0] - drm/amdgpu: don't do resets on APUs which don't support it (Alex Deucher) diff --git a/patch-5.15-redhat.patch b/patch-5.15-redhat.patch index 793de53d9..bf15b1a31 100644 --- a/patch-5.15-redhat.patch +++ b/patch-5.15-redhat.patch @@ -23,17 +23,14 @@ drivers/firmware/efi/Makefile | 1 + drivers/firmware/efi/efi.c | 124 +++++++++++++++------ drivers/firmware/efi/secureboot.c | 38 +++++++ - drivers/gpu/drm/amd/amdgpu/cik.c | 4 + - drivers/gpu/drm/amd/amdgpu/vi.c | 4 + drivers/hid/hid-rmi.c | 64 ----------- drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 ++++ drivers/input/rmi4/rmi_driver.c | 124 ++++++++++++--------- drivers/iommu/iommu.c | 22 ++++ - drivers/net/wireless/intel/iwlwifi/mvm/scan.c | 2 +- - drivers/net/wireless/marvell/mwifiex/usb.c | 3 +- drivers/nvme/host/core.c | 22 +++- drivers/nvme/host/multipath.c | 19 ++-- drivers/nvme/host/nvme.h | 4 + + drivers/pci/msi.c | 13 +-- drivers/pci/quirks.c | 24 ++++ drivers/platform/x86/thinkpad_acpi.c | 4 +- drivers/usb/core/hub.c | 7 ++ @@ -54,7 +51,7 @@ security/lockdown/lockdown.c | 1 + security/security.c | 6 + tools/testing/selftests/netfilter/nft_nat.sh | 5 +- - 56 files changed, 808 insertions(+), 207 deletions(-) + 53 files changed, 800 insertions(+), 215 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 8ff6dafafdf8..e3f786336cf9 100644 @@ -77,7 +74,7 @@ index 8ff6dafafdf8..e3f786336cf9 100644 This is normally done in pci_enable_device(), so this option is a temporary workaround diff --git a/Makefile b/Makefile -index af173c9df942..b8b62c920fdf 100644 +index 088197ed3f66..18279618693d 100644 --- a/Makefile +++ b/Makefile @@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \ @@ -579,11 +576,11 @@ index c68e694fca26..146cba5ae5bc 100644 return ctx.rc; } diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c -index 5b54c80b9d32..86c314f8d8a0 100644 +index 6e9cd41c5f9b..07db2f6afa17 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c -@@ -1720,6 +1720,15 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device) - if (!acpi_match_device_ids(device, i2c_multi_instantiate_ids)) +@@ -1727,6 +1727,15 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device) + if (!acpi_match_device_ids(device, ignore_serial_bus_ids)) return false; + /* @@ -689,7 +686,7 @@ index fe91090e04a4..f00bc6886913 100644 rv = ipmi_register_driver(); mutex_unlock(&ipmi_interfaces_mutex); diff --git a/drivers/char/random.c b/drivers/char/random.c -index 7470ee24db2f..a3ac18f64ba7 100644 +index a27ae3999ff3..dc4e136adb08 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -335,6 +335,7 @@ @@ -722,7 +719,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 /********************************************************************** * * OS independent entropy store. Here are the functions which handle -@@ -1878,6 +1887,13 @@ random_poll(struct file *file, poll_table * wait) +@@ -1880,6 +1889,13 @@ random_poll(struct file *file, poll_table * wait) return mask; } @@ -736,7 +733,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 static int write_pool(struct entropy_store *r, const char __user *buffer, size_t count) { -@@ -1981,7 +1997,58 @@ static int random_fasync(int fd, struct file *filp, int on) +@@ -1983,7 +1999,58 @@ static int random_fasync(int fd, struct file *filp, int on) return fasync_helper(fd, filp, on, &fasync); } @@ -795,7 +792,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 .read = random_read, .write = random_write, .poll = random_poll, -@@ -1992,6 +2059,7 @@ const struct file_operations random_fops = { +@@ -1994,6 +2061,7 @@ const struct file_operations random_fops = { }; const struct file_operations urandom_fops = { @@ -803,7 +800,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 .read = urandom_read, .write = random_write, .unlocked_ioctl = random_ioctl, -@@ -2000,9 +2068,31 @@ const struct file_operations urandom_fops = { +@@ -2002,9 +2070,31 @@ const struct file_operations urandom_fops = { .llseek = noop_llseek, }; @@ -835,7 +832,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 int ret; if (flags & ~(GRND_NONBLOCK|GRND_RANDOM|GRND_INSECURE)) -@@ -2018,6 +2108,18 @@ SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, +@@ -2020,6 +2110,18 @@ SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, if (count > INT_MAX) count = INT_MAX; @@ -854,7 +851,7 @@ index 7470ee24db2f..a3ac18f64ba7 100644 if (!(flags & GRND_INSECURE) && !crng_ready()) { if (flags & GRND_NONBLOCK) return -EAGAIN; -@@ -2324,3 +2426,16 @@ void add_bootloader_randomness(const void *buf, unsigned int size) +@@ -2329,3 +2431,16 @@ void add_bootloader_randomness(const void *buf, unsigned int size) add_device_randomness(buf, size); } EXPORT_SYMBOL_GPL(add_bootloader_randomness); @@ -1072,36 +1069,6 @@ index 000000000000..de0a3714a5d4 + } + } +} -diff --git a/drivers/gpu/drm/amd/amdgpu/cik.c b/drivers/gpu/drm/amd/amdgpu/cik.c -index 54f28c075f21..f10ce740a29c 100644 ---- a/drivers/gpu/drm/amd/amdgpu/cik.c -+++ b/drivers/gpu/drm/amd/amdgpu/cik.c -@@ -1428,6 +1428,10 @@ static int cik_asic_reset(struct amdgpu_device *adev) - { - int r; - -+ /* APUs don't have full asic reset */ -+ if (adev->flags & AMD_IS_APU) -+ return 0; -+ - if (cik_asic_reset_method(adev) == AMD_RESET_METHOD_BACO) { - dev_info(adev->dev, "BACO reset\n"); - r = amdgpu_dpm_baco_reset(adev); -diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c b/drivers/gpu/drm/amd/amdgpu/vi.c -index fe9a7cc8d9eb..6645ebbd2696 100644 ---- a/drivers/gpu/drm/amd/amdgpu/vi.c -+++ b/drivers/gpu/drm/amd/amdgpu/vi.c -@@ -956,6 +956,10 @@ static int vi_asic_reset(struct amdgpu_device *adev) - { - int r; - -+ /* APUs don't have full asic reset */ -+ if (adev->flags & AMD_IS_APU) -+ return 0; -+ - if (vi_asic_reset_method(adev) == AMD_RESET_METHOD_BACO) { - dev_info(adev->dev, "BACO reset\n"); - r = amdgpu_dpm_baco_reset(adev); diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c index 311eee599ce9..2460c6bd46f8 100644 --- a/drivers/hid/hid-rmi.c @@ -1446,7 +1413,7 @@ index 258d5fe3d395..f7298e3dc8f3 100644 if (data->f01_container->dev.driver) { /* Driver already bound, so enable ATTN now. */ diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c -index 3303d707bab4..372edaaafaa1 100644 +index f62fb6a58f10..26ade573cec9 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -7,6 +7,7 @@ @@ -1457,7 +1424,7 @@ index 3303d707bab4..372edaaafaa1 100644 #include #include #include -@@ -3118,6 +3119,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle) +@@ -3119,6 +3120,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle) } EXPORT_SYMBOL_GPL(iommu_sva_get_pasid); @@ -1485,33 +1452,6 @@ index 3303d707bab4..372edaaafaa1 100644 /* * Changes the default domain of an iommu group that has *only* one device * -diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c -index d78e436fa8b5..b064d3137e46 100644 ---- a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c -+++ b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c -@@ -2490,7 +2490,7 @@ static int iwl_mvm_check_running_scans(struct iwl_mvm *mvm, int type) - return -EIO; - } - --#define SCAN_TIMEOUT 20000 -+#define SCAN_TIMEOUT 30000 - - void iwl_mvm_scan_timeout_wk(struct work_struct *work) - { -diff --git a/drivers/net/wireless/marvell/mwifiex/usb.c b/drivers/net/wireless/marvell/mwifiex/usb.c -index 9736aa0ab7fd..8f01fcbe9396 100644 ---- a/drivers/net/wireless/marvell/mwifiex/usb.c -+++ b/drivers/net/wireless/marvell/mwifiex/usb.c -@@ -130,7 +130,8 @@ static int mwifiex_usb_recv(struct mwifiex_adapter *adapter, - default: - mwifiex_dbg(adapter, ERROR, - "unknown recv_type %#x\n", recv_type); -- return -1; -+ ret = -1; -+ goto exit_restore_skb; - } - break; - case MWIFIEX_USB_EP_DATA: diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index f8dd664b2eda..0ff9ea8340e4 100644 --- a/drivers/nvme/host/core.c @@ -1648,11 +1588,42 @@ index ed79a6c7e804..961dc67d7261 100644 static inline void nvme_kick_requeue_lists(struct nvme_ctrl *ctrl) { } +diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c +index cc4c2b8a5efd..96132d68be1e 100644 +--- a/drivers/pci/msi.c ++++ b/drivers/pci/msi.c +@@ -721,6 +721,9 @@ static int msix_capability_init(struct pci_dev *dev, struct msix_entry *entries, + goto out_disable; + } + ++ /* Ensure that all table entries are masked. */ ++ msix_mask_all(base, tsize); ++ + ret = msix_setup_entries(dev, base, entries, nvec, affd); + if (ret) + goto out_disable; +@@ -747,16 +750,6 @@ static int msix_capability_init(struct pci_dev *dev, struct msix_entry *entries, + /* Set MSI-X enabled bits and unmask the function */ + pci_intx_for_msi(dev, 0); + dev->msix_enabled = 1; +- +- /* +- * Ensure that all table entries are masked to prevent +- * stale entries from firing in a crash kernel. +- * +- * Done late to deal with a broken Marvell NVME device +- * which takes the MSI-X mask bits into account even +- * when MSI-X is disabled, which prevents MSI delivery. +- */ +- msix_mask_all(base, tsize); + pci_msix_clear_and_set_ctrl(dev, PCI_MSIX_FLAGS_MASKALL, 0); + + pcibios_free_irq(dev); diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c -index 208fa03acdda..88cfaa8ac3b3 100644 +index 0663762ea69d..3f1215e8c5b2 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c -@@ -4269,6 +4269,30 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9000, +@@ -4272,6 +4272,30 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9000, DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9084, quirk_bridge_cavm_thrx2_pcie_root); @@ -1702,10 +1673,10 @@ index 3dc055ce6e61..bb56640eb31f 100644 static inline bool tpacpi_is_led_restricted(const unsigned int led) { diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index 3bc4a86c3d0a..e346da4f58f2 100644 +index ac6c5ccfe1cb..ec784479eece 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -5666,6 +5666,13 @@ static void hub_event(struct work_struct *work) +@@ -5669,6 +5669,13 @@ static void hub_event(struct work_struct *work) (u16) hub->change_bits[0], (u16) hub->event_bits[0]); diff --git a/sources b/sources index 449eb7b48..960adb862 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (linux-5.15.16.tar.xz) = c963494c8f80a63db7e4db77aaf6b18b6a0c4c03c3c42d44490ab2fb541593b5e4f28ccfe9a6fad8dc7994aa27e02533a41b7de08618e6461246b86001e4cf98 -SHA512 (kernel-abi-stablelists-5.15.16-200.tar.bz2) = 8c48387deceb0af61e3bbdeafe65cdc970c0346732f9278abbe26058a3a9ed618f5c03fa886d94156e3b977dd7d498975ef9db3ea89e1c0970d37ecef20e5855 -SHA512 (kernel-kabi-dw-5.15.16-200.tar.bz2) = 77af2f3b4f5c0aef169102cc4ee34f97fdd4dcc0b7f338ac4b5d214884f8e8479cfb242fa634857cbc51cd5d6d30f027d0a9fe7bf0c0a311bf6979324a252433 +SHA512 (linux-5.15.17.tar.xz) = 113ace76ff678efcf5ddf74faec7a0bdbf18a139f56cf01ad8ca7392727aa9a042da91bd1468ac0ab5e9cb53239b2a2a925f3e24cfa1499906b522d92c9a7468 +SHA512 (kernel-abi-stablelists-5.15.17-200.tar.bz2) = 88267475ed0858205be3be11e71942e25b6cfb3783f3d3f3ab85d213ebceb6ed03f8207f56e9a8714f2664ba51049798d76636ce8b26805ea64a5e22d3cdcb5e +SHA512 (kernel-kabi-dw-5.15.17-200.tar.bz2) = 3d6b1a94c79d3ba13a33cb310522e80a5cf27309a457437092e1c5155dfc166b33e09ff1dce1475369b60890db50aec9896f1af9d9b87ff049ea33b5d87f045f