]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 19 Jun 2015 19:09:20 +0000 (12:09 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 19 Jun 2015 19:09:20 +0000 (12:09 -0700)
added patches:
block-fix-ext_dev_lock-lockdep-report.patch
input-elantech-fix-detection-of-touchpads-where-the-revision-matches-a-known-rate.patch
usb-cp210x-add-id-for-hubz-dual-zigbee-and-z-wave-dongle.patch
usb-serial-ftdi_sio-add-support-for-a-motion-tracker-development-board.patch

queue-3.10/block-fix-ext_dev_lock-lockdep-report.patch [new file with mode: 0644]
queue-3.10/input-elantech-fix-detection-of-touchpads-where-the-revision-matches-a-known-rate.patch [new file with mode: 0644]
queue-3.10/series
queue-3.10/usb-cp210x-add-id-for-hubz-dual-zigbee-and-z-wave-dongle.patch [new file with mode: 0644]
queue-3.10/usb-serial-ftdi_sio-add-support-for-a-motion-tracker-development-board.patch [new file with mode: 0644]

diff --git a/queue-3.10/block-fix-ext_dev_lock-lockdep-report.patch b/queue-3.10/block-fix-ext_dev_lock-lockdep-report.patch
new file mode 100644 (file)
index 0000000..e72624e
--- /dev/null
@@ -0,0 +1,99 @@
+From 4d66e5e9b6d720d8463e11d027bd4ad91c8b1318 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 10 Jun 2015 23:47:14 -0400
+Subject: block: fix ext_dev_lock lockdep report
+
+From: Dan Williams <dan.j.williams@intel.com>
+
+commit 4d66e5e9b6d720d8463e11d027bd4ad91c8b1318 upstream.
+
+ =================================
+ [ INFO: inconsistent lock state ]
+ 4.1.0-rc7+ #217 Tainted: G           O
+ ---------------------------------
+ inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
+ swapper/6/0 [HC0[0]:SC1[1]:HE1:SE0] takes:
+  (ext_devt_lock){+.?...}, at: [<ffffffff8143a60c>] blk_free_devt+0x3c/0x70
+ {SOFTIRQ-ON-W} state was registered at:
+   [<ffffffff810bf6b1>] __lock_acquire+0x461/0x1e70
+   [<ffffffff810c1947>] lock_acquire+0xb7/0x290
+   [<ffffffff818ac3a8>] _raw_spin_lock+0x38/0x50
+   [<ffffffff8143a07d>] blk_alloc_devt+0x6d/0xd0  <-- take the lock in process context
+[..]
+  [<ffffffff810bf64e>] __lock_acquire+0x3fe/0x1e70
+  [<ffffffff810c00ad>] ? __lock_acquire+0xe5d/0x1e70
+  [<ffffffff810c1947>] lock_acquire+0xb7/0x290
+  [<ffffffff8143a60c>] ? blk_free_devt+0x3c/0x70
+  [<ffffffff818ac3a8>] _raw_spin_lock+0x38/0x50
+  [<ffffffff8143a60c>] ? blk_free_devt+0x3c/0x70
+  [<ffffffff8143a60c>] blk_free_devt+0x3c/0x70    <-- take the lock in softirq
+  [<ffffffff8143bfec>] part_release+0x1c/0x50
+  [<ffffffff8158edf6>] device_release+0x36/0xb0
+  [<ffffffff8145ac2b>] kobject_cleanup+0x7b/0x1a0
+  [<ffffffff8145aad0>] kobject_put+0x30/0x70
+  [<ffffffff8158f147>] put_device+0x17/0x20
+  [<ffffffff8143c29c>] delete_partition_rcu_cb+0x16c/0x180
+  [<ffffffff8143c130>] ? read_dev_sector+0xa0/0xa0
+  [<ffffffff810e0e0f>] rcu_process_callbacks+0x2ff/0xa90
+  [<ffffffff810e0dcf>] ? rcu_process_callbacks+0x2bf/0xa90
+  [<ffffffff81067e2e>] __do_softirq+0xde/0x600
+
+Neil sees this in his tests and it also triggers on pmem driver unbind
+for the libnvdimm tests.  This fix is on top of an initial fix by Keith
+for incorrect usage of mutex_lock() in this path: 2da78092dda1 "block:
+Fix dev_t minor allocation lifetime".  Both this and 2da78092dda1 are
+candidates for -stable.
+
+Fixes: 2da78092dda1 ("block: Fix dev_t minor allocation lifetime")
+Cc: Keith Busch <keith.busch@intel.com>
+Reported-by: NeilBrown <neilb@suse.de>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+Signed-off-by: Jens Axboe <axboe@fb.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ block/genhd.c |   12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+--- a/block/genhd.c
++++ b/block/genhd.c
+@@ -422,9 +422,9 @@ int blk_alloc_devt(struct hd_struct *par
+       /* allocate ext devt */
+       idr_preload(GFP_KERNEL);
+-      spin_lock(&ext_devt_lock);
++      spin_lock_bh(&ext_devt_lock);
+       idx = idr_alloc(&ext_devt_idr, part, 0, NR_EXT_DEVT, GFP_NOWAIT);
+-      spin_unlock(&ext_devt_lock);
++      spin_unlock_bh(&ext_devt_lock);
+       idr_preload_end();
+       if (idx < 0)
+@@ -449,9 +449,9 @@ void blk_free_devt(dev_t devt)
+               return;
+       if (MAJOR(devt) == BLOCK_EXT_MAJOR) {
+-              spin_lock(&ext_devt_lock);
++              spin_lock_bh(&ext_devt_lock);
+               idr_remove(&ext_devt_idr, blk_mangle_minor(MINOR(devt)));
+-              spin_unlock(&ext_devt_lock);
++              spin_unlock_bh(&ext_devt_lock);
+       }
+ }
+@@ -691,13 +691,13 @@ struct gendisk *get_gendisk(dev_t devt,
+       } else {
+               struct hd_struct *part;
+-              spin_lock(&ext_devt_lock);
++              spin_lock_bh(&ext_devt_lock);
+               part = idr_find(&ext_devt_idr, blk_mangle_minor(MINOR(devt)));
+               if (part && get_disk(part_to_disk(part))) {
+                       *partno = part->partno;
+                       disk = part_to_disk(part);
+               }
+-              spin_unlock(&ext_devt_lock);
++              spin_unlock_bh(&ext_devt_lock);
+       }
+       return disk;
diff --git a/queue-3.10/input-elantech-fix-detection-of-touchpads-where-the-revision-matches-a-known-rate.patch b/queue-3.10/input-elantech-fix-detection-of-touchpads-where-the-revision-matches-a-known-rate.patch
new file mode 100644 (file)
index 0000000..38c92dd
--- /dev/null
@@ -0,0 +1,44 @@
+From 5f0ee9d17aae628b22be86966471db65be21f262 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Tue, 2 Jun 2015 10:40:50 -0700
+Subject: Input: elantech - fix detection of touchpads where the revision matches a known rate
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Hans de Goede <hdegoede@redhat.com>
+
+commit 5f0ee9d17aae628b22be86966471db65be21f262 upstream.
+
+Make the check to skip the rate check more lax, so that it applies
+to all hw_version 4 models.
+
+This fixes the touchpad not being detected properly on Asus PU551LA
+laptops.
+
+Reported-and-tested-by: David Zafra Gómez <dezeta@klo.es>
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/input/mouse/elantech.c |    7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+--- a/drivers/input/mouse/elantech.c
++++ b/drivers/input/mouse/elantech.c
+@@ -1241,10 +1241,11 @@ static bool elantech_is_signature_valid(
+               return true;
+       /*
+-       * Some models have a revision higher then 20. Meaning param[2] may
+-       * be 10 or 20, skip the rates check for these.
++       * Some hw_version >= 4 models have a revision higher then 20. Meaning
++       * that param[2] may be 10 or 20, skip the rates check for these.
+        */
+-      if (param[0] == 0x46 && (param[1] & 0xef) == 0x0f && param[2] < 40)
++      if ((param[0] & 0x0f) >= 0x06 && (param[1] & 0xaf) == 0x0f &&
++          param[2] < 40)
+               return true;
+       for (i = 0; i < ARRAY_SIZE(rates); i++)
index ba3438e60d042197cc2a6f2ca2520dec8c852fc8..6f91e9352b346cb7be4896ce540473a4747bf8fa 100644 (file)
@@ -12,3 +12,7 @@ iio-adis16400-compute-the-scan-mask-from-channel-indices.patch
 alsa-hda-realtek-add-a-fixup-for-another-acer-aspire-9420.patch
 alsa-usb-audio-add-mic-volume-fix-quirk-for-logitech-quickcam-fusion.patch
 alsa-usb-audio-add-maya44-usb-mixer-control-names.patch
+input-elantech-fix-detection-of-touchpads-where-the-revision-matches-a-known-rate.patch
+block-fix-ext_dev_lock-lockdep-report.patch
+usb-cp210x-add-id-for-hubz-dual-zigbee-and-z-wave-dongle.patch
+usb-serial-ftdi_sio-add-support-for-a-motion-tracker-development-board.patch
diff --git a/queue-3.10/usb-cp210x-add-id-for-hubz-dual-zigbee-and-z-wave-dongle.patch b/queue-3.10/usb-cp210x-add-id-for-hubz-dual-zigbee-and-z-wave-dongle.patch
new file mode 100644 (file)
index 0000000..d1ed728
--- /dev/null
@@ -0,0 +1,30 @@
+From df72d588c54dad57dabb3cc8a87475d8ed66d806 Mon Sep 17 00:00:00 2001
+From: "John D. Blair" <johnb@candicontrols.com>
+Date: Thu, 4 Jun 2015 13:18:19 -0700
+Subject: USB: cp210x: add ID for HubZ dual ZigBee and Z-Wave dongle
+
+From: "John D. Blair" <johnb@candicontrols.com>
+
+commit df72d588c54dad57dabb3cc8a87475d8ed66d806 upstream.
+
+Added the USB serial device ID for the HubZ dual ZigBee
+and Z-Wave radio dongle.
+
+Signed-off-by: John D. Blair <johnb@candicontrols.com>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/cp210x.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/usb/serial/cp210x.c
++++ b/drivers/usb/serial/cp210x.c
+@@ -128,6 +128,7 @@ static const struct usb_device_id id_tab
+       { USB_DEVICE(0x10C4, 0x8946) }, /* Ketra N1 Wireless Interface */
+       { USB_DEVICE(0x10C4, 0x8977) }, /* CEL MeshWorks DevKit Device */
+       { USB_DEVICE(0x10C4, 0x8998) }, /* KCF Technologies PRN */
++      { USB_DEVICE(0x10C4, 0x8A2A) }, /* HubZ dual ZigBee and Z-Wave dongle */
+       { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */
+       { USB_DEVICE(0x10C4, 0xEA61) }, /* Silicon Labs factory default */
+       { USB_DEVICE(0x10C4, 0xEA70) }, /* Silicon Labs factory default */
diff --git a/queue-3.10/usb-serial-ftdi_sio-add-support-for-a-motion-tracker-development-board.patch b/queue-3.10/usb-serial-ftdi_sio-add-support-for-a-motion-tracker-development-board.patch
new file mode 100644 (file)
index 0000000..fab81cd
--- /dev/null
@@ -0,0 +1,41 @@
+From 1df5b888f54070a373a73b34488cc78c2365b7b4 Mon Sep 17 00:00:00 2001
+From: Patrick Riphagen <patrick.riphagen@xsens.com>
+Date: Tue, 19 May 2015 10:03:01 +0200
+Subject: USB: serial: ftdi_sio: Add support for a Motion Tracker Development Board
+
+From: Patrick Riphagen <patrick.riphagen@xsens.com>
+
+commit 1df5b888f54070a373a73b34488cc78c2365b7b4 upstream.
+
+This adds support for new Xsens device, Motion Tracker Development Board,
+using Xsens' own Vendor ID
+
+Signed-off-by: Patrick Riphagen <patrick.riphagen@xsens.com>
+Signed-off-by: Johan Hovold <johan@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/serial/ftdi_sio.c     |    1 +
+ drivers/usb/serial/ftdi_sio_ids.h |    1 +
+ 2 files changed, 2 insertions(+)
+
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -715,6 +715,7 @@ static struct usb_device_id id_table_com
+       { USB_DEVICE(XSENS_VID, XSENS_AWINDA_DONGLE_PID) },
+       { USB_DEVICE(XSENS_VID, XSENS_AWINDA_STATION_PID) },
+       { USB_DEVICE(XSENS_VID, XSENS_CONVERTER_PID) },
++      { USB_DEVICE(XSENS_VID, XSENS_MTDEVBOARD_PID) },
+       { USB_DEVICE(XSENS_VID, XSENS_MTW_PID) },
+       { USB_DEVICE(FTDI_VID, FTDI_OMNI1509) },
+       { USB_DEVICE(MOBILITY_VID, MOBILITY_USB_SERIAL_PID) },
+--- a/drivers/usb/serial/ftdi_sio_ids.h
++++ b/drivers/usb/serial/ftdi_sio_ids.h
+@@ -155,6 +155,7 @@
+ #define XSENS_AWINDA_STATION_PID 0x0101
+ #define XSENS_AWINDA_DONGLE_PID 0x0102
+ #define XSENS_MTW_PID         0x0200  /* Xsens MTw */
++#define XSENS_MTDEVBOARD_PID  0x0300  /* Motion Tracker Development Board */
+ #define XSENS_CONVERTER_PID   0xD00D  /* Xsens USB-serial converter */
+ /* Xsens devices using FTDI VID */