From db5f416f964c451e5b23ad8082df6840ebeaa229 Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Mon, 3 May 2021 09:42:02 -0500 Subject: kernel-5.11.18-300 * Mon May 03 2021 Justin M. Forbes [5.11.18-300] - nitro_enclaves: Fix stale file descriptors on failed usercopy (Mathias Krause) Resolves: rhbz# Signed-off-by: Justin M. Forbes --- Patchlist.changelog | 12 +++ kernel-aarch64-debug-fedora.config | 4 +- kernel-aarch64-fedora.config | 4 +- kernel-armv7hl-debug-fedora.config | 4 +- kernel-armv7hl-fedora.config | 4 +- kernel-armv7hl-lpae-debug-fedora.config | 4 +- kernel-armv7hl-lpae-fedora.config | 4 +- kernel-i686-debug-fedora.config | 4 +- kernel-i686-fedora.config | 4 +- kernel-ppc64le-debug-fedora.config | 4 +- kernel-ppc64le-fedora.config | 4 +- kernel-s390x-debug-fedora.config | 4 +- kernel-s390x-fedora.config | 4 +- kernel-x86_64-debug-fedora.config | 4 +- kernel-x86_64-fedora.config | 4 +- kernel.spec | 20 +++-- patch-5.11-redhat.patch | 145 +++++++++++++++++++++++++++++++- sources | 6 +- 18 files changed, 215 insertions(+), 24 deletions(-) diff --git a/Patchlist.changelog b/Patchlist.changelog index 5116d4e9b..25e02ea32 100644 --- a/Patchlist.changelog +++ b/Patchlist.changelog @@ -1,3 +1,15 @@ +https://gitlab.com/cki-project/kernel-ark/-/commit/3f376f878f898469dfbbc1b244b20ffb69f00076 + 3f376f878f898469dfbbc1b244b20ffb69f00076 nitro_enclaves: Fix stale file descriptors on failed usercopy + +https://gitlab.com/cki-project/kernel-ark/-/commit/8aa4dd3792cb3abf1ddfe8849373c929f766f349 + 8aa4dd3792cb3abf1ddfe8849373c929f766f349 sfc: ef10: fix TX queue lookup in TX event handling + +https://gitlab.com/cki-project/kernel-ark/-/commit/529556bc1873b233571c0b6ef943ab9c95ceb63c + 529556bc1873b233571c0b6ef943ab9c95ceb63c sfc: farch: fix TX queue lookup in TX event handling + +https://gitlab.com/cki-project/kernel-ark/-/commit/7a830bef2ea006ce525cc542e4b1fb8698c96e70 + 7a830bef2ea006ce525cc542e4b1fb8698c96e70 sfc: farch: fix TX queue lookup in TX flush done handling + https://gitlab.com/cki-project/kernel-ark/-/commit/2632d432606c16de479f4fd0140a6ddb56ebd2dd 2632d432606c16de479f4fd0140a6ddb56ebd2dd Re-enable PSR2 on Tigerlake with new workarounds from Intel diff --git a/kernel-aarch64-debug-fedora.config b/kernel-aarch64-debug-fedora.config index f0ce17d24..e412dd7f5 100644 --- a/kernel-aarch64-debug-fedora.config +++ b/kernel-aarch64-debug-fedora.config @@ -4063,7 +4063,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4105,7 +4105,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-aarch64-fedora.config b/kernel-aarch64-fedora.config index 8e5fe5a0d..5d69dae73 100644 --- a/kernel-aarch64-fedora.config +++ b/kernel-aarch64-fedora.config @@ -4040,7 +4040,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4082,7 +4082,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-armv7hl-debug-fedora.config b/kernel-armv7hl-debug-fedora.config index 74d2781ea..4d467c9d9 100644 --- a/kernel-armv7hl-debug-fedora.config +++ b/kernel-armv7hl-debug-fedora.config @@ -4146,7 +4146,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4192,7 +4192,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-armv7hl-fedora.config b/kernel-armv7hl-fedora.config index 0fa2a779f..c6f6d00e0 100644 --- a/kernel-armv7hl-fedora.config +++ b/kernel-armv7hl-fedora.config @@ -4124,7 +4124,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4170,7 +4170,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-armv7hl-lpae-debug-fedora.config b/kernel-armv7hl-lpae-debug-fedora.config index 8ebf40dfc..c88952a54 100644 --- a/kernel-armv7hl-lpae-debug-fedora.config +++ b/kernel-armv7hl-lpae-debug-fedora.config @@ -4046,7 +4046,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4091,7 +4091,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-armv7hl-lpae-fedora.config b/kernel-armv7hl-lpae-fedora.config index 7814bce35..010f8943a 100644 --- a/kernel-armv7hl-lpae-fedora.config +++ b/kernel-armv7hl-lpae-fedora.config @@ -4024,7 +4024,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -4069,7 +4069,9 @@ CONFIG_MTD_PHYSMAP_OF=y # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-i686-debug-fedora.config b/kernel-i686-debug-fedora.config index 539fb8f03..ce1d9203f 100644 --- a/kernel-i686-debug-fedora.config +++ b/kernel-i686-debug-fedora.config @@ -3699,7 +3699,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3732,7 +3732,9 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-i686-fedora.config b/kernel-i686-fedora.config index 5b0b24a16..7aed60b11 100644 --- a/kernel-i686-fedora.config +++ b/kernel-i686-fedora.config @@ -3677,7 +3677,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3710,7 +3710,9 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-ppc64le-debug-fedora.config b/kernel-ppc64le-debug-fedora.config index c0439346c..38932d1f5 100644 --- a/kernel-ppc64le-debug-fedora.config +++ b/kernel-ppc64le-debug-fedora.config @@ -3428,7 +3428,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3462,7 +3462,9 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PMC551 is not set CONFIG_MTD_POWERNV_FLASH=m CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-ppc64le-fedora.config b/kernel-ppc64le-fedora.config index 74c080e80..d0304cfb8 100644 --- a/kernel-ppc64le-fedora.config +++ b/kernel-ppc64le-fedora.config @@ -3405,7 +3405,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3439,7 +3439,9 @@ CONFIG_MTD_OF_PARTS=m # CONFIG_MTD_PMC551 is not set CONFIG_MTD_POWERNV_FLASH=m CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-s390x-debug-fedora.config b/kernel-s390x-debug-fedora.config index e1285b6f6..3cf19258f 100644 --- a/kernel-s390x-debug-fedora.config +++ b/kernel-s390x-debug-fedora.config @@ -3401,7 +3401,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3433,7 +3433,9 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-s390x-fedora.config b/kernel-s390x-fedora.config index f7b25d940..fa7151bfc 100644 --- a/kernel-s390x-fedora.config +++ b/kernel-s390x-fedora.config @@ -3378,7 +3378,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3410,7 +3410,9 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-x86_64-debug-fedora.config b/kernel-x86_64-debug-fedora.config index 282b79722..2c1670c82 100644 --- a/kernel-x86_64-debug-fedora.config +++ b/kernel-x86_64-debug-fedora.config @@ -3738,7 +3738,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3770,7 +3770,9 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel-x86_64-fedora.config b/kernel-x86_64-fedora.config index 8755afbb5..9c6f7ad95 100644 --- a/kernel-x86_64-fedora.config +++ b/kernel-x86_64-fedora.config @@ -3716,7 +3716,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y # CONFIG_MTD_MCHP23K256 is not set -# CONFIG_MTD_MTDRAM is not set +CONFIG_MTD_MTDRAM=m # CONFIG_MTD_NAND_ARASAN is not set # CONFIG_MTD_NAND_BRCMNAND is not set CONFIG_MTD_NAND_CADENCE=m @@ -3748,7 +3748,9 @@ CONFIG_MTD_NAND_NANDSIM=m # CONFIG_MTD_PLATRAM is not set # CONFIG_MTD_PMC551 is not set CONFIG_MTD_PSTORE=m +CONFIG_MTDRAM_ERASE_SIZE=128 # CONFIG_MTD_RAM is not set +CONFIG_MTDRAM_TOTAL_SIZE=4096 CONFIG_MTD_RAW_NAND=m # CONFIG_MTD_REDBOOT_PARTS is not set # CONFIG_MTD_ROM is not set diff --git a/kernel.spec b/kernel.spec index df138264a..415c86cdb 100755 --- a/kernel.spec +++ b/kernel.spec @@ -104,7 +104,7 @@ Summary: The Linux kernel %define primary_target rhel %endif -%define rpmversion 5.11.17 +%define rpmversion 5.11.18 %define stableversion 5.11 %define pkgrelease 300 @@ -603,7 +603,7 @@ BuildRequires: asciidoc # exact git commit you can run # # xzcat -qq ${TARBALL} | git get-tar-commit-id -Source0: linux-5.11.17.tar.xz +Source0: linux-5.11.18.tar.xz Source1: Makefile.rhelver @@ -1251,8 +1251,8 @@ ApplyOptionalPatch() fi } -%setup -q -n kernel-5.11.17 -c -mv linux-5.11.17 linux-%{KVERREL} +%setup -q -n kernel-5.11.18 -c +mv linux-5.11.18 linux-%{KVERREL} cd linux-%{KVERREL} cp -a %{SOURCE1} . @@ -2414,7 +2414,7 @@ if [ -f /etc/sysconfig/kernel ]\ then\ . /etc/sysconfig/kernel || exit $?\ fi\ -if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink -a ! -e /run/ostree-booted ] \ +if [ "$HARDLINK" != "no" -a -x /usr/bin/hardlink -a ! -e /run/ostree-booted ] \ then\ (cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\ /usr/bin/find . -type f | while read f; do\ @@ -2765,6 +2765,16 @@ fi # # %changelog +* Mon May 03 2021 Justin M. Forbes [5.11.18-300] +- nitro_enclaves: Fix stale file descriptors on failed usercopy (Mathias Krause) + +* Mon May 03 2021 Justin M. Forbes [5.11.18-0] +- Enable mtdram for fedora (rhbz 1955916) (Justin M. Forbes) +- hardlink is in /usr/bin/ (rhbz 1889043) (Justin M. Forbes) +- sfc: ef10: fix TX queue lookup in TX event handling (Edward Cree) +- sfc: farch: fix TX queue lookup in TX event handling (Edward Cree) +- sfc: farch: fix TX queue lookup in TX flush done handling (Edward Cree) + * Wed Apr 28 2021 Justin M. Forbes [5.11.17-0] - Fedora: ARMv7: build for 16 CPUs. (Peter Robinson) diff --git a/patch-5.11-redhat.patch b/patch-5.11-redhat.patch index d0b8f02e4..d0bbeea71 100644 --- a/patch-5.11-redhat.patch +++ b/patch-5.11-redhat.patch @@ -43,6 +43,8 @@ drivers/hid/hid-rmi.c | 64 --- drivers/input/rmi4/rmi_driver.c | 124 +++-- drivers/iommu/iommu.c | 22 + + drivers/net/ethernet/sfc/ef10.c | 3 +- + drivers/net/ethernet/sfc/farch.c | 16 +- drivers/pci/controller/dwc/Kconfig | 10 +- drivers/pci/controller/dwc/Makefile | 2 +- drivers/pci/controller/dwc/pcie-tegra194.c | 102 +++++ @@ -53,6 +55,7 @@ drivers/platform/x86/thinkpad_acpi.c | 510 ++++++++++++++++++++- drivers/scsi/smartpqi/smartpqi_init.c | 16 + drivers/usb/core/hub.c | 7 + + drivers/virt/nitro_enclaves/ne_misc_dev.c | 43 +- include/linux/efi.h | 22 +- include/linux/lsm_hook_defs.h | 2 + include/linux/lsm_hooks.h | 6 + @@ -78,7 +81,7 @@ sound/soc/sof/ops.h | 8 + sound/soc/sof/sof-pci-dev.c | 2 +- sound/soc/sof/sof-priv.h | 4 +- - 80 files changed, 2378 insertions(+), 330 deletions(-) + 83 files changed, 2404 insertions(+), 366 deletions(-) diff --git a/Documentation/ABI/testing/sysfs-platform_profile b/Documentation/ABI/testing/sysfs-platform_profile new file mode 100644 @@ -292,7 +295,7 @@ index 000000000000..c33a71263d9e + 2. Add the new profile name, along with a clear description of the + expected behaviour, to the sysfs-platform_profile ABI documentation. diff --git a/Makefile b/Makefile -index d8367e193232..d0621367191f 100644 +index 6cf79e492f72..9d762784ce21 100644 --- a/Makefile +++ b/Makefile @@ -495,6 +495,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE @@ -2390,6 +2393,64 @@ index fd5f59373fc6..8a11aa9e0318 100644 /* * Changes the default domain of an iommu group that has *only* one device * +diff --git a/drivers/net/ethernet/sfc/ef10.c b/drivers/net/ethernet/sfc/ef10.c +index da6886dcac37..4fa72b573c17 100644 +--- a/drivers/net/ethernet/sfc/ef10.c ++++ b/drivers/net/ethernet/sfc/ef10.c +@@ -2928,8 +2928,7 @@ efx_ef10_handle_tx_event(struct efx_channel *channel, efx_qword_t *event) + + /* Get the transmit queue */ + tx_ev_q_label = EFX_QWORD_FIELD(*event, ESF_DZ_TX_QLABEL); +- tx_queue = efx_channel_get_tx_queue(channel, +- tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); ++ tx_queue = channel->tx_queue + (tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); + + if (!tx_queue->timestamping) { + /* Transmit completion */ +diff --git a/drivers/net/ethernet/sfc/farch.c b/drivers/net/ethernet/sfc/farch.c +index d75cf5ff5686..49df02ecee91 100644 +--- a/drivers/net/ethernet/sfc/farch.c ++++ b/drivers/net/ethernet/sfc/farch.c +@@ -835,14 +835,14 @@ efx_farch_handle_tx_event(struct efx_channel *channel, efx_qword_t *event) + /* Transmit completion */ + tx_ev_desc_ptr = EFX_QWORD_FIELD(*event, FSF_AZ_TX_EV_DESC_PTR); + tx_ev_q_label = EFX_QWORD_FIELD(*event, FSF_AZ_TX_EV_Q_LABEL); +- tx_queue = efx_channel_get_tx_queue( +- channel, tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); ++ tx_queue = channel->tx_queue + ++ (tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); + efx_xmit_done(tx_queue, tx_ev_desc_ptr); + } else if (EFX_QWORD_FIELD(*event, FSF_AZ_TX_EV_WQ_FF_FULL)) { + /* Rewrite the FIFO write pointer */ + tx_ev_q_label = EFX_QWORD_FIELD(*event, FSF_AZ_TX_EV_Q_LABEL); +- tx_queue = efx_channel_get_tx_queue( +- channel, tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); ++ tx_queue = channel->tx_queue + ++ (tx_ev_q_label % EFX_MAX_TXQ_PER_CHANNEL); + + netif_tx_lock(efx->net_dev); + efx_farch_notify_tx_desc(tx_queue); +@@ -1081,16 +1081,16 @@ static void + efx_farch_handle_tx_flush_done(struct efx_nic *efx, efx_qword_t *event) + { + struct efx_tx_queue *tx_queue; ++ struct efx_channel *channel; + int qid; + + qid = EFX_QWORD_FIELD(*event, FSF_AZ_DRIVER_EV_SUBDATA); + if (qid < EFX_MAX_TXQ_PER_CHANNEL * (efx->n_tx_channels + efx->n_extra_tx_channels)) { +- tx_queue = efx_get_tx_queue(efx, qid / EFX_MAX_TXQ_PER_CHANNEL, +- qid % EFX_MAX_TXQ_PER_CHANNEL); +- if (atomic_cmpxchg(&tx_queue->flush_outstanding, 1, 0)) { ++ channel = efx_get_tx_channel(efx, qid / EFX_MAX_TXQ_PER_CHANNEL); ++ tx_queue = channel->tx_queue + (qid % EFX_MAX_TXQ_PER_CHANNEL); ++ if (atomic_cmpxchg(&tx_queue->flush_outstanding, 1, 0)) + efx_farch_magic_event(tx_queue->channel, + EFX_CHANNEL_MAGIC_TX_DRAIN(tx_queue)); +- } + } + } + diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig index 22c5529e9a65..259ff5ff3f24 100644 --- a/drivers/pci/controller/dwc/Kconfig @@ -3606,6 +3667,86 @@ index 7f71218cc1e5..283fc0f41cd2 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/virt/nitro_enclaves/ne_misc_dev.c b/drivers/virt/nitro_enclaves/ne_misc_dev.c +index f1964ea4b826..e21e1e86ad15 100644 +--- a/drivers/virt/nitro_enclaves/ne_misc_dev.c ++++ b/drivers/virt/nitro_enclaves/ne_misc_dev.c +@@ -1524,7 +1524,8 @@ static const struct file_operations ne_enclave_fops = { + * enclave file descriptor to be further used for enclave + * resources handling e.g. memory regions and CPUs. + * @ne_pci_dev : Private data associated with the PCI device. +- * @slot_uid: Generated unique slot id associated with an enclave. ++ * @slot_uid: User pointer to store the generated unique slot id ++ * associated with an enclave to. + * + * Context: Process context. This function is called with the ne_pci_dev enclave + * mutex held. +@@ -1532,7 +1533,7 @@ static const struct file_operations ne_enclave_fops = { + * * Enclave fd on success. + * * Negative return value on failure. + */ +-static int ne_create_vm_ioctl(struct ne_pci_dev *ne_pci_dev, u64 *slot_uid) ++static int ne_create_vm_ioctl(struct ne_pci_dev *ne_pci_dev, u64 __user *slot_uid) + { + struct ne_pci_dev_cmd_reply cmd_reply = {}; + int enclave_fd = -1; +@@ -1634,7 +1635,18 @@ static int ne_create_vm_ioctl(struct ne_pci_dev *ne_pci_dev, u64 *slot_uid) + + list_add(&ne_enclave->enclave_list_entry, &ne_pci_dev->enclaves_list); + +- *slot_uid = ne_enclave->slot_uid; ++ if (copy_to_user(slot_uid, &ne_enclave->slot_uid, sizeof(ne_enclave->slot_uid))) { ++ /* ++ * As we're holding the only reference to 'enclave_file', fput() ++ * will call ne_enclave_release() which will do a proper cleanup ++ * of all so far allocated resources, leaving only the unused fd ++ * for us to free. ++ */ ++ fput(enclave_file); ++ put_unused_fd(enclave_fd); ++ ++ return -EFAULT; ++ } + + fd_install(enclave_fd, enclave_file); + +@@ -1671,34 +1683,13 @@ static long ne_ioctl(struct file *file, unsigned int cmd, unsigned long arg) + switch (cmd) { + case NE_CREATE_VM: { + int enclave_fd = -1; +- struct file *enclave_file = NULL; + struct ne_pci_dev *ne_pci_dev = ne_devs.ne_pci_dev; +- int rc = -EINVAL; +- u64 slot_uid = 0; ++ u64 __user *slot_uid = (void __user *)arg; + + mutex_lock(&ne_pci_dev->enclaves_list_mutex); +- +- enclave_fd = ne_create_vm_ioctl(ne_pci_dev, &slot_uid); +- if (enclave_fd < 0) { +- rc = enclave_fd; +- +- mutex_unlock(&ne_pci_dev->enclaves_list_mutex); +- +- return rc; +- } +- ++ enclave_fd = ne_create_vm_ioctl(ne_pci_dev, slot_uid); + mutex_unlock(&ne_pci_dev->enclaves_list_mutex); + +- if (copy_to_user((void __user *)arg, &slot_uid, sizeof(slot_uid))) { +- enclave_file = fget(enclave_fd); +- /* Decrement file refs to have release() called. */ +- fput(enclave_file); +- fput(enclave_file); +- put_unused_fd(enclave_fd); +- +- return -EFAULT; +- } +- + return enclave_fd; + } + diff --git a/include/linux/efi.h b/include/linux/efi.h index 119262585e9b..7d67f0187c34 100644 --- a/include/linux/efi.h diff --git a/sources b/sources index 6af7c618a..e1c77c8e7 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (linux-5.11.17.tar.xz) = 4909bdf3479821ba4e4970d20bcd84c2b689bb69f318021288ad3b78f92f051a02354cfc32beb80334385d485dab652610a4dd698a25abc303df04a543dca3dd -SHA512 (kernel-abi-whitelists-5.11.17-300.tar.bz2) = 3aa51e03a4e806664e0b95576e8ce561433a9fa022cb314c197e1fc73585398daec00c601fb8ef82b19b00a19889f23c7ef1b900da325c2f48b140a95cb60583 -SHA512 (kernel-kabi-dw-5.11.17-300.tar.bz2) = 6e70d6aec94dbe333e1e4b35415a8fd307277fbe5c5c1fb652f96be5c2fb77146e4a00420f0e6a5bc723a2b201573e2ba9081b894593f2c10a0959428556ea79 +SHA512 (linux-5.11.18.tar.xz) = 05b7bb0a0653bef5c34ec5831429ebdaf00fe700b2dbc58f729c69c4c72f1adea00a29fbd70425b1bc07a462dcbb9aceefe374431897ba20afca6a90863dce2d +SHA512 (kernel-abi-whitelists-5.11.18-300.tar.bz2) = af5a85007f6bb2a91542b1fdbfc12b651dd0b3469b9dcce4f37b15783f6a68b8df6b86d7965b38a266680f2f7d48d163d140c93ea19a3dcd55b6780b9623be32 +SHA512 (kernel-kabi-dw-5.11.18-300.tar.bz2) = 10e7f20555d1cc2f8d10c9a58f22cb2e189e9bb4286d7d4ee30e58c9b95aff5ee7774bdf34b5e75d5211056b9a393d0d3fb76c610572ca6c04b8068d8ae74399 -- cgit