summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel.spec21
-rw-r--r--kvm-x86-Check-CPL-in-segmented_write_std.patch43
-rw-r--r--platform-x86-dell-laptop-Fix-keyboard-backlight-time.patch76
-rw-r--r--sources2
-rw-r--r--v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch29
5 files changed, 137 insertions, 34 deletions
diff --git a/kernel.spec b/kernel.spec
index f2785881b..dcf452120 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -58,7 +58,7 @@ Summary: The Linux kernel
%define stable_rc 0
# Do we have a -stable update to apply?
-%define stable_update 14
+%define stable_update 15
# Set rpm version accordingly
%if 0%{?stable_update}
%define stablerev %{stable_update}
@@ -663,9 +663,6 @@ Patch501: Fix-for-module-sig-verification.patch
# rhbz 1431375
Patch502: input-rmi4-remove-the-need-for-artifical-IRQ.patch
-# rhbz 1509461
-Patch503: v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
-
# In v4.17
# rhbz 1549316
Patch504: ipmi-fixes.patch
@@ -690,6 +687,12 @@ Patch513: ext4-correctly-handle-a-zero-length-xattr-with-a-non.patch
# https://www.spinics.net/lists/kernel/msg2818652.html applies cleanly to 4.17
Patch514: libata-Drop-SanDisk-SD7UB3Q-G1001-NOLPM-quirk.patch
+# CVE-2018-10853 rhbz 1589890 1589892
+Patch515: kvm-x86-Check-CPL-in-segmented_write_std.patch
+
+# https://www.spinics.net/lists/platform-driver-x86/msg15719.html
+Patch516: platform-x86-dell-laptop-Fix-keyboard-backlight-time.patch
+
# END OF PATCH DEFINITIONS
%endif
@@ -1946,6 +1949,16 @@ fi
#
#
%changelog
+* Mon Jun 11 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.15-200
+- Fix for the keyboard backlight on Dell XPS 13 9370
+- Linux v4.16.15
+
+* Mon Jun 11 2018 Justin M. Forbes <jforbes@fedoraproject.org>
+- Fix CVE-2018-10853 (rhbz 1589890 1589892)
+
+* Tue Jun 05 2018 Jeremy Cline <jcline@redhat.com> - 4.16.14-200
+- Linux v4.16.14
+
* Mon Jun 04 2018 Jeremy Cline <jeremy@jcline.org>
- Drop SanDisk SD7UB3Q*G1001 NOLPM quirk (rhbz 1583207)
diff --git a/kvm-x86-Check-CPL-in-segmented_write_std.patch b/kvm-x86-Check-CPL-in-segmented_write_std.patch
new file mode 100644
index 000000000..a0447d31c
--- /dev/null
+++ b/kvm-x86-Check-CPL-in-segmented_write_std.patch
@@ -0,0 +1,43 @@
+From patchwork Tue Jun 5 20:04:16 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: kvm: x86: Check CPL in segmented_write_std
+From: Bandan Das <bsd@redhat.com>
+X-Patchwork-Id: 10449159
+Message-Id: <jpgtvqhuhj3.fsf@linux.bootlegged.copy>
+To: kvm@vger.kernel.org
+Cc: Paolo Bonzini <pbonzini@redhat.com>,
+ Radim =?utf-8?B?S3LEjW3DocWZ?= <rkrcmar@redhat.com>,
+ Andy Lutomirski <luto@kernel.org>
+Date: Tue, 05 Jun 2018 16:04:16 -0400
+
+Certain instructions such as sgdt/sidt call segmented_write_std that
+doesn't propagate access correctly. As such, during userspace induced
+exception, the guest can incorrectly assume that the exception
+happened in the kernel and panic. The emulated write function
+segmented_write does seem to check access correctly.
+
+Reported-by: Andy Lutomirski <luto@kernel.org>
+Signed-off-by: Bandan Das <bsd@redhat.com>
+---
+ arch/x86/kvm/x86.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
+index 71e7cda6d014..871265f6a35f 100644
+--- a/arch/x86/kvm/x86.c
++++ b/arch/x86/kvm/x86.c
+@@ -4824,10 +4824,11 @@ int kvm_write_guest_virt_system(struct x86_emulate_ctxt *ctxt,
+ struct kvm_vcpu *vcpu = emul_to_vcpu(ctxt);
+ void *data = val;
+ int r = X86EMUL_CONTINUE;
++ u32 access = (kvm_x86_ops->get_cpl(vcpu) == 3) ? PFERR_USER_MASK : 0;
+
+ while (bytes) {
+ gpa_t gpa = vcpu->arch.walk_mmu->gva_to_gpa(vcpu, addr,
+- PFERR_WRITE_MASK,
++ access | PFERR_WRITE_MASK,
+ exception);
+ unsigned offset = addr & (PAGE_SIZE-1);
+ unsigned towrite = min(bytes, (unsigned)PAGE_SIZE - offset);
diff --git a/platform-x86-dell-laptop-Fix-keyboard-backlight-time.patch b/platform-x86-dell-laptop-Fix-keyboard-backlight-time.patch
new file mode 100644
index 000000000..dd6928b04
--- /dev/null
+++ b/platform-x86-dell-laptop-Fix-keyboard-backlight-time.patch
@@ -0,0 +1,76 @@
+From e6a7379fcb5702da681d7da8e9d9a2a26cc6fa85 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Timur=20Krist=C3=B3f?= <timur.kristof@gmail.com>
+Date: Fri, 1 Jun 2018 12:32:56 +0200
+Subject: [PATCH] platform/x86: dell-laptop: Fix keyboard backlight timeout on
+ XPS 13 9370
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The XPS 13 9370 doesn't expose the necessary KBD_LED_AC_TOKEN in
+the BIOS, so the driver thinks it cannot adjust the AC keyboard
+backlight timeout. This patch adds a quirk to fix this until
+Dell adds the missing token to the BIOS.
+
+For further discussion, see:
+https://github.com/dell/libsmbios/issues/48
+
+Signed-off-by: Timur Kristóf <venemo@fedoraproject.org>
+Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
+Signed-off-by: Jeremy Cline <jcline@redhat.com>
+---
+ drivers/platform/x86/dell-laptop.c | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
+index c52c6723374b..f1fa8612db40 100644
+--- a/drivers/platform/x86/dell-laptop.c
++++ b/drivers/platform/x86/dell-laptop.c
+@@ -38,6 +38,7 @@
+ struct quirk_entry {
+ bool touchpad_led;
+ bool kbd_led_levels_off_1;
++ bool kbd_missing_ac_tag;
+
+ bool needs_kbd_timeouts;
+ /*
+@@ -68,6 +69,10 @@ static struct quirk_entry quirk_dell_xps13_9333 = {
+ .kbd_timeouts = { 0, 5, 15, 60, 5 * 60, 15 * 60, -1 },
+ };
+
++static struct quirk_entry quirk_dell_xps13_9370 = {
++ .kbd_missing_ac_tag = true,
++};
++
+ static struct quirk_entry quirk_dell_latitude_e6410 = {
+ .kbd_led_levels_off_1 = true,
+ };
+@@ -291,6 +296,15 @@ static const struct dmi_system_id dell_quirks[] __initconst = {
+ },
+ .driver_data = &quirk_dell_xps13_9333,
+ },
++ {
++ .callback = dmi_matched,
++ .ident = "Dell XPS 13 9370",
++ .matches = {
++ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
++ DMI_MATCH(DMI_PRODUCT_NAME, "XPS 13 9370"),
++ },
++ .driver_data = &quirk_dell_xps13_9370,
++ },
+ {
+ .callback = dmi_matched,
+ .ident = "Dell Latitude E6410",
+@@ -1401,7 +1415,8 @@ static inline int kbd_init_info(void)
+ * timeout value which is shared for both battery and AC power
+ * settings. So do not try to set AC values on old models.
+ */
+- if (dell_smbios_find_token(KBD_LED_AC_TOKEN))
++ if ((quirks && quirks->kbd_missing_ac_tag) ||
++ dell_smbios_find_token(KBD_LED_AC_TOKEN))
+ kbd_timeout_ac_supported = true;
+
+ kbd_get_state(&state);
+--
+2.17.1
+
diff --git a/sources b/sources
index 0a7004ae1..c2dd22c09 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
SHA512 (linux-4.16.tar.xz) = ab47849314b177d0eec9dbf261f33972b0d89fb92fb0650130ffa7abc2f36c0fab2d06317dc1683c51a472a9a631573a9b1e7258d6281a2ee189897827f14662
-SHA512 (patch-4.16.14.xz) = 5141b66352e6560058ab857e00ba72c84796e135d30cae6398de8e7cf9dfcf266fb581008d2209b0dc20d7dbbcd4e65296557acd3c806fb057dfb55850cd3975
+SHA512 (patch-4.16.15.xz) = 496a8a85758b4bae9b3082c45d7e9c8a87bd10a8a2ffbb086f96b83e0ed2e3449ebe8bdd50d138219a55c96a93dd87c9d4802dc0962112e8e78115de77d3c363
diff --git a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch b/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
deleted file mode 100644
index a37b15ec7..000000000
--- a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From patchwork Sun Nov 5 17:09:51 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v3,2/2] Input: synaptics - Lenovo X1 Carbon 5 should use SMBUS/RMI
-From: Yiannis Marangos <yiannis.marangos@gmail.com>
-X-Patchwork-Id: 10042387
-Message-Id: <20171105170951.20261-3-yiannis.marangos@gmail.com>
-To: linux-input@vger.kernel.org, dmitry.torokhov@gmail.com
-Cc: Yiannis Marangos <yiannis.marangos@gmail.com>
-Date: Sun, 5 Nov 2017 19:09:51 +0200
-
-Signed-off-by: Yiannis Marangos <yiannis.marangos@gmail.com>
----
- drivers/input/mouse/synaptics.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
-index ee5466a374bf..b3c683a84d3f 100644
---- a/drivers/input/mouse/synaptics.c
-+++ b/drivers/input/mouse/synaptics.c
-@@ -172,6 +172,7 @@ static const char * const smbus_pnp_ids[] = {
- "LEN0048", /* X1 Carbon 3 */
- "LEN0046", /* X250 */
- "LEN004a", /* W541 */
-+ "LEN0073", /* X1 Carbon 5 */
- "LEN200f", /* T450s */
- NULL
- };