commit: 1543a4ff033001d8fec13c3222bdb05883fb220d Author: Mike Pagano <mpagano <AT> gentoo <DOT> org> AuthorDate: Wed Jul 7 13:12:02 2021 +0000 Commit: Mike Pagano <mpagano <AT> gentoo <DOT> org> CommitDate: Wed Jul 7 13:12:02 2021 +0000 URL: https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=1543a4ff
Linuxpatch 5.12.15 Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org> 0000_README | 4 ++ 1014_linux-5.12.15.patch | 126 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+) diff --git a/0000_README b/0000_README index 96f1ac7..7954680 100644 --- a/0000_README +++ b/0000_README @@ -99,6 +99,10 @@ Patch: 1013_linux-5.12.14.patch From: http://www.kernel.org Desc: Linux 5.12.14 +Patch: 1014_linux-5.12.15.patch +From: http://www.kernel.org +Desc: Linux 5.12.15 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1014_linux-5.12.15.patch b/1014_linux-5.12.15.patch new file mode 100644 index 0000000..a027bec --- /dev/null +++ b/1014_linux-5.12.15.patch @@ -0,0 +1,126 @@ +diff --git a/Makefile b/Makefile +index 433f164f9ee0f..09e1a0967bab7 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,7 +1,7 @@ + # SPDX-License-Identifier: GPL-2.0 + VERSION = 5 + PATCHLEVEL = 12 +-SUBLEVEL = 14 ++SUBLEVEL = 15 + EXTRAVERSION = + NAME = Frozen Wasteland + +diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h +index eec2dcca2f390..ac7c786fa09f9 100644 +--- a/arch/x86/include/asm/kvm_host.h ++++ b/arch/x86/include/asm/kvm_host.h +@@ -307,6 +307,7 @@ union kvm_mmu_extended_role { + unsigned int cr4_pke:1; + unsigned int cr4_smap:1; + unsigned int cr4_smep:1; ++ unsigned int cr4_la57:1; + unsigned int maxphyaddr:6; + }; + }; +diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c +index 676ec0d1e6be4..fb2231cf19b5d 100644 +--- a/arch/x86/kvm/mmu/mmu.c ++++ b/arch/x86/kvm/mmu/mmu.c +@@ -4463,6 +4463,7 @@ static union kvm_mmu_extended_role kvm_calc_mmu_role_ext(struct kvm_vcpu *vcpu) + ext.cr4_smap = !!kvm_read_cr4_bits(vcpu, X86_CR4_SMAP); + ext.cr4_pse = !!is_pse(vcpu); + ext.cr4_pke = !!kvm_read_cr4_bits(vcpu, X86_CR4_PKE); ++ ext.cr4_la57 = !!kvm_read_cr4_bits(vcpu, X86_CR4_LA57); + ext.maxphyaddr = cpuid_maxphyaddr(vcpu); + + ext.valid = 1; +diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig +index e3607ec4c2e83..fb365aef336b5 100644 +--- a/drivers/gpio/Kconfig ++++ b/drivers/gpio/Kconfig +@@ -1361,6 +1361,7 @@ config GPIO_TPS68470 + config GPIO_TQMX86 + tristate "TQ-Systems QTMX86 GPIO" + depends on MFD_TQMX86 || COMPILE_TEST ++ depends on HAS_IOPORT_MAP + select GPIOLIB_IRQCHIP + help + This driver supports GPIO on the TQMX86 IO controller. +@@ -1428,6 +1429,7 @@ menu "PCI GPIO expanders" + config GPIO_AMD8111 + tristate "AMD 8111 GPIO driver" + depends on X86 || COMPILE_TEST ++ depends on HAS_IOPORT_MAP + help + The AMD 8111 south bridge contains 32 GPIO pins which can be used. + +diff --git a/drivers/gpio/gpio-mxc.c b/drivers/gpio/gpio-mxc.c +index 157106e1e4381..b9fdf05d76694 100644 +--- a/drivers/gpio/gpio-mxc.c ++++ b/drivers/gpio/gpio-mxc.c +@@ -334,7 +334,7 @@ static int mxc_gpio_init_gc(struct mxc_gpio_port *port, int irq_base) + ct->chip.irq_unmask = irq_gc_mask_set_bit; + ct->chip.irq_set_type = gpio_set_irq_type; + ct->chip.irq_set_wake = gpio_set_wake_irq; +- ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND; ++ ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND; + ct->regs.ack = GPIO_ISR; + ct->regs.mask = GPIO_IMR; + +diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c +index f2720a0061993..0a47a2a5553d1 100644 +--- a/drivers/gpu/drm/nouveau/nouveau_bo.c ++++ b/drivers/gpu/drm/nouveau/nouveau_bo.c +@@ -549,7 +549,7 @@ nouveau_bo_sync_for_device(struct nouveau_bo *nvbo) + struct ttm_tt *ttm_dma = (struct ttm_tt *)nvbo->bo.ttm; + int i, j; + +- if (!ttm_dma) ++ if (!ttm_dma || !ttm_dma->dma_address) + return; + if (!ttm_dma->pages) { + NV_DEBUG(drm, "ttm_dma 0x%p: pages NULL\n", ttm_dma); +@@ -585,7 +585,7 @@ nouveau_bo_sync_for_cpu(struct nouveau_bo *nvbo) + struct ttm_tt *ttm_dma = (struct ttm_tt *)nvbo->bo.ttm; + int i, j; + +- if (!ttm_dma) ++ if (!ttm_dma || !ttm_dma->dma_address) + return; + if (!ttm_dma->pages) { + NV_DEBUG(drm, "ttm_dma 0x%p: pages NULL\n", ttm_dma); +diff --git a/drivers/s390/crypto/vfio_ap_ops.c b/drivers/s390/crypto/vfio_ap_ops.c +index 6946a7e26eff7..ef5e792c665fd 100644 +--- a/drivers/s390/crypto/vfio_ap_ops.c ++++ b/drivers/s390/crypto/vfio_ap_ops.c +@@ -366,16 +366,6 @@ static int vfio_ap_mdev_remove(struct mdev_device *mdev) + struct ap_matrix_mdev *matrix_mdev = mdev_get_drvdata(mdev); + + mutex_lock(&matrix_dev->lock); +- +- /* +- * If the KVM pointer is in flux or the guest is running, disallow +- * un-assignment of control domain. +- */ +- if (matrix_mdev->kvm_busy || matrix_mdev->kvm) { +- mutex_unlock(&matrix_dev->lock); +- return -EBUSY; +- } +- + vfio_ap_mdev_reset_queues(mdev); + list_del(&matrix_mdev->node); + kfree(matrix_mdev); +diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c +index e4633b84c556a..7815ed642d434 100644 +--- a/drivers/scsi/sr.c ++++ b/drivers/scsi/sr.c +@@ -220,6 +220,8 @@ static unsigned int sr_get_events(struct scsi_device *sdev) + return DISK_EVENT_EJECT_REQUEST; + else if (med->media_event_code == 2) + return DISK_EVENT_MEDIA_CHANGE; ++ else if (med->media_event_code == 3) ++ return DISK_EVENT_EJECT_REQUEST; + return 0; + } +
