aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SOURCES/Patchlist.changelog9
-rw-r--r--SOURCES/kernel-aarch64-debug-fedora.config1
-rw-r--r--SOURCES/kernel-aarch64-debug-rhel.config1
-rw-r--r--SOURCES/kernel-aarch64-fedora.config1
-rw-r--r--SOURCES/kernel-aarch64-rhel.config1
-rw-r--r--SOURCES/kernel-s390x-debug-fedora.config1
-rw-r--r--SOURCES/kernel-s390x-debug-rhel.config1
-rw-r--r--SOURCES/kernel-s390x-fedora.config1
-rw-r--r--SOURCES/kernel-s390x-rhel.config1
-rw-r--r--SOURCES/kernel-s390x-zfcpdump-rhel.config1
-rw-r--r--SOURCES/patch-5.16-redhat.patch95
-rwxr-xr-xSPECS/kernel.spec20
12 files changed, 76 insertions, 57 deletions
diff --git a/SOURCES/Patchlist.changelog b/SOURCES/Patchlist.changelog
index e962dc7..af388f4 100644
--- a/SOURCES/Patchlist.changelog
+++ b/SOURCES/Patchlist.changelog
@@ -1,3 +1,12 @@
+https://gitlab.com/cki-project/kernel-ark/-/commit/f02942b95fb601b9729da7be1ae55d2255dcc045
+ f02942b95fb601b9729da7be1ae55d2255dcc045 Revert "x86/PCI: Ignore E820 reservations for bridge windows on newer systems"
+
+https://gitlab.com/cki-project/kernel-ark/-/commit/0ee56a84bdf2c277b9b47ed0e006802d40d5d3cc
+ 0ee56a84bdf2c277b9b47ed0e006802d40d5d3cc usb: gadget: clear related members when goto fail
+
+https://gitlab.com/cki-project/kernel-ark/-/commit/6c9ee5e7caa95bbbe3a131552845ae141658a4ef
+ 6c9ee5e7caa95bbbe3a131552845ae141658a4ef usb: gadget: don't release an existing dev->buf
+
https://gitlab.com/cki-project/kernel-ark/-/commit/ebcfc72287e1a1c6758e2d80776e8c797c14c14e
ebcfc72287e1a1c6758e2d80776e8c797c14c14e tipc: improve size validations for received domain records
diff --git a/SOURCES/kernel-aarch64-debug-fedora.config b/SOURCES/kernel-aarch64-debug-fedora.config
index 5f11012..bdab560 100644
--- a/SOURCES/kernel-aarch64-debug-fedora.config
+++ b/SOURCES/kernel-aarch64-debug-fedora.config
@@ -331,6 +331,7 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_2051678=y
CONFIG_ARM64_ERRATUM_2054223=y
CONFIG_ARM64_ERRATUM_2067961=y
CONFIG_ARM64_ERRATUM_2119858=y
diff --git a/SOURCES/kernel-aarch64-debug-rhel.config b/SOURCES/kernel-aarch64-debug-rhel.config
index 51c216a..ccd88ef 100644
--- a/SOURCES/kernel-aarch64-debug-rhel.config
+++ b/SOURCES/kernel-aarch64-debug-rhel.config
@@ -260,6 +260,7 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_2051678=y
CONFIG_ARM64_ERRATUM_2054223=y
CONFIG_ARM64_ERRATUM_2067961=y
CONFIG_ARM64_ERRATUM_2119858=y
diff --git a/SOURCES/kernel-aarch64-fedora.config b/SOURCES/kernel-aarch64-fedora.config
index 1cea760..972c1aa 100644
--- a/SOURCES/kernel-aarch64-fedora.config
+++ b/SOURCES/kernel-aarch64-fedora.config
@@ -331,6 +331,7 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_2051678=y
CONFIG_ARM64_ERRATUM_2054223=y
CONFIG_ARM64_ERRATUM_2067961=y
CONFIG_ARM64_ERRATUM_2119858=y
diff --git a/SOURCES/kernel-aarch64-rhel.config b/SOURCES/kernel-aarch64-rhel.config
index 826a83a..f1d1ae1 100644
--- a/SOURCES/kernel-aarch64-rhel.config
+++ b/SOURCES/kernel-aarch64-rhel.config
@@ -260,6 +260,7 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_2051678=y
CONFIG_ARM64_ERRATUM_2054223=y
CONFIG_ARM64_ERRATUM_2067961=y
CONFIG_ARM64_ERRATUM_2119858=y
diff --git a/SOURCES/kernel-s390x-debug-fedora.config b/SOURCES/kernel-s390x-debug-fedora.config
index 3e92e55..821b71d 100644
--- a/SOURCES/kernel-s390x-debug-fedora.config
+++ b/SOURCES/kernel-s390x-debug-fedora.config
@@ -4926,6 +4926,7 @@ CONFIG_S390_CCW_IOMMU=y
CONFIG_S390_GUEST=y
CONFIG_S390_HYPFS_FS=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
+# CONFIG_S390_MODULES_SANITY_TEST is not set
CONFIG_S390_PRNG=m
CONFIG_S390_TAPE_34XX=m
CONFIG_S390_TAPE_3590=m
diff --git a/SOURCES/kernel-s390x-debug-rhel.config b/SOURCES/kernel-s390x-debug-rhel.config
index 26c6d57..463f04a 100644
--- a/SOURCES/kernel-s390x-debug-rhel.config
+++ b/SOURCES/kernel-s390x-debug-rhel.config
@@ -4357,6 +4357,7 @@ CONFIG_S390_CCW_IOMMU=y
CONFIG_S390_GUEST=y
CONFIG_S390_HYPFS_FS=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
+# CONFIG_S390_MODULES_SANITY_TEST is not set
CONFIG_S390_PRNG=m
CONFIG_S390_TAPE_34XX=m
CONFIG_S390_TAPE_3590=m
diff --git a/SOURCES/kernel-s390x-fedora.config b/SOURCES/kernel-s390x-fedora.config
index 463803c..a9090a9 100644
--- a/SOURCES/kernel-s390x-fedora.config
+++ b/SOURCES/kernel-s390x-fedora.config
@@ -4902,6 +4902,7 @@ CONFIG_S390_CCW_IOMMU=y
CONFIG_S390_GUEST=y
CONFIG_S390_HYPFS_FS=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
+# CONFIG_S390_MODULES_SANITY_TEST is not set
CONFIG_S390_PRNG=m
CONFIG_S390_TAPE_34XX=m
CONFIG_S390_TAPE_3590=m
diff --git a/SOURCES/kernel-s390x-rhel.config b/SOURCES/kernel-s390x-rhel.config
index 5c9f987..995da62 100644
--- a/SOURCES/kernel-s390x-rhel.config
+++ b/SOURCES/kernel-s390x-rhel.config
@@ -4339,6 +4339,7 @@ CONFIG_S390_CCW_IOMMU=y
CONFIG_S390_GUEST=y
CONFIG_S390_HYPFS_FS=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
+# CONFIG_S390_MODULES_SANITY_TEST is not set
CONFIG_S390_PRNG=m
CONFIG_S390_TAPE_34XX=m
CONFIG_S390_TAPE_3590=m
diff --git a/SOURCES/kernel-s390x-zfcpdump-rhel.config b/SOURCES/kernel-s390x-zfcpdump-rhel.config
index 08d18e6..99e85e0 100644
--- a/SOURCES/kernel-s390x-zfcpdump-rhel.config
+++ b/SOURCES/kernel-s390x-zfcpdump-rhel.config
@@ -4357,6 +4357,7 @@ CONFIG_S390_CCW_IOMMU=y
# CONFIG_S390_GUEST is not set
# CONFIG_S390_HYPFS_FS is not set
# CONFIG_S390_KPROBES_SANITY_TEST is not set
+# CONFIG_S390_MODULES_SANITY_TEST is not set
CONFIG_S390_PRNG=y
CONFIG_S390_TAPE_34XX=m
CONFIG_S390_TAPE_3590=m
diff --git a/SOURCES/patch-5.16-redhat.patch b/SOURCES/patch-5.16-redhat.patch
index a748eea..944b3a0 100644
--- a/SOURCES/patch-5.16-redhat.patch
+++ b/SOURCES/patch-5.16-redhat.patch
@@ -4,7 +4,6 @@
arch/s390/include/asm/ipl.h | 1 +
arch/s390/kernel/ipl.c | 5 +
arch/s390/kernel/setup.c | 4 +
- arch/x86/kernel/resource.c | 23 +++-
arch/x86/kernel/setup.c | 22 ++--
crypto/rng.c | 73 +++++++++++-
drivers/acpi/apei/hest.c | 8 ++
@@ -31,6 +30,7 @@
drivers/nvme/host/nvme.h | 4 +
drivers/pci/quirks.c | 24 ++++
drivers/usb/core/hub.c | 7 ++
+ drivers/usb/gadget/legacy/inode.c | 10 +-
include/linux/efi.h | 22 ++--
include/linux/lsm_hook_defs.h | 2 +
include/linux/lsm_hooks.h | 6 +
@@ -47,10 +47,10 @@
security/lockdown/lockdown.c | 1 +
security/security.c | 6 +
tools/testing/selftests/netfilter/nft_nat.sh | 5 +-
- 49 files changed, 820 insertions(+), 196 deletions(-)
+ 49 files changed, 805 insertions(+), 198 deletions(-)
diff --git a/Makefile b/Makefile
-index 1f32bb42f328..592f45010531 100644
+index 36bbff16530b..e17c7fd5312f 100644
--- a/Makefile
+++ b/Makefile
@@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
@@ -81,10 +81,10 @@ index c2724d986fa0..8063dcef65f7 100644
The VM uses one page of physical memory for each page table.
For systems with a lot of processes, this can use a lot of
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index c4207cf9bb17..9e440657f15e 100644
+index ae0e93871ee5..7d5274349536 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
-@@ -1023,7 +1023,7 @@ endchoice
+@@ -1093,7 +1093,7 @@ endchoice
config ARM64_FORCE_52BIT
bool "Force 52-bit virtual addresses for userspace"
@@ -93,7 +93,7 @@ index c4207cf9bb17..9e440657f15e 100644
help
For systems with 52-bit userspace VAs enabled, the kernel will attempt
to maintain compatibility with older software by providing 48-bit VAs
-@@ -1277,6 +1277,7 @@ config XEN
+@@ -1347,6 +1347,7 @@ config XEN
config FORCE_MAX_ZONEORDER
int
default "14" if ARM64_64K_PAGES
@@ -148,49 +148,6 @@ index 225ab2d0a4c6..6a06cde25ca2 100644
/* Have one command line that is parsed and saved in /proc/cmdline */
/* boot_command_line has been already set up in early.c */
*cmdline_p = boot_command_line;
-diff --git a/arch/x86/kernel/resource.c b/arch/x86/kernel/resource.c
-index 9b9fb7882c20..9ae64f9af956 100644
---- a/arch/x86/kernel/resource.c
-+++ b/arch/x86/kernel/resource.c
-@@ -1,4 +1,5 @@
- // SPDX-License-Identifier: GPL-2.0
-+#include <linux/dmi.h>
- #include <linux/ioport.h>
- #include <asm/e820/api.h>
-
-@@ -23,11 +24,31 @@ static void resource_clip(struct resource *res, resource_size_t start,
- res->start = end + 1;
- }
-
-+/*
-+ * Some BIOS-es contain a bug where they add addresses which map to
-+ * system RAM in the PCI host bridge window returned by the ACPI _CRS
-+ * method, see commit 4dc2287c1805 ("x86: avoid E820 regions when
-+ * allocating address space"). To avoid this Linux by default excludes
-+ * E820 reservations when allocating addresses since 2010.
-+ * In 2019 some systems have shown-up with E820 reservations which cover
-+ * the entire _CRS returned PCI host bridge window, causing all attempts
-+ * to assign memory to PCI BARs to fail if Linux uses E820 reservations.
-+ *
-+ * Ideally Linux would fully stop using E820 reservations, but then
-+ * the old systems this was added for will regress.
-+ * Instead keep the old behavior for old systems, while ignoring the
-+ * E820 reservations for any systems from now on.
-+ */
- static void remove_e820_regions(struct resource *avail)
- {
-- int i;
-+ int i, year = dmi_get_bios_year();
- struct e820_entry *entry;
-
-+ if (year >= 2018)
-+ return;
-+
-+ pr_info_once("PCI: Removing E820 reservations from host bridge windows\n");
-+
- for (i = 0; i < e820_table->nr_entries; i++) {
- entry = &e820_table->entries[i];
-
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index e04f5e6eb33f..8015e3d2dc9a 100644
--- a/arch/x86/kernel/setup.c
@@ -1257,7 +1214,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 8b86406b7162..2dffe129b902 100644
+index 3632bf8b4031..f9675209b5a2 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -7,6 +7,7 @@
@@ -1268,7 +1225,7 @@ index 8b86406b7162..2dffe129b902 100644
#include <linux/dma-iommu.h>
#include <linux/kernel.h>
#include <linux/bits.h>
-@@ -3119,6 +3120,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle)
+@@ -3124,6 +3125,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle)
}
EXPORT_SYMBOL_GPL(iommu_sva_get_pasid);
@@ -1607,6 +1564,42 @@ index ac6c5ccfe1cb..ec784479eece 100644
/* Lock the device, then check to see if we were
* disconnected while waiting for the lock to succeed. */
usb_lock_device(hdev);
+diff --git a/drivers/usb/gadget/legacy/inode.c b/drivers/usb/gadget/legacy/inode.c
+index 3b58f4fc0a80..25c8809e0a38 100644
+--- a/drivers/usb/gadget/legacy/inode.c
++++ b/drivers/usb/gadget/legacy/inode.c
+@@ -1826,8 +1826,9 @@ dev_config (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
+ spin_lock_irq (&dev->lock);
+ value = -EINVAL;
+ if (dev->buf) {
++ spin_unlock_irq(&dev->lock);
+ kfree(kbuf);
+- goto fail;
++ return value;
+ }
+ dev->buf = kbuf;
+
+@@ -1874,8 +1875,8 @@ dev_config (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
+
+ value = usb_gadget_probe_driver(&gadgetfs_driver);
+ if (value != 0) {
+- kfree (dev->buf);
+- dev->buf = NULL;
++ spin_lock_irq(&dev->lock);
++ goto fail;
+ } else {
+ /* at this point "good" hardware has for the first time
+ * let the USB the host see us. alternatively, if users
+@@ -1892,6 +1893,9 @@ dev_config (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
+ return value;
+
+ fail:
++ dev->config = NULL;
++ dev->hs_config = NULL;
++ dev->dev = NULL;
+ spin_unlock_irq (&dev->lock);
+ pr_debug ("%s: %s fail %zd, %p\n", shortname, __func__, value, dev);
+ kfree (dev->buf);
diff --git a/include/linux/efi.h b/include/linux/efi.h
index ef8dbc0a1522..836a5dfc6156 100644
--- a/include/linux/efi.h
diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec
index d43cdb8..664bfa5 100755
--- a/SPECS/kernel.spec
+++ b/SPECS/kernel.spec
@@ -130,7 +130,7 @@ Summary: The Linux kernel
# The kernel tarball/base version
%define kversion 5.16
-%define rpmversion 5.16.9
+%define rpmversion 5.16.10
%define patchversion 5.16
%define pkgrelease 201
@@ -692,7 +692,7 @@ BuildRequires: lld
# exact git commit you can run
#
# xzcat -qq ${TARBALL} | git get-tar-commit-id
-Source0: linux-5.16.9.tar.xz
+Source0: linux-5.16.10.tar.xz
Source1: Makefile.rhelver
@@ -1395,8 +1395,8 @@ ApplyOptionalPatch()
fi
}
-%setup -q -n kernel-5.16.9 -c
-mv linux-5.16.9 linux-%{KVERREL}
+%setup -q -n kernel-5.16.10 -c
+mv linux-5.16.10 linux-%{KVERREL}
cd linux-%{KVERREL}
cp -a %{SOURCE1} .
@@ -3004,8 +3004,16 @@ fi
#
#
%changelog
-* Fri Feb 18 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 5.16.9-201
-- Linux v5.16.9 futex2 zen openrgb
+* Fri Feb 18 2022 Jan Drögehoff <sentrycraft123@gmail.com> - 5.16.10-201
+- Linux v5.16.10 futex2 zen openrgb
+
+* Wed Feb 16 2022 Justin M. Forbes <jforbes@fedoraproject.org> [5.16.10-200]
+- New configs for 5.16.10 (Justin M. Forbes)
+
+* Wed Feb 16 2022 Justin M. Forbes <jforbes@fedoraproject.org> [5.16.10-0]
+- Revert "x86/PCI: Ignore E820 reservations for bridge windows on newer systems" (Justin M. Forbes)
+- usb: gadget: clear related members when goto fail (Hangyu Hua)
+- usb: gadget: don't release an existing dev->buf (Hangyu Hua)
* Fri Feb 11 2022 Justin M. Forbes <jforbes@fedoraproject.org> [5.16.9-0]
- tipc: improve size validations for received domain records (Jon Maloy)