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;
+ }
+ 

Reply via email to