From 924a3cf38bf0002d4fa76fb09c7dbbf97516b8c2 Mon Sep 17 00:00:00 2001 From: Justin M. Forbes Date: Apr 01 2014 03:06:38 +0000 Subject: Linux v3.13.8 --- diff --git a/0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch b/0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch deleted file mode 100644 index f86cc1f..0000000 --- a/0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch +++ /dev/null @@ -1,56 +0,0 @@ -Bugzilla: 1046238 -Upstream-status: Queued for 3.14 - -From 1d0d6df02750b4a6f466768cbfbf860e24f4c8d4 Mon Sep 17 00:00:00 2001 -From: Ping Cheng -Date: Mon, 25 Nov 2013 18:43:45 -0800 -Subject: [PATCH] Input: wacom - make sure touch_max is set for touch devices - -Old single touch Tablet PCs do not have touch_max set at -wacom_features. Since touch device at lease supports one -finger, assign touch_max to 1 when touch usage is defined -in its HID Descriptor and touch_max is not pre-defined. - -Tested-by: Jason Gerecke -Signed-off-by: Ping Cheng -Reviewed-by: Chris Bagwell -Signed-off-by: Dmitry Torokhov ---- - drivers/input/tablet/wacom_sys.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c -index 8a90da1..3d71b60 100644 ---- a/drivers/input/tablet/wacom_sys.c -+++ b/drivers/input/tablet/wacom_sys.c -@@ -304,7 +304,7 @@ static int wacom_parse_hid(struct usb_interface *intf, - struct usb_device *dev = interface_to_usbdev(intf); - char limit = 0; - /* result has to be defined as int for some devices */ -- int result = 0; -+ int result = 0, touch_max = 0; - int i = 0, usage = WCM_UNDEFINED, finger = 0, pen = 0; - unsigned char *report; - -@@ -351,7 +351,8 @@ static int wacom_parse_hid(struct usb_interface *intf, - if (usage == WCM_DESKTOP) { - if (finger) { - features->device_type = BTN_TOOL_FINGER; -- -+ /* touch device at least supports one touch point */ -+ touch_max = 1; - switch (features->type) { - case TABLETPC2FG: - features->pktlen = WACOM_PKGLEN_TPC2FG; -@@ -504,6 +505,8 @@ static int wacom_parse_hid(struct usb_interface *intf, - } - - out: -+ if (!features->touch_max && touch_max) -+ features->touch_max = touch_max; - result = 0; - kfree(report); - return result; --- -1.8.4.2 - diff --git a/0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch b/0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch deleted file mode 100644 index 0c2161f..0000000 --- a/0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch +++ /dev/null @@ -1,216 +0,0 @@ -Bugzilla: 1046238 -Upstream-status: Queued for 3.14 - -From b5fd2a3e92ca5c8c1f3c20d31ac5daed3ec4d604 Mon Sep 17 00:00:00 2001 -From: Ping Cheng -Date: Mon, 25 Nov 2013 18:44:55 -0800 -Subject: [PATCH] Input: wacom - add support for three new Intuos devices - -Two tablets in this series support both pen and touch. One (Intuos S) -only supports pen. This patch also updates the driver to process wireless -devices that do not support touch interface. - -Tested-by: Jason Gerecke -Reviewed-by: Chris Bagwell -Signed-off-by: Ping Cheng -Signed-off-by: Dmitry Torokhov ---- - drivers/input/tablet/wacom_sys.c | 6 ++-- - drivers/input/tablet/wacom_wac.c | 61 ++++++++++++++++++++++++++++++---------- - drivers/input/tablet/wacom_wac.h | 2 ++ - 3 files changed, 51 insertions(+), 18 deletions(-) - -diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c -index 3d71b60..3a7d99c 100644 ---- a/drivers/input/tablet/wacom_sys.c -+++ b/drivers/input/tablet/wacom_sys.c -@@ -1198,7 +1198,8 @@ static void wacom_wireless_work(struct work_struct *work) - goto fail; - - /* Touch interface */ -- if (wacom_wac1->features.touch_max) { -+ if (wacom_wac1->features.touch_max || -+ wacom_wac1->features.type == INTUOSHT) { - wacom_wac2->features = - *((struct wacom_features *)id->driver_info); - wacom_wac2->features.pktlen = WACOM_PKGLEN_BBTOUCH3; -@@ -1321,7 +1322,7 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i - * HID descriptor. If this is the touch interface (wMaxPacketSize - * of WACOM_PKGLEN_BBTOUCH3), override the table values. - */ -- if (features->type >= INTUOS5S && features->type <= INTUOSPL) { -+ if (features->type >= INTUOS5S && features->type <= INTUOSHT) { - if (endpoint->wMaxPacketSize == WACOM_PKGLEN_BBTOUCH3) { - features->device_type = BTN_TOOL_FINGER; - features->pktlen = WACOM_PKGLEN_BBTOUCH3; -@@ -1391,7 +1392,6 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i - goto fail5; - } - } -- - return 0; - - fail5: wacom_destroy_leds(wacom); -diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c -index 3f75f1d..eb60a28 100644 ---- a/drivers/input/tablet/wacom_wac.c -+++ b/drivers/input/tablet/wacom_wac.c -@@ -1176,10 +1176,16 @@ static void wacom_bpt3_touch_msg(struct wacom_wac *wacom, unsigned char *data) - static void wacom_bpt3_button_msg(struct wacom_wac *wacom, unsigned char *data) - { - struct input_dev *input = wacom->input; -+ struct wacom_features *features = &wacom->features; - -- input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0); -+ if (features->type == INTUOSHT) { -+ input_report_key(input, BTN_LEFT, (data[1] & 0x02) != 0); -+ input_report_key(input, BTN_BACK, (data[1] & 0x08) != 0); -+ } else { -+ input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0); -+ input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0); -+ } - input_report_key(input, BTN_FORWARD, (data[1] & 0x04) != 0); -- input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0); - input_report_key(input, BTN_RIGHT, (data[1] & 0x01) != 0); - } - -@@ -1217,7 +1223,7 @@ static int wacom_bpt_pen(struct wacom_wac *wacom) - unsigned char *data = wacom->data; - int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0; - -- if (data[0] != 0x02) -+ if (data[0] != WACOM_REPORT_PENABLED) - return 0; - - prox = (data[1] & 0x20) == 0x20; -@@ -1297,7 +1303,7 @@ static int wacom_wireless_irq(struct wacom_wac *wacom, size_t len) - unsigned char *data = wacom->data; - int connected; - -- if (len != WACOM_PKGLEN_WIRELESS || data[0] != 0x80) -+ if (len != WACOM_PKGLEN_WIRELESS || data[0] != WACOM_REPORT_WL) - return 0; - - connected = data[1] & 0x01; -@@ -1391,6 +1397,7 @@ void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len) - break; - - case BAMBOO_PT: -+ case INTUOSHT: - sync = wacom_bpt_irq(wacom_wac, len); - break; - -@@ -1459,7 +1466,7 @@ void wacom_setup_device_quirks(struct wacom_features *features) - - /* these device have multiple inputs */ - if (features->type >= WIRELESS || -- (features->type >= INTUOS5S && features->type <= INTUOSPL) || -+ (features->type >= INTUOS5S && features->type <= INTUOSHT) || - (features->oVid && features->oPid)) - features->quirks |= WACOM_QUIRK_MULTI_INPUT; - -@@ -1771,33 +1778,43 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev, - __set_bit(INPUT_PROP_POINTER, input_dev->propbit); - break; - -+ case INTUOSHT: - case BAMBOO_PT: - __clear_bit(ABS_MISC, input_dev->absbit); - -- __set_bit(INPUT_PROP_POINTER, input_dev->propbit); -- - if (features->device_type == BTN_TOOL_FINGER) { -- unsigned int flags = INPUT_MT_POINTER; - - __set_bit(BTN_LEFT, input_dev->keybit); - __set_bit(BTN_FORWARD, input_dev->keybit); - __set_bit(BTN_BACK, input_dev->keybit); - __set_bit(BTN_RIGHT, input_dev->keybit); - -- if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) { -- input_set_abs_params(input_dev, -+ if (features->touch_max) { -+ /* touch interface */ -+ unsigned int flags = INPUT_MT_POINTER; -+ -+ __set_bit(INPUT_PROP_POINTER, input_dev->propbit); -+ if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) { -+ input_set_abs_params(input_dev, - ABS_MT_TOUCH_MAJOR, - 0, features->x_max, 0, 0); -- input_set_abs_params(input_dev, -+ input_set_abs_params(input_dev, - ABS_MT_TOUCH_MINOR, - 0, features->y_max, 0, 0); -+ } else { -+ __set_bit(BTN_TOOL_FINGER, input_dev->keybit); -+ __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit); -+ flags = 0; -+ } -+ input_mt_init_slots(input_dev, features->touch_max, flags); - } else { -- __set_bit(BTN_TOOL_FINGER, input_dev->keybit); -- __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit); -- flags = 0; -+ /* buttons/keys only interface */ -+ __clear_bit(ABS_X, input_dev->absbit); -+ __clear_bit(ABS_Y, input_dev->absbit); -+ __clear_bit(BTN_TOUCH, input_dev->keybit); - } -- input_mt_init_slots(input_dev, features->touch_max, flags); - } else if (features->device_type == BTN_TOOL_PEN) { -+ __set_bit(INPUT_PROP_POINTER, input_dev->propbit); - __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); - __set_bit(BTN_TOOL_PEN, input_dev->keybit); - __set_bit(BTN_STYLUS, input_dev->keybit); -@@ -2194,6 +2211,17 @@ static const struct wacom_features wacom_features_0x300 = - static const struct wacom_features wacom_features_0x301 = - { "Wacom Bamboo One M", WACOM_PKGLEN_BBPEN, 21648, 13530, 1023, - 31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; -+static const struct wacom_features wacom_features_0x302 = -+ { "Wacom Intuos PT S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023, -+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES, -+ .touch_max = 16 }; -+static const struct wacom_features wacom_features_0x303 = -+ { "Wacom Intuos PT M", WACOM_PKGLEN_BBPEN, 21600, 13500, 1023, -+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES, -+ .touch_max = 16 }; -+static const struct wacom_features wacom_features_0x30E = -+ { "Wacom Intuos S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023, -+ 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; - static const struct wacom_features wacom_features_0x6004 = - { "ISD-V4", WACOM_PKGLEN_GRAPHIRE, 12800, 8000, 255, - 0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; -@@ -2329,6 +2357,9 @@ const struct usb_device_id wacom_ids[] = { - { USB_DEVICE_WACOM(0x10D) }, - { USB_DEVICE_WACOM(0x300) }, - { USB_DEVICE_WACOM(0x301) }, -+ { USB_DEVICE_DETAILED(0x302, USB_CLASS_HID, 0, 0) }, -+ { USB_DEVICE_DETAILED(0x303, USB_CLASS_HID, 0, 0) }, -+ { USB_DEVICE_DETAILED(0x30E, USB_CLASS_HID, 0, 0) }, - { USB_DEVICE_WACOM(0x304) }, - { USB_DEVICE_DETAILED(0x314, USB_CLASS_HID, 0, 0) }, - { USB_DEVICE_DETAILED(0x315, USB_CLASS_HID, 0, 0) }, -diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h -index fd23a37..854cceb 100644 ---- a/drivers/input/tablet/wacom_wac.h -+++ b/drivers/input/tablet/wacom_wac.h -@@ -54,6 +54,7 @@ - #define WACOM_REPORT_TPCST 16 - #define WACOM_REPORT_TPC1FGE 18 - #define WACOM_REPORT_24HDT 1 -+#define WACOM_REPORT_WL 128 - - /* device quirks */ - #define WACOM_QUIRK_MULTI_INPUT 0x0001 -@@ -81,6 +82,7 @@ enum { - INTUOSPS, - INTUOSPM, - INTUOSPL, -+ INTUOSHT, - WACOM_21UX2, - WACOM_22HD, - DTK, --- -1.8.4.2 - diff --git a/0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch b/0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch deleted file mode 100644 index ad43363..0000000 --- a/0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch +++ /dev/null @@ -1,155 +0,0 @@ -Bugzilla: 1046238 -Upstream-status: Queued for 3.14 - -From 961794a00eab03f4344b7d5e825e8e789e55da87 Mon Sep 17 00:00:00 2001 -From: Ping Cheng -Date: Thu, 5 Dec 2013 12:54:53 -0800 -Subject: [PATCH] Input: wacom - add reporting of SW_MUTE_DEVICE events - -New Intuos series models added a hardware switch to turn touch -data on/off. The state of the switch is reported periodically -from the tablet. To report the state the driver will emit SW_MUTE_DEVICE -events. - -Reviewed_by: Chris Bagwell -Acked-by: Peter Hutterer -Tested-by: Jason Gerecke -Signed-off-by: Ping Cheng -Signed-off-by: Dmitry Torokhov ---- - drivers/input/tablet/wacom_sys.c | 12 ++++++++++++ - drivers/input/tablet/wacom_wac.c | 30 +++++++++++++++++++++++++++--- - drivers/input/tablet/wacom_wac.h | 5 +++++ - 3 files changed, 44 insertions(+), 3 deletions(-) - -diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c -index 8318826..b16ebef 100644 ---- a/drivers/input/tablet/wacom_sys.c -+++ b/drivers/input/tablet/wacom_sys.c -@@ -1197,6 +1197,8 @@ static void wacom_wireless_work(struct work_struct *work) - wacom_wac1->features.device_type = BTN_TOOL_PEN; - snprintf(wacom_wac1->name, WACOM_NAME_MAX, "%s (WL) Pen", - wacom_wac1->features.name); -+ wacom_wac1->shared->touch_max = wacom_wac1->features.touch_max; -+ wacom_wac1->shared->type = wacom_wac1->features.type; - error = wacom_register_input(wacom1); - if (error) - goto fail; -@@ -1218,6 +1220,10 @@ static void wacom_wireless_work(struct work_struct *work) - error = wacom_register_input(wacom2); - if (error) - goto fail; -+ -+ if (wacom_wac1->features.type == INTUOSHT && -+ wacom_wac1->features.touch_max) -+ wacom_wac->shared->touch_input = wacom_wac2->input; - } - - error = wacom_initialize_battery(wacom); -@@ -1396,6 +1402,12 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i - goto fail5; - } - } -+ -+ if (wacom_wac->features.type == INTUOSHT && wacom_wac->features.touch_max) { -+ if (wacom_wac->features.device_type == BTN_TOOL_FINGER) -+ wacom_wac->shared->touch_input = wacom_wac->input; -+ } -+ - return 0; - - fail5: wacom_destroy_leds(wacom); -diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c -index 7655088..048e5b3 100644 ---- a/drivers/input/tablet/wacom_wac.c -+++ b/drivers/input/tablet/wacom_wac.c -@@ -1219,13 +1219,23 @@ static int wacom_bpt3_touch(struct wacom_wac *wacom) - - static int wacom_bpt_pen(struct wacom_wac *wacom) - { -+ struct wacom_features *features = &wacom->features; - struct input_dev *input = wacom->input; - unsigned char *data = wacom->data; - int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0; - -- if (data[0] != WACOM_REPORT_PENABLED) -+ if (data[0] != WACOM_REPORT_PENABLED && data[0] != WACOM_REPORT_USB) - return 0; - -+ if (data[0] == WACOM_REPORT_USB) { -+ if (features->type == INTUOSHT && features->touch_max) { -+ input_report_switch(wacom->shared->touch_input, -+ SW_MUTE_DEVICE, data[8] & 0x40); -+ input_sync(wacom->shared->touch_input); -+ } -+ return 0; -+ } -+ - prox = (data[1] & 0x20) == 0x20; - - /* -@@ -1258,8 +1268,8 @@ static int wacom_bpt_pen(struct wacom_wac *wacom) - * touching and applying pressure; do not report negative - * distance. - */ -- if (data[8] <= wacom->features.distance_max) -- d = wacom->features.distance_max - data[8]; -+ if (data[8] <= features->distance_max) -+ d = features->distance_max - data[8]; - - pen = data[1] & 0x01; - btn1 = data[1] & 0x02; -@@ -1310,6 +1320,13 @@ static int wacom_wireless_irq(struct wacom_wac *wacom, size_t len) - if (connected) { - int pid, battery; - -+ if ((wacom->shared->type == INTUOSHT) && -+ wacom->shared->touch_max) { -+ input_report_switch(wacom->shared->touch_input, -+ SW_MUTE_DEVICE, data[5] & 0x40); -+ input_sync(wacom->shared->touch_input); -+ } -+ - pid = get_unaligned_be16(&data[6]); - battery = data[5] & 0x3f; - if (wacom->pid != pid) { -@@ -1779,6 +1796,13 @@ int wacom_setup_input_capabilities(struct input_dev *input_dev, - break; - - case INTUOSHT: -+ if (features->touch_max && -+ features->device_type == BTN_TOOL_FINGER) { -+ input_dev->evbit[0] |= BIT_MASK(EV_SW); -+ __set_bit(SW_MUTE_DEVICE, input_dev->swbit); -+ } -+ /* fall through */ -+ - case BAMBOO_PT: - __clear_bit(ABS_MISC, input_dev->absbit); - -diff --git a/drivers/input/tablet/wacom_wac.h b/drivers/input/tablet/wacom_wac.h -index 854cceb..3600cf7 100644 ---- a/drivers/input/tablet/wacom_wac.h -+++ b/drivers/input/tablet/wacom_wac.h -@@ -55,6 +55,7 @@ - #define WACOM_REPORT_TPC1FGE 18 - #define WACOM_REPORT_24HDT 1 - #define WACOM_REPORT_WL 128 -+#define WACOM_REPORT_USB 192 - - /* device quirks */ - #define WACOM_QUIRK_MULTI_INPUT 0x0001 -@@ -131,6 +132,10 @@ struct wacom_features { - struct wacom_shared { - bool stylus_in_proximity; - bool touch_down; -+ /* for wireless device to access USB interfaces */ -+ unsigned touch_max; -+ int type; -+ struct input_dev *touch_input; - }; - - struct wacom_wac { --- -1.8.4.2 - diff --git a/KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch b/KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch deleted file mode 100644 index a80b256..0000000 --- a/KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch +++ /dev/null @@ -1,40 +0,0 @@ -Bugzilla: 924916 -Upstream-status: Queued for 3.14 in kvm tree - -From 989c6b34f6a9480e397b170cc62237e89bf4fdb9 Mon Sep 17 00:00:00 2001 -From: Marcelo Tosatti -Date: Thu, 19 Dec 2013 17:28:51 +0000 -Subject: KVM: MMU: handle invalid root_hpa at __direct_map - -It is possible for __direct_map to be called on invalid root_hpa -(-1), two examples: - -1) try_async_pf -> can_do_async_pf - -> vmx_interrupt_allowed -> nested_vmx_vmexit -2) vmx_handle_exit -> vmx_interrupt_allowed -> nested_vmx_vmexit - -Then to load_vmcs12_host_state and kvm_mmu_reset_context. - -Check for this possibility, let fault exception be regenerated. - -BZ: https://bugzilla.redhat.com/show_bug.cgi?id=924916 - -Signed-off-by: Marcelo Tosatti -Signed-off-by: Paolo Bonzini ---- -diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c -index 40772ef..31a5702 100644 ---- a/arch/x86/kvm/mmu.c -+++ b/arch/x86/kvm/mmu.c -@@ -2659,6 +2659,9 @@ static int __direct_map(struct kvm_vcpu *vcpu, gpa_t v, int write, - int emulate = 0; - gfn_t pseudo_gfn; - -+ if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) -+ return 0; -+ - for_each_shadow_entry(vcpu, (u64)gfn << PAGE_SHIFT, iterator) { - if (iterator.level == level) { - mmu_set_spte(vcpu, iterator.sptep, ACC_ALL, --- -cgit v0.9.2 diff --git a/KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch b/KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch deleted file mode 100644 index 5867231..0000000 --- a/KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch +++ /dev/null @@ -1,88 +0,0 @@ -Bugzilla: 1047892 -Upstream-status: Submitted for 3.14 - -Path: news.gmane.org!not-for-mail -From: Marcelo Tosatti -Newsgroups: gmane.comp.emulators.kvm.devel -Subject: KVM: VMX: fix use after free of vmx->loaded_vmcs -Date: Fri, 3 Jan 2014 17:00:51 -0200 -Lines: 31 -Approved: news@gmane.org -Message-ID: <20140103190051.GA16151@amt.cnet> -NNTP-Posting-Host: plane.gmane.org -Mime-Version: 1.0 -Content-Type: text/plain; charset=us-ascii -X-Trace: ger.gmane.org 1388775805 10008 80.91.229.3 (3 Jan 2014 19:03:25 GMT) -X-Complaints-To: usenet@ger.gmane.org -NNTP-Posting-Date: Fri, 3 Jan 2014 19:03:25 +0000 (UTC) -Cc: Jan Kiszka , Paolo Bonzini -To: kvm-devel -Original-X-From: kvm-owner@vger.kernel.org Fri Jan 03 20:03:30 2014 -Return-path: -Envelope-to: gcekd-kvm-devel@plane.gmane.org -Original-Received: from vger.kernel.org ([209.132.180.67]) - by plane.gmane.org with esmtp (Exim 4.69) - (envelope-from ) - id 1VzA1p-0000BI-F0 - for gcekd-kvm-devel@plane.gmane.org; Fri, 03 Jan 2014 20:03:29 +0100 -Original-Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand - id S1752819AbaACTDZ (ORCPT ); - Fri, 3 Jan 2014 14:03:25 -0500 -Original-Received: from mx1.redhat.com ([209.132.183.28]:26936 "EHLO mx1.redhat.com" - rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP - id S1751681AbaACTDY (ORCPT ); - Fri, 3 Jan 2014 14:03:24 -0500 -Original-Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) - by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s03J3NIr007205 - (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); - Fri, 3 Jan 2014 14:03:24 -0500 -Original-Received: from amt.cnet (vpn1-4-118.gru2.redhat.com [10.97.4.118]) - by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id s03J3Mxl004396; - Fri, 3 Jan 2014 14:03:23 -0500 -Original-Received: from amt.cnet (localhost [127.0.0.1]) - by amt.cnet (Postfix) with ESMTP id 98901104ADF; - Fri, 3 Jan 2014 17:00:53 -0200 (BRST) -Original-Received: (from marcelo@localhost) - by amt.cnet (8.14.6/8.14.6/Submit) id s03J0pCL016186; - Fri, 3 Jan 2014 17:00:51 -0200 -Content-Disposition: inline -User-Agent: Mutt/1.5.21 (2010-09-15) -X-Scanned-By: MIMEDefang 2.67 on 10.5.11.11 -Original-Sender: kvm-owner@vger.kernel.org -Precedence: bulk -List-ID: -X-Mailing-List: kvm@vger.kernel.org -Xref: news.gmane.org gmane.comp.emulators.kvm.devel:117837 -Archived-At: - - -After free_loaded_vmcs executes, the "loaded_vmcs" structure -is kfreed, and now vmx->loaded_vmcs points to a kfreed area. -Subsequent free_loaded_vmcs then attempts to manipulate -vmx->loaded_vmcs. - -Switch the order to avoid the problem. - -https://bugzilla.redhat.com/show_bug.cgi?id=1047892 - -Signed-off-by: Marcelo Tosatti - -diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c -index da7837e..2efa33f0 100644 ---- a/arch/x86/kvm/vmx.c -+++ b/arch/x86/kvm/vmx.c -@@ -7332,8 +7332,8 @@ static void vmx_free_vcpu(struct kvm_vcpu *vcpu) - struct vcpu_vmx *vmx = to_vmx(vcpu); - - free_vpid(vmx); -- free_nested(vmx); - free_loaded_vmcs(vmx->loaded_vmcs); -+ free_nested(vmx); - kfree(vmx->guest_msrs); - kvm_vcpu_uninit(vcpu); - kmem_cache_free(kvm_vcpu_cache, vmx); --- -To unsubscribe from this list: send the line "unsubscribe kvm" in -the body of a message to majordomo@vger.kernel.org -More majordomo info at http://vger.kernel.org/majordomo-info.html - diff --git a/e100-Fix-disabling-already-disabled-device-warning.patch b/e100-Fix-disabling-already-disabled-device-warning.patch deleted file mode 100644 index d989828..0000000 --- a/e100-Fix-disabling-already-disabled-device-warning.patch +++ /dev/null @@ -1,65 +0,0 @@ -Bugzilla: 994438 -Upstream-status: 3.14 - -From 2b6e0ca175fe4a20f21ba82b1e7ccc71029c4dd4 Mon Sep 17 00:00:00 2001 -From: Michele Baldessari -Date: Thu, 30 Jan 2014 10:51:04 +0000 -Subject: [PATCH] e100: Fix "disabling already-disabled device" warning - -In https://bugzilla.redhat.com/show_bug.cgi?id=994438 and -https://bugzilla.redhat.com/show_bug.cgi?id=970480 we -received different reports of e100 throwing the following -warning: - - [] ? pci_disable_device+0x85/0x90 - [] warn_slowpath_fmt+0x33/0x40 - [] pci_disable_device+0x85/0x90 - [] __e100_shutdown+0x80/0x120 [e100] - [] ? check_preempt_curr+0x65/0x90 - [] e100_suspend+0x16/0x30 [e100] - [] pci_legacy_suspend+0x2b/0xb0 - [] ? wait_for_completion+0x1f/0xd0 - [] ? pci_pm_poweroff+0xb0/0xb0 - [] pci_pm_freeze+0x94/0xa0 - [] dpm_run_callback+0x37/0x80 - [] ? pm_wakeup_pending+0xc4/0x140 - [] __device_suspend+0xb2/0x1f0 - [] async_suspend+0x1f/0x90 - [] async_run_entry_fn+0x35/0x140 - [] ? wake_up_process+0x1f/0x40 - [] process_one_work+0x115/0x370 - [] ? start_worker+0x25/0x30 - [] ? manage_workers.isra.27+0x1a5/0x250 - [] worker_thread+0xfe/0x330 - [] ? manage_workers.isra.27+0x250/0x250 - [] kthread+0x94/0xa0 - [] ret_from_kernel_thread+0x1b/0x28 - [] ? insert_kthread_work+0x30/0x30 - -This patch removes pci_disable_device() from __e100_shutdown(). -pci_clear_master() is enough. - -Signed-off-by: Michele Baldessari -Tested-by: Mark Harig -Signed-off-by: Aaron Brown -Signed-off-by: David S. Miller ---- - drivers/net/ethernet/intel/e100.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/net/ethernet/intel/e100.c b/drivers/net/ethernet/intel/e100.c -index cbaba44..bf7a01e 100644 ---- a/drivers/net/ethernet/intel/e100.c -+++ b/drivers/net/ethernet/intel/e100.c -@@ -3034,7 +3034,7 @@ static void __e100_shutdown(struct pci_dev *pdev, bool *enable_wake) - *enable_wake = false; - } - -- pci_disable_device(pdev); -+ pci_clear_master(pdev); - } - - static int __e100_power_off(struct pci_dev *pdev, bool wake) --- -1.8.5.3 - diff --git a/elantech-Properly-differentiate-between-clickpads-an.patch b/elantech-Properly-differentiate-between-clickpads-an.patch deleted file mode 100644 index 3fc4998..0000000 --- a/elantech-Properly-differentiate-between-clickpads-an.patch +++ /dev/null @@ -1,110 +0,0 @@ -Bugzilla: 1030802 -Upstream-status: http://www.mail-archive.com/linux-input@vger.kernel.org/msg07220.html - -From e1c7fa5fbb6688bd464658ff8a93bdf23c442065 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Mon, 9 Dec 2013 15:18:04 +0100 -Subject: [PATCH v2] elantech: Properly differentiate between clickpads and - normal touchpads - -The current assumption in the elantech driver that hw version 3 touchpads are -never clickpads and hw version 4 touchpads are always clickpads is wrong. - -There are several bug reports for this, ie: -https://bugzilla.redhat.com/show_bug.cgi?id=1030802 -http://superuser.com/questions/619582/right-elantech-touchpad-button-not-working-in-linux - -I've spend a couple of hours wading through various bugzillas, -launchpads and forum posts to create a list of fw-versions and capabilities -for different laptop models to find a good method to differentiate between -clickpads and versions with separate hardware buttons. - -Which shows that a device being a clickpad is reliable indicated by bit 12 -being set in the fw_version. I've included the gathered list inside the driver, -so that we've this info at hand if we need to revisit this later. - -Signed-off-by: Hans de Goede ---- - drivers/input/mouse/elantech.c | 45 +++++++++++++++++++++++++++++++++++++++--- - 1 file changed, 42 insertions(+), 3 deletions(-) - -diff --git a/drivers/input/mouse/elantech.c b/drivers/input/mouse/elantech.c -index 597e9b8..ef1cf52 100644 ---- a/drivers/input/mouse/elantech.c -+++ b/drivers/input/mouse/elantech.c -@@ -486,6 +486,7 @@ static void elantech_input_sync_v4(struct psmouse *psmouse) - unsigned char *packet = psmouse->packet; - - input_report_key(dev, BTN_LEFT, packet[0] & 0x01); -+ input_report_key(dev, BTN_RIGHT, packet[0] & 0x02); - input_mt_report_pointer_emulation(dev, true); - input_sync(dev); - } -@@ -984,6 +985,44 @@ static int elantech_get_resolution_v4(struct psmouse *psmouse, - } - - /* -+ * Advertise INPUT_PROP_BUTTONPAD for clickpads. The testing of bit 12 in -+ * fw_version for this is based on the following fw_version & caps table: -+ * -+ * Laptop-model: fw_version: caps: buttons: -+ * Acer S3 0x461f00 10, 13, 0e clickpad -+ * Acer S7-392 0x581f01 50, 17, 0d clickpad -+ * Acer V5-131 0x461f02 01, 16, 0c clickpad -+ * Acer V5-551 0x461f00 ? clickpad -+ * Asus K53SV 0x450f01 78, 15, 0c 2 hw buttons -+ * Asus G46VW 0x460f02 00, 18, 0c 2 hw buttons -+ * Asus G750JX 0x360f00 00, 16, 0c 2 hw buttons -+ * Asus UX31 0x361f00 20, 15, 0e clickpad -+ * Asus UX32VD 0x361f02 00, 15, 0e clickpad -+ * Avatar AVIU-145A2 0x361f00 ? clickpad -+ * Gigabyte U2442 0x450f01 58, 17, 0c 2 hw buttons -+ * Lenovo L430 0x350f02 b9, 15, 0c 2 hw buttons (*) -+ * Samsung NF210 0x150b00 78, 14, 0a 2 hw buttons -+ * Samsung NP770Z5E 0x575f01 10, 15, 0f clickpad -+ * Samsung NP700Z5B 0x361f06 21, 15, 0f clickpad -+ * Samsung NP900X3E-A02 0x575f03 ? clickpad -+ * Samsung NP-QX410 0x851b00 19, 14, 0c clickpad -+ * Samsung RC512 0x450f00 08, 15, 0c 2 hw buttons -+ * Samsung RF710 0x450f00 ? 2 hw buttons -+ * System76 Pangolin 0x250f01 ? 2 hw buttons -+ * (*) + 3 trackpoint buttons -+ */ -+static void elantech_set_buttonpad_prop(struct psmouse *psmouse) -+{ -+ struct input_dev *dev = psmouse->dev; -+ struct elantech_data *etd = psmouse->private; -+ -+ if (etd->fw_version & 0x001000) { -+ __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); -+ __clear_bit(BTN_RIGHT, dev->keybit); -+ } -+} -+ -+/* - * Set the appropriate event bits for the input subsystem - */ - static int elantech_set_input_params(struct psmouse *psmouse) -@@ -1026,6 +1065,8 @@ static int elantech_set_input_params(struct psmouse *psmouse) - __set_bit(INPUT_PROP_SEMI_MT, dev->propbit); - /* fall through */ - case 3: -+ if (etd->hw_version == 3) -+ elantech_set_buttonpad_prop(psmouse); - input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); - input_set_abs_params(dev, ABS_Y, y_min, y_max, 0, 0); - if (etd->reports_pressure) { -@@ -1047,9 +1088,7 @@ static int elantech_set_input_params(struct psmouse *psmouse) - */ - psmouse_warn(psmouse, "couldn't query resolution data.\n"); - } -- /* v4 is clickpad, with only one button. */ -- __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); -- __clear_bit(BTN_RIGHT, dev->keybit); -+ elantech_set_buttonpad_prop(psmouse); - __set_bit(BTN_TOOL_QUADTAP, dev->keybit); - /* For X to recognize me as touchpad. */ - input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); --- -1.8.4.2 - diff --git a/fs-proc-devtree-remove_proc_entry.patch b/fs-proc-devtree-remove_proc_entry.patch deleted file mode 100644 index c32e79e..0000000 --- a/fs-proc-devtree-remove_proc_entry.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/fs/proc/proc_devtree.c b/fs/proc/proc_devtree.c -index 927cbd1..f060f28 100644 ---- a/fs/proc/proc_devtree.c -+++ b/fs/proc/proc_devtree.c -@@ -233,6 +233,7 @@ void __init proc_device_tree_init(void) - return; - root = of_find_node_by_path("/"); - if (root == NULL) { -+ remove_proc_entry("device-tree", NULL); - pr_debug("/proc/device-tree: can't find root\n"); - return; - } diff --git a/kernel.spec b/kernel.spec index eaf9365..8e8372f 100644 --- a/kernel.spec +++ b/kernel.spec @@ -74,7 +74,7 @@ Summary: The Linux kernel %if 0%{?released_kernel} # Do we have a -stable update to apply? -%define stable_update 7 +%define stable_update 8 # Is it a -stable RC? %define stable_rc 0 # Set rpm version accordingly @@ -663,8 +663,6 @@ Patch1826: drm-i915-hush-check-crtc-state.patch # NFSv4 # patches headed upstream -Patch10000: fs-proc-devtree-remove_proc_entry.patch - Patch12016: disable-i8042-check-on-apple-mac.patch Patch14000: hibernate-freeze-filesystems.patch @@ -718,26 +716,9 @@ Patch25166: sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch Patch25167: rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch Patch25168: rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch -#rhbz 1030802 -Patch25171: elantech-Properly-differentiate-between-clickpads-an.patch - -#rhbz 924916 -Patch25179: KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch - -#rhbz 1047892 -Patch25180: KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch - -#rhbz 1003167 1046238 -Patch25181: 0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch -Patch25182: 0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch -Patch25183: 0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch - #rhbz 953211 Patch25184: Input-ALPS-add-support-for-Dolphin-devices.patch -#rhbz 950630 -Patch25187: xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch - #rhbz 1045755 Patch25195: cgroup-fixes.patch @@ -751,9 +732,6 @@ Patch25201: cifs-sanity-check-length-of-data-to-send-before-sending.patch #rhbz 1068862 Patch25002: cifs-mask-off-top-byte-in-get_rfc1002_length.patch -#rhbz 994438 -Patch25024: e100-Fix-disabling-already-disabled-device-warning.patch - #CVE-2014-0102 rhbz 1071396 Patch25026: keyring-fix.patch @@ -1443,8 +1421,6 @@ ApplyPatch drm-i915-hush-check-crtc-state.patch # Radeon DRM # Patches headed upstream -ApplyPatch fs-proc-devtree-remove_proc_entry.patch - ApplyPatch disable-i8042-check-on-apple-mac.patch # FIXME: REBASE @@ -1477,26 +1453,9 @@ ApplyPatch rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch ApplyPatch sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch ApplyPatch rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch -#rhbz 1030802 -ApplyPatch elantech-Properly-differentiate-between-clickpads-an.patch - -#rhbz 924916 -ApplyPatch KVM-MMU-handle-invalid-root_hpa-at-__direct_map.patch - -#rhbz 1047892 -ApplyPatch KVM-VMX-fix-use-after-free-of-vmx-loaded_vmcs.patch - -#rhbz 1003167 1046238 -ApplyPatch 0001-Input-wacom-make-sure-touch_max-is-set-for-touch-dev.patch -ApplyPatch 0002-Input-wacom-add-support-for-three-new-Intuos-devices.patch -ApplyPatch 0003-Input-wacom-add-reporting-of-SW_MUTE_DEVICE-events.patch - #rhbz 953211 ApplyPatch Input-ALPS-add-support-for-Dolphin-devices.patch -#rhbz 950630 -ApplyPatch xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch - #rhbz 1045755 ApplyPatch cgroup-fixes.patch @@ -1510,9 +1469,6 @@ ApplyPatch cifs-sanity-check-length-of-data-to-send-before-sending.patch #rhbz 1068862 ApplyPatch cifs-mask-off-top-byte-in-get_rfc1002_length.patch -#rhbz 994438 -ApplyPatch e100-Fix-disabling-already-disabled-device-warning.patch - #CVE-2014-0102 rhbz 1071396 ApplyPatch keyring-fix.patch @@ -2372,6 +2328,9 @@ fi # ||----w | # || || %changelog +* Mon Mar 31 2014 Justin M. Forbes - 3.13.8-200 +- Linux v3.13.8 + * Mon Mar 31 2014 Hans de Goede - Fix clicks getting lost with cypress_ps2 touchpads with recent xorg-x11-drv-synaptics versions (bfdo#76341) diff --git a/sources b/sources index 10202b8..a5e8f7d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 0ecbaf65c00374eb4a826c2f9f37606f linux-3.13.tar.xz -cb33b329d3417846d310c7f58a2614b6 patch-3.13.7.xz +72b911bfc50de88c67bd0e8732978deb patch-3.13.8.xz diff --git a/xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch b/xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch deleted file mode 100644 index 87d17de..0000000 --- a/xhci-fix-resume-issues-on-renesas-chips-in-samsung-laptops.patch +++ /dev/null @@ -1,49 +0,0 @@ -Don Zickus writes: - -Some co-workers of mine bought Samsung laptops that had mostly usb3 ports. -Those ports did not resume correctly (the driver would timeout communicating -and fail). This led to frustration as suspend/resume is a common use for -laptops. - -Poking around, I applied the reset on resume quirk to this chipset and the -resume started working. Reloading the xhci_hcd module had been the temporary -workaround. - -Signed-off-by: Sarah Sharp -Reported-by: Don Zickus -Cc: stable # 2.6.37 ---- - -Don, please ask your co-worker to apply this patch and test. Let me -know if your other co-worker has a different subsystem device ID in his -Samsung laptop, when he gets back from vacation. If so, we'll extend it -to all Samsung laptops with that particular Renesas host. - -Sarah Sharp - - drivers/usb/host/xhci-pci.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c -index e42c318a4404..6c03584ac15f 100644 ---- a/drivers/usb/host/xhci-pci.c -+++ b/drivers/usb/host/xhci-pci.c -@@ -142,6 +142,11 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) - "QUIRK: Resetting on resume"); - xhci->quirks |= XHCI_TRUST_TX_LENGTH; - } -+ if (pdev->vendor == PCI_VENDOR_ID_RENESAS && -+ pdev->device == 0x0015 && -+ pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG && -+ pdev->subsystem_device == 0xc0cd) -+ xhci->quirks |= XHCI_RESET_ON_RESUME; - if (pdev->vendor == PCI_VENDOR_ID_VIA) - xhci->quirks |= XHCI_RESET_ON_RESUME; - } --- -1.8.5.2 - --- -To unsubscribe from this list: send the line "unsubscribe linux-usb" in -the body of a message to majordomo@vger.kernel.org -More majordomo info at http://vger.kernel.org/majordomo-info.html \ No newline at end of file