From acfd2b6408bef69010f3e6f67d3f341a27bb96f9 Mon Sep 17 00:00:00 2001 From: Jan200101 Date: Sat, 8 May 2021 11:37:08 +0200 Subject: kernel 5.11.18 --- SOURCES/Patchlist.changelog | 12 ++ SOURCES/kernel-aarch64-debug-fedora.config | 4 +- SOURCES/kernel-aarch64-fedora.config | 4 +- SOURCES/kernel-armv7hl-debug-fedora.config | 4 +- SOURCES/kernel-armv7hl-fedora.config | 4 +- SOURCES/kernel-armv7hl-lpae-debug-fedora.config | 4 +- SOURCES/kernel-armv7hl-lpae-fedora.config | 4 +- SOURCES/kernel-i686-debug-fedora.config | 4 +- SOURCES/kernel-i686-fedora.config | 4 +- SOURCES/kernel-ppc64le-debug-fedora.config | 4 +- SOURCES/kernel-ppc64le-fedora.config | 4 +- SOURCES/kernel-s390x-debug-fedora.config | 4 +- SOURCES/kernel-s390x-fedora.config | 4 +- SOURCES/kernel-x86_64-debug-fedora.config | 4 +- SOURCES/kernel-x86_64-fedora.config | 4 +- SOURCES/patch-5.11-redhat.patch | 145 +++++++++++++++++++++++- 16 files changed, 197 insertions(+), 16 deletions(-) (limited to 'SOURCES') diff --git a/SOURCES/Patchlist.changelog b/SOURCES/Patchlist.changelog index 5116d4e..25e02ea 100644 --- a/SOURCES/Patchlist.changelog +++ b/SOURCES/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/SOURCES/kernel-aarch64-debug-fedora.config b/SOURCES/kernel-aarch64-debug-fedora.config index 0079eb5..b5b1d30 100644 --- a/SOURCES/kernel-aarch64-debug-fedora.config +++ b/SOURCES/kernel-aarch64-debug-fedora.config @@ -4065,7 +4065,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 @@ -4107,7 +4107,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/SOURCES/kernel-aarch64-fedora.config b/SOURCES/kernel-aarch64-fedora.config index c7ceca3..fef52fe 100644 --- a/SOURCES/kernel-aarch64-fedora.config +++ b/SOURCES/kernel-aarch64-fedora.config @@ -4042,7 +4042,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 @@ -4084,7 +4084,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/SOURCES/kernel-armv7hl-debug-fedora.config b/SOURCES/kernel-armv7hl-debug-fedora.config index fa77e38..0e2b2b4 100644 --- a/SOURCES/kernel-armv7hl-debug-fedora.config +++ b/SOURCES/kernel-armv7hl-debug-fedora.config @@ -4148,7 +4148,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 @@ -4194,7 +4194,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/SOURCES/kernel-armv7hl-fedora.config b/SOURCES/kernel-armv7hl-fedora.config index 85334ae..a035b54 100644 --- a/SOURCES/kernel-armv7hl-fedora.config +++ b/SOURCES/kernel-armv7hl-fedora.config @@ -4126,7 +4126,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 @@ -4172,7 +4172,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/SOURCES/kernel-armv7hl-lpae-debug-fedora.config b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config index 177f0d5..418bdb5 100644 --- a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config +++ b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config @@ -4048,7 +4048,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 @@ -4093,7 +4093,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/SOURCES/kernel-armv7hl-lpae-fedora.config b/SOURCES/kernel-armv7hl-lpae-fedora.config index 2a23f34..9a3d776 100644 --- a/SOURCES/kernel-armv7hl-lpae-fedora.config +++ b/SOURCES/kernel-armv7hl-lpae-fedora.config @@ -4026,7 +4026,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 @@ -4071,7 +4071,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/SOURCES/kernel-i686-debug-fedora.config b/SOURCES/kernel-i686-debug-fedora.config index e63cf6e..13702ee 100644 --- a/SOURCES/kernel-i686-debug-fedora.config +++ b/SOURCES/kernel-i686-debug-fedora.config @@ -3701,7 +3701,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 @@ -3734,7 +3734,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/SOURCES/kernel-i686-fedora.config b/SOURCES/kernel-i686-fedora.config index 53a47a2..efc6c40 100644 --- a/SOURCES/kernel-i686-fedora.config +++ b/SOURCES/kernel-i686-fedora.config @@ -3679,7 +3679,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 @@ -3712,7 +3712,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/SOURCES/kernel-ppc64le-debug-fedora.config b/SOURCES/kernel-ppc64le-debug-fedora.config index 7b2d93f..ca3437f 100644 --- a/SOURCES/kernel-ppc64le-debug-fedora.config +++ b/SOURCES/kernel-ppc64le-debug-fedora.config @@ -3430,7 +3430,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 @@ -3464,7 +3464,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/SOURCES/kernel-ppc64le-fedora.config b/SOURCES/kernel-ppc64le-fedora.config index 8b61519..ebd92ef 100644 --- a/SOURCES/kernel-ppc64le-fedora.config +++ b/SOURCES/kernel-ppc64le-fedora.config @@ -3407,7 +3407,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 @@ -3441,7 +3441,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/SOURCES/kernel-s390x-debug-fedora.config b/SOURCES/kernel-s390x-debug-fedora.config index a138349..abb1dfd 100644 --- a/SOURCES/kernel-s390x-debug-fedora.config +++ b/SOURCES/kernel-s390x-debug-fedora.config @@ -3403,7 +3403,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 @@ -3435,7 +3435,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/SOURCES/kernel-s390x-fedora.config b/SOURCES/kernel-s390x-fedora.config index 4b52494..4a286fd 100644 --- a/SOURCES/kernel-s390x-fedora.config +++ b/SOURCES/kernel-s390x-fedora.config @@ -3380,7 +3380,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 @@ -3412,7 +3412,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/SOURCES/kernel-x86_64-debug-fedora.config b/SOURCES/kernel-x86_64-debug-fedora.config index a87fc84..fdd727b 100644 --- a/SOURCES/kernel-x86_64-debug-fedora.config +++ b/SOURCES/kernel-x86_64-debug-fedora.config @@ -3740,7 +3740,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 @@ -3772,7 +3772,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/SOURCES/kernel-x86_64-fedora.config b/SOURCES/kernel-x86_64-fedora.config index 1699ef1..b52cd73 100644 --- a/SOURCES/kernel-x86_64-fedora.config +++ b/SOURCES/kernel-x86_64-fedora.config @@ -3718,7 +3718,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 @@ -3750,7 +3750,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/SOURCES/patch-5.11-redhat.patch b/SOURCES/patch-5.11-redhat.patch index d0b8f02..d0bbeea 100644 --- a/SOURCES/patch-5.11-redhat.patch +++ b/SOURCES/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 -- cgit v1.2.3