From: Greg Kroah-Hartman Date: Sun, 5 Feb 2017 07:36:43 +0000 (+0100) Subject: 4.4-stable patches X-Git-Tag: v3.18.48~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=303d4a121db22e783e2ea8586d2429683c6ecfb3;p=thirdparty%2Fkernel%2Fstable-queue.git 4.4-stable patches added patches: kvm-x86-do-not-save-guest-unsupported-xsave-state.patch usb-add-quirk-for-worlde-easykey.25-midi-keyboard.patch usb-serial-pl2303-add-aten-device-id.patch usb-serial-qcserial-add-dell-dw5570-qdl.patch --- diff --git a/queue-4.4/kvm-x86-do-not-save-guest-unsupported-xsave-state.patch b/queue-4.4/kvm-x86-do-not-save-guest-unsupported-xsave-state.patch new file mode 100644 index 00000000000..bd3f026fc78 --- /dev/null +++ b/queue-4.4/kvm-x86-do-not-save-guest-unsupported-xsave-state.patch @@ -0,0 +1,39 @@ +From 00c87e9a70a17b355b81c36adedf05e84f54e10d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= +Date: Wed, 1 Feb 2017 14:19:53 +0100 +Subject: KVM: x86: do not save guest-unsupported XSAVE state +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Radim Krčmář + +commit 00c87e9a70a17b355b81c36adedf05e84f54e10d upstream. + +Saving unsupported state prevents migration when the new host does not +support a XSAVE feature of the original host, even if the feature is not +exposed to the guest. + +We've masked host features with guest-visible features before, with +4344ee981e21 ("KVM: x86: only copy XSAVE state for the supported +features") and dropped it when implementing XSAVES. Do it again. + +Fixes: df1daba7d1cb ("KVM: x86: support XSAVES usage in the host") +Reviewed-by: Paolo Bonzini +Signed-off-by: Radim Krčmář +Signed-off-by: Greg Kroah-Hartman + +--- + arch/x86/kvm/x86.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/x86/kvm/x86.c ++++ b/arch/x86/kvm/x86.c +@@ -3057,6 +3057,7 @@ static void fill_xsave(u8 *dest, struct + memcpy(dest, xsave, XSAVE_HDR_OFFSET); + + /* Set XSTATE_BV */ ++ xstate_bv &= vcpu->arch.guest_supported_xcr0 | XFEATURE_MASK_FPSSE; + *(u64 *)(dest + XSAVE_HDR_OFFSET) = xstate_bv; + + /* diff --git a/queue-4.4/series b/queue-4.4/series index 624319e3ecf..e852b92f935 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -20,3 +20,7 @@ can-bcm-fix-hrtimer-tasklet-termination-in-bcm-op-removal.patch mmc-sdhci-ignore-unexpected-card_int-interrupts.patch percpu-refcount-fix-reference-leak-during-percpu-atomic-transition.patch hid-wacom-fix-poor-prox-handling-in-wacom_pl_irq.patch +kvm-x86-do-not-save-guest-unsupported-xsave-state.patch +usb-serial-qcserial-add-dell-dw5570-qdl.patch +usb-serial-pl2303-add-aten-device-id.patch +usb-add-quirk-for-worlde-easykey.25-midi-keyboard.patch diff --git a/queue-4.4/usb-add-quirk-for-worlde-easykey.25-midi-keyboard.patch b/queue-4.4/usb-add-quirk-for-worlde-easykey.25-midi-keyboard.patch new file mode 100644 index 00000000000..2ad543c59ff --- /dev/null +++ b/queue-4.4/usb-add-quirk-for-worlde-easykey.25-midi-keyboard.patch @@ -0,0 +1,107 @@ +From d9b2997e4a0a874e452df7cdd7de5a54502bd0aa Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Lalinsk=C3=BD?= +Date: Fri, 20 Jan 2017 19:46:34 +0100 +Subject: USB: Add quirk for WORLDE easykey.25 MIDI keyboard +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Lukáš Lalinský + +commit d9b2997e4a0a874e452df7cdd7de5a54502bd0aa upstream. + +Add a quirk for WORLDE easykey.25 MIDI keyboard (idVendor=0218, +idProduct=0401). The device reports that it has config string +descriptor at index 3, but when the system selects the configuration +and tries to get the description, it returns a -EPROTO error, +the communication restarts and this keeps repeating over and over again. +Not requesting the string descriptor makes the device work correctly. + +Relevant info from Wireshark: + +[...] + +CONFIGURATION DESCRIPTOR + bLength: 9 + bDescriptorType: 0x02 (CONFIGURATION) + wTotalLength: 101 + bNumInterfaces: 2 + bConfigurationValue: 1 + iConfiguration: 3 + Configuration bmAttributes: 0xc0 SELF-POWERED NO REMOTE-WAKEUP + 1... .... = Must be 1: Must be 1 for USB 1.1 and higher + .1.. .... = Self-Powered: This device is SELF-POWERED + ..0. .... = Remote Wakeup: This device does NOT support remote wakeup + bMaxPower: 50 (100mA) + +[...] + + 45 0.369104 host 2.38.0 USB 64 GET DESCRIPTOR Request STRING + +[...] + +URB setup + bmRequestType: 0x80 + 1... .... = Direction: Device-to-host + .00. .... = Type: Standard (0x00) + ...0 0000 = Recipient: Device (0x00) + bRequest: GET DESCRIPTOR (6) + Descriptor Index: 0x03 + bDescriptorType: 0x03 + Language Id: English (United States) (0x0409) + wLength: 255 + + 46 0.369255 2.38.0 host USB 64 GET DESCRIPTOR Response STRING[Malformed Packet] + +[...] + +Frame 46: 64 bytes on wire (512 bits), 64 bytes captured (512 bits) on interface 0 +USB URB + [Source: 2.38.0] + [Destination: host] + URB id: 0xffff88021f62d480 + URB type: URB_COMPLETE ('C') + URB transfer type: URB_CONTROL (0x02) + Endpoint: 0x80, Direction: IN + Device: 38 + URB bus id: 2 + Device setup request: not relevant ('-') + Data: present (0) + URB sec: 1484896277 + URB usec: 455031 + URB status: Protocol error (-EPROTO) (-71) + URB length [bytes]: 0 + Data length [bytes]: 0 + [Request in: 45] + [Time from request: 0.000151000 seconds] + Unused Setup Header + Interval: 0 + Start frame: 0 + Copy of Transfer Flags: 0x00000200 + Number of ISO descriptors: 0 +[Malformed Packet: USB] + [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)] + [Malformed Packet (Exception occurred)] + [Severity level: Error] + [Group: Malformed] + +Signed-off-by: Lukáš Lalinský +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/usb/core/quirks.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/drivers/usb/core/quirks.c ++++ b/drivers/usb/core/quirks.c +@@ -37,6 +37,10 @@ static const struct usb_device_id usb_qu + /* CBM - Flash disk */ + { USB_DEVICE(0x0204, 0x6025), .driver_info = USB_QUIRK_RESET_RESUME }, + ++ /* WORLDE easy key (easykey.25) MIDI controller */ ++ { USB_DEVICE(0x0218, 0x0401), .driver_info = ++ USB_QUIRK_CONFIG_INTF_STRINGS }, ++ + /* HP 5300/5370C scanner */ + { USB_DEVICE(0x03f0, 0x0701), .driver_info = + USB_QUIRK_STRING_FETCH_255 }, diff --git a/queue-4.4/usb-serial-pl2303-add-aten-device-id.patch b/queue-4.4/usb-serial-pl2303-add-aten-device-id.patch new file mode 100644 index 00000000000..dfbb3005c96 --- /dev/null +++ b/queue-4.4/usb-serial-pl2303-add-aten-device-id.patch @@ -0,0 +1,42 @@ +From d07830db1bdb254e4b50d366010b219286b8c937 Mon Sep 17 00:00:00 2001 +From: "Marcel J.E. Mol" +Date: Mon, 30 Jan 2017 19:26:40 +0100 +Subject: USB: serial: pl2303: add ATEN device ID + +From: Marcel J.E. Mol + +commit d07830db1bdb254e4b50d366010b219286b8c937 upstream. + +Seems that ATEN serial-to-usb devices using pl2303 exist with +different device ids. This patch adds a missing device ID so it +is recognised by the driver. + +Signed-off-by: Marcel J.E. Mol +Signed-off-by: Johan Hovold +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/usb/serial/pl2303.c | 1 + + drivers/usb/serial/pl2303.h | 1 + + 2 files changed, 2 insertions(+) + +--- a/drivers/usb/serial/pl2303.c ++++ b/drivers/usb/serial/pl2303.c +@@ -49,6 +49,7 @@ static const struct usb_device_id id_tab + { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID) }, + { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID_RSAQ5) }, + { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID) }, ++ { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID2) }, + { USB_DEVICE(ATEN_VENDOR_ID2, ATEN_PRODUCT_ID) }, + { USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID) }, + { USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID_UCSGT) }, +--- a/drivers/usb/serial/pl2303.h ++++ b/drivers/usb/serial/pl2303.h +@@ -27,6 +27,7 @@ + #define ATEN_VENDOR_ID 0x0557 + #define ATEN_VENDOR_ID2 0x0547 + #define ATEN_PRODUCT_ID 0x2008 ++#define ATEN_PRODUCT_ID2 0x2118 + + #define IODATA_VENDOR_ID 0x04bb + #define IODATA_PRODUCT_ID 0x0a03 diff --git a/queue-4.4/usb-serial-qcserial-add-dell-dw5570-qdl.patch b/queue-4.4/usb-serial-qcserial-add-dell-dw5570-qdl.patch new file mode 100644 index 00000000000..0028d311370 --- /dev/null +++ b/queue-4.4/usb-serial-qcserial-add-dell-dw5570-qdl.patch @@ -0,0 +1,32 @@ +From 24d615a694d649aa2e167c3f97f62bdad07e3f84 Mon Sep 17 00:00:00 2001 +From: Aleksander Morgado +Date: Wed, 18 Jan 2017 21:31:31 +0100 +Subject: USB: serial: qcserial: add Dell DW5570 QDL + +From: Aleksander Morgado + +commit 24d615a694d649aa2e167c3f97f62bdad07e3f84 upstream. + +The Dell DW5570 is a re-branded Sierra Wireless MC8805 which will by +default boot with vid 0x413c and pid 0x81a3. When triggered QDL download +mode, the device switches to pid 0x81a6 and provides the standard TTY +used for firmware upgrade. + +Signed-off-by: Aleksander Morgado +Signed-off-by: Johan Hovold +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/usb/serial/qcserial.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/usb/serial/qcserial.c ++++ b/drivers/usb/serial/qcserial.c +@@ -124,6 +124,7 @@ static const struct usb_device_id id_tab + {USB_DEVICE(0x1410, 0xa021)}, /* Novatel Gobi 3000 Composite */ + {USB_DEVICE(0x413c, 0x8193)}, /* Dell Gobi 3000 QDL */ + {USB_DEVICE(0x413c, 0x8194)}, /* Dell Gobi 3000 Composite */ ++ {USB_DEVICE(0x413c, 0x81a6)}, /* Dell DW5570 QDL (MC8805) */ + {USB_DEVICE(0x1199, 0x68a4)}, /* Sierra Wireless QDL */ + {USB_DEVICE(0x1199, 0x68a5)}, /* Sierra Wireless Modem */ + {USB_DEVICE(0x1199, 0x68a8)}, /* Sierra Wireless QDL */