Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1711750 > unrolled thread

[PATCH 4.4 00/23] 4.4.83-stable review

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2017-08-15 04:00 +0200
Last post2017-08-15 20:10 +0200
Articles 10 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 4.4 00/23] 4.4.83-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 16/23] USB: Check for dropped connection before switching to full speed Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 15/23] uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069 Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 07/23] USB: serial: option: add D-Link DWM-222 device ID Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 02/23] mm: ratelimit PFNs busy info message Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 13/23] iio: accel: bmc150: Always restore device to normal mode after suspend-resume Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 18/23] usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    [PATCH 4.4 17/23] usb: core: unlink urbs from the tail of the endpoints urb_list Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-15 04:00 +0200
    Re: [PATCH 4.4 00/23] 4.4.83-stable review Guenter Roeck <linux@roeck-us.net> - 2017-08-15 12:50 +0200
    Re: [PATCH 4.4 00/23] 4.4.83-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2017-08-15 20:10 +0200

#1711750 — [PATCH 4.4 00/23] 4.4.83-stable review

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 00/23] 4.4.83-stable review
Message-ID<ueyGu-35K-15@gated-at.bofh.it>
This is the start of the stable review cycle for the 4.4.83 release.
There are 23 patches in this series, all will be posted as a response
to this one.  If anyone has any issues with these being applied, please
let me know.

Responses should be made by Thu Aug 17 01:17:45 UTC 2017.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
	kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.4.83-rc1.gz
or in the git tree and branch at:
  git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.4.y
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Linux 4.4.83-rc1

Thomas Gleixner <tglx@linutronix.de>
    pinctrl: samsung: Remove bogus irq_[un]mask from resource management

Icenowy Zheng <icenowy@aosc.io>
    pinctrl: sunxi: add a missing function of A10/A20 pinctrl driver

Christoph Hellwig <hch@lst.de>
    pnfs/blocklayout: require 64-bit sector_t

Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
    iio: adc: vf610_adc: Fix VALT selection value for REFSEL bits

Sandeep Singh <sandeep.singh@amd.com>
    usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume

Kai-Heng Feng <kai.heng.feng@canonical.com>
    usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter

Bin Liu <b-liu@ti.com>
    usb: core: unlink urbs from the tail of the endpoint's urb_list

Alan Stern <stern@rowland.harvard.edu>
    USB: Check for dropped connection before switching to full speed

Alan Swanson <reiver@improbability.net>
    uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069

Akinobu Mita <akinobu.mita@gmail.com>
    iio: light: tsl2563: use correct event code

Hans de Goede <hdegoede@redhat.com>
    iio: accel: bmc150: Always restore device to normal mode after suspend-resume

Arnd Bergmann <arnd@arndb.de>
    staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL read

Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    USB: hcd: Mark secondary HCD as dead if the primary one died

Bin Liu <b-liu@ti.com>
    usb: musb: fix tx fifo flush handling again

Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    USB: serial: pl2303: add new ATEN device id

Stefan Triller <github@stefantriller.de>
    USB: serial: cp210x: add support for Qivicon USB ZigBee dongle

Hector Martin <marcan@marcan.st>
    USB: serial: option: add D-Link DWM-222 device ID

Weston Andros Adamson <dros@monkey.org>
    nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays

Mateusz Jurczyk <mjurczyk@google.com>
    fuse: initialize the flock flag in fuse_file on allocation

Nicholas Bellinger <nab@linux-iscsi.org>
    iscsi-target: Fix iscsi_np reset hung task during parallel delete

Varun Prakash <varun@chelsio.com>
    iscsi-target: fix memory leak in iscsit_setup_text_cmd()

Jonathan Toppins <jtoppins@redhat.com>
    mm: ratelimit PFNs busy info message

Dima Zavin <dmitriyz@waymo.com>
    cpuset: fix a deadlock due to incomplete patching of cpusets_enabled()


-------------

Diffstat:

 Makefile                                  |  4 ++--
 drivers/iio/accel/bmc150-accel-core.c     |  9 +--------
 drivers/iio/adc/vf610_adc.c               |  2 +-
 drivers/iio/light/tsl2563.c               |  2 +-
 drivers/pinctrl/samsung/pinctrl-exynos.c  |  4 ----
 drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c |  1 +
 drivers/staging/iio/resolver/ad2s1210.c   |  2 +-
 drivers/target/iscsi/iscsi_target.c       |  2 ++
 drivers/target/iscsi/iscsi_target_login.c |  7 +++++--
 drivers/usb/core/hcd.c                    |  4 +++-
 drivers/usb/core/hub.c                    | 10 ++++++----
 drivers/usb/core/quirks.c                 |  4 ++++
 drivers/usb/host/pci-quirks.c             | 17 ++++++++++++-----
 drivers/usb/musb/musb_host.c              |  1 +
 drivers/usb/serial/cp210x.c               |  1 +
 drivers/usb/serial/option.c               |  2 ++
 drivers/usb/serial/pl2303.c               |  1 +
 drivers/usb/serial/pl2303.h               |  1 +
 drivers/usb/storage/unusual_uas.h         |  4 ++--
 fs/fuse/file.c                            |  2 +-
 fs/nfs/Kconfig                            |  1 +
 fs/nfs/flexfilelayout/flexfilelayoutdev.c |  1 +
 include/linux/cpuset.h                    |  7 +++++--
 include/target/iscsi/iscsi_target_core.h  |  1 +
 kernel/cpuset.c                           |  1 +
 mm/page_alloc.c                           |  2 +-
 26 files changed, 58 insertions(+), 35 deletions(-)

[toc] | [next] | [standalone]


#1711751 — [PATCH 4.4 16/23] USB: Check for dropped connection before switching to full speed

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 16/23] USB: Check for dropped connection before switching to full speed
Message-ID<uezje-3jP-53@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Alan Stern <stern@rowland.harvard.edu>

commit 94c43b9897abf4ea366ed4dba027494e080c7050 upstream.

Some buggy USB disk adapters disconnect and reconnect multiple times
during the enumeration procedure.  This may lead to a device
connecting at full speed instead of high speed, because when the USB
stack sees that a device isn't able to enumerate at high speed, it
tries to hand the connection over to a full-speed companion
controller.

The logic for doing this is careful to check that the device is still
connected.  But this check is inadequate if the device disconnects and
reconnects before the check is done.  The symptom is that a device
works, but much more slowly than it is capable of operating.

The situation was made worse recently by commit 22547c4cc4fe ("usb:
hub: Wait for connection to be reestablished after port reset"), which
increases the delay following a reset before a disconnect is
recognized, thus giving the device more time to reconnect.

This patch makes the check more robust.  If the device was
disconnected at any time during enumeration, we will now skip the
full-speed handover.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Reported-and-tested-by: Zdenek Kabelac <zkabelac@redhat.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/core/hub.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -4661,7 +4661,8 @@ hub_power_remaining(struct usb_hub *hub)
 static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
 		u16 portchange)
 {
-	int status, i;
+	int status = -ENODEV;
+	int i;
 	unsigned unit_load;
 	struct usb_device *hdev = hub->hdev;
 	struct usb_hcd *hcd = bus_to_hcd(hdev->bus);
@@ -4865,9 +4866,10 @@ loop:
 
 done:
 	hub_port_disable(hub, port1, 1);
-	if (hcd->driver->relinquish_port && !hub->hdev->parent)
-		hcd->driver->relinquish_port(hcd, port1);
-
+	if (hcd->driver->relinquish_port && !hub->hdev->parent) {
+		if (status != -ENOTCONN && status != -ENODEV)
+			hcd->driver->relinquish_port(hcd, port1);
+	}
 }
 
 /* Handle physical or logical connection change events.

[toc] | [prev] | [next] | [standalone]


#1711752 — [PATCH 4.4 15/23] uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 15/23] uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069
Message-ID<uezje-3jP-57@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Alan Swanson <reiver@improbability.net>

commit 89f23d51defcb94a5026d4b5da13faf4e1150a6f upstream.

Similar to commit d595259fbb7a ("usb-storage: Add ignore-residue quirk for
Initio INIC-3619") for INIC-3169 in unusual_devs.h but INIC-3069 already
present in unusual_uas.h. Both in same controller IC family.

Issue is that MakeMKV fails during key exchange with installed bluray drive
with following error:

002004:0000 Error 'Scsi error - ILLEGAL REQUEST:COPY PROTECTION KEY EXCHANGE FAILURE - KEY NOT ESTABLISHED'
occurred while issuing SCSI command AD010..080002400 to device 'SG:dev_11:0'

Signed-off-by: Alan Swanson <reiver@improbability.net>
Acked-by: Oliver Neukum <oneukum@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/storage/unusual_uas.h |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/usb/storage/unusual_uas.h
+++ b/drivers/usb/storage/unusual_uas.h
@@ -123,9 +123,9 @@ UNUSUAL_DEV(0x0bc2, 0xab2a, 0x0000, 0x99
 /* Reported-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> */
 UNUSUAL_DEV(0x13fd, 0x3940, 0x0000, 0x9999,
 		"Initio Corporation",
-		"",
+		"INIC-3069",
 		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
-		US_FL_NO_ATA_1X),
+		US_FL_NO_ATA_1X | US_FL_IGNORE_RESIDUE),
 
 /* Reported-by: Tom Arild Naess <tanaess@gmail.com> */
 UNUSUAL_DEV(0x152d, 0x0539, 0x0000, 0x9999,

[toc] | [prev] | [next] | [standalone]


#1711755 — [PATCH 4.4 07/23] USB: serial: option: add D-Link DWM-222 device ID

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 07/23] USB: serial: option: add D-Link DWM-222 device ID
Message-ID<uezje-3jP-63@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Hector Martin <marcan@marcan.st>

commit fd1b8668af59a11bb754a6c9b0051c6c5ce73b74 upstream.

Add device id for D-Link DWM-222.

Signed-off-by: Hector Martin <marcan@marcan.st>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/serial/option.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -2025,6 +2025,8 @@ static const struct usb_device_id option
 	{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d04, 0xff) },			/* D-Link DWM-158 */
 	{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7e19, 0xff),			/* D-Link DWM-221 B1 */
 	  .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
+	{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7e35, 0xff),			/* D-Link DWM-222 */
+	  .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e01, 0xff, 0xff, 0xff) }, /* D-Link DWM-152/C1 */
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e02, 0xff, 0xff, 0xff) }, /* D-Link DWM-156/C1 */
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x7e11, 0xff, 0xff, 0xff) }, /* D-Link DWM-156/A3 */

[toc] | [prev] | [next] | [standalone]


#1711756 — [PATCH 4.4 02/23] mm: ratelimit PFNs busy info message

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 02/23] mm: ratelimit PFNs busy info message
Message-ID<uezje-3jP-65@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Jonathan Toppins <jtoppins@redhat.com>

commit 75dddef32514f7aa58930bde6a1263253bc3d4ba upstream.

The RDMA subsystem can generate several thousand of these messages per
second eventually leading to a kernel crash.  Ratelimit these messages
to prevent this crash.

Doug said:
 "I've been carrying a version of this for several kernel versions. I
  don't remember when they started, but we have one (and only one) class
  of machines: Dell PE R730xd, that generate these errors. When it
  happens, without a rate limit, we get rcu timeouts and kernel oopses.
  With the rate limit, we just get a lot of annoying kernel messages but
  the machine continues on, recovers, and eventually the memory
  operations all succeed"

And:
 "> Well... why are all these EBUSY's occurring? It sounds inefficient
  > (at least) but if it is expected, normal and unavoidable then
  > perhaps we should just remove that message altogether?

  I don't have an answer to that question. To be honest, I haven't
  looked real hard. We never had this at all, then it started out of the
  blue, but only on our Dell 730xd machines (and it hits all of them),
  but no other classes or brands of machines. And we have our 730xd
  machines loaded up with different brands and models of cards (for
  instance one dedicated to mlx4 hardware, one for qib, one for mlx5, an
  ocrdma/cxgb4 combo, etc), so the fact that it hit all of the machines
  meant it wasn't tied to any particular brand/model of RDMA hardware.
  To me, it always smelled of a hardware oddity specific to maybe the
  CPUs or mainboard chipsets in these machines, so given that I'm not an
  mm expert anyway, I never chased it down.

  A few other relevant details: it showed up somewhere around 4.8/4.9 or
  thereabouts. It never happened before, but the prinkt has been there
  since the 3.18 days, so possibly the test to trigger this message was
  changed, or something else in the allocator changed such that the
  situation started happening on these machines?

  And, like I said, it is specific to our 730xd machines (but they are
  all identical, so that could mean it's something like their specific
  ram configuration is causing the allocator to hit this on these
  machine but not on other machines in the cluster, I don't want to say
  it's necessarily the model of chipset or CPU, there are other bits of
  identicalness between these machines)"

Link: http://lkml.kernel.org/r/499c0f6cc10d6eb829a67f2a4d75b4228a9b356e.1501695897.git.jtoppins@redhat.com
Signed-off-by: Jonathan Toppins <jtoppins@redhat.com>
Reviewed-by: Doug Ledford <dledford@redhat.com>
Tested-by: Doug Ledford <dledford@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Hillf Danton <hillf.zj@alibaba-inc.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 mm/page_alloc.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -6804,7 +6804,7 @@ int alloc_contig_range(unsigned long sta
 
 	/* Make sure the range is really isolated. */
 	if (test_pages_isolated(outer_start, end, false)) {
-		pr_info("%s: [%lx, %lx) PFNs busy\n",
+		pr_info_ratelimited("%s: [%lx, %lx) PFNs busy\n",
 			__func__, outer_start, end);
 		ret = -EBUSY;
 		goto done;

[toc] | [prev] | [next] | [standalone]


#1711758 — [PATCH 4.4 13/23] iio: accel: bmc150: Always restore device to normal mode after suspend-resume

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 13/23] iio: accel: bmc150: Always restore device to normal mode after suspend-resume
Message-ID<uezje-3jP-71@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Hans de Goede <hdegoede@redhat.com>

commit e59e18989c68a8d7941005f81ad6abc4ca682de0 upstream.

After probe we would put the device in normal mode, after a runtime
suspend-resume we would put it back in normal mode. But for a regular
suspend-resume we would only put it back in normal mode if triggers
or events have been requested.  This is not consistent and breaks
reading raw values after a suspend-resume.

This commit changes the regular resume path to also unconditionally put
the device back in normal mode, fixing reading of raw values not working
after a regular suspend-resume cycle.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/iio/accel/bmc150-accel-core.c |    9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

--- a/drivers/iio/accel/bmc150-accel-core.c
+++ b/drivers/iio/accel/bmc150-accel-core.c
@@ -194,7 +194,6 @@ struct bmc150_accel_data {
 	struct device *dev;
 	int irq;
 	struct bmc150_accel_interrupt interrupts[BMC150_ACCEL_INTERRUPTS];
-	atomic_t active_intr;
 	struct bmc150_accel_trigger triggers[BMC150_ACCEL_TRIGGERS];
 	struct mutex mutex;
 	u8 fifo_mode, watermark;
@@ -489,11 +488,6 @@ static int bmc150_accel_set_interrupt(st
 		goto out_fix_power_state;
 	}
 
-	if (state)
-		atomic_inc(&data->active_intr);
-	else
-		atomic_dec(&data->active_intr);
-
 	return 0;
 
 out_fix_power_state:
@@ -1704,8 +1698,7 @@ static int bmc150_accel_resume(struct de
 	struct bmc150_accel_data *data = iio_priv(indio_dev);
 
 	mutex_lock(&data->mutex);
-	if (atomic_read(&data->active_intr))
-		bmc150_accel_set_mode(data, BMC150_ACCEL_SLEEP_MODE_NORMAL, 0);
+	bmc150_accel_set_mode(data, BMC150_ACCEL_SLEEP_MODE_NORMAL, 0);
 	bmc150_accel_fifo_set_mode(data);
 	mutex_unlock(&data->mutex);
 

[toc] | [prev] | [next] | [standalone]


#1711759 — [PATCH 4.4 18/23] usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 18/23] usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter
Message-ID<uezje-3jP-67@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Kai-Heng Feng <kai.heng.feng@canonical.com>

commit 7496cfe5431f21da5d27a8388c326397e3f0a5db upstream.

Moshi USB to Ethernet Adapter internally uses a Genesys Logic hub to
connect to Realtek r8153.

The Realtek r8153 ethernet does not work on the internal hub, no-lpm quirk
can make it work.

Since another r8153 dongle at my hand does not have the issue, so add
the quirk to the Genesys Logic hub instead.

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/core/quirks.c |    3 +++
 1 file changed, 3 insertions(+)

--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -150,6 +150,9 @@ static const struct usb_device_id usb_qu
 	/* appletouch */
 	{ USB_DEVICE(0x05ac, 0x021a), .driver_info = USB_QUIRK_RESET_RESUME },
 
+	/* Genesys Logic hub, internally used by Moshi USB to Ethernet Adapter */
+	{ USB_DEVICE(0x05e3, 0x0616), .driver_info = USB_QUIRK_NO_LPM },
+
 	/* Avision AV600U */
 	{ USB_DEVICE(0x0638, 0x0a13), .driver_info =
 	  USB_QUIRK_STRING_FETCH_255 },

[toc] | [prev] | [next] | [standalone]


#1711761 — [PATCH 4.4 17/23] usb: core: unlink urbs from the tail of the endpoints urb_list

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-15 04:00 +0200
Subject[PATCH 4.4 17/23] usb: core: unlink urbs from the tail of the endpoints urb_list
Message-ID<uezjf-3jP-75@gated-at.bofh.it>
In reply to#1711750
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Bin Liu <b-liu@ti.com>

commit 2eac13624364db5b5e1666ae0bb3a4d36bc56b6e upstream.

While unlink an urb, if the urb has been programmed in the controller,
the controller driver might do some hw related actions to tear down the
urb.

Currently usb_hcd_flush_endpoint() passes each urb from the head of the
endpoint's urb_list to the controller driver, which could make the
controller driver think each urb has been programmed and take the
unnecessary actions for each urb.

This patch changes the behavior in usb_hcd_flush_endpoint() to pass the
urbs from the tail of the list, to avoid any unnecessary actions in an
controller driver.

Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/usb/core/hcd.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -1851,7 +1851,7 @@ void usb_hcd_flush_endpoint(struct usb_d
 	/* No more submits can occur */
 	spin_lock_irq(&hcd_urb_list_lock);
 rescan:
-	list_for_each_entry (urb, &ep->urb_list, urb_list) {
+	list_for_each_entry_reverse(urb, &ep->urb_list, urb_list) {
 		int	is_in;
 
 		if (urb->unlinked)

[toc] | [prev] | [next] | [standalone]


#1712067

FromGuenter Roeck <linux@roeck-us.net>
Date2017-08-15 12:50 +0200
Message-ID<ueHA6-bQ-19@gated-at.bofh.it>
In reply to#1711750
On 08/14/2017 06:18 PM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.4.83 release.
> There are 23 patches in this series, all will be posted as a response
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Thu Aug 17 01:17:45 UTC 2017.
> Anything received after that time might be too late.
> 

Build results:
	total: 145 pass: 145 fail: 0
Qemu test results:
	total: 115 pass: 115 fail: 0

Details are available at http://kerneltests.org/builders.

Guenter

[toc] | [prev] | [next] | [standalone]


#1712405

FromShuah Khan <shuahkh@osg.samsung.com>
Date2017-08-15 20:10 +0200
Message-ID<ueOrU-4Hl-17@gated-at.bofh.it>
In reply to#1711750
On 08/14/2017 07:18 PM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.4.83 release.
> There are 23 patches in this series, all will be posted as a response
> to this one.  If anyone has any issues with these being applied, please
> let me know.
> 
> Responses should be made by Thu Aug 17 01:17:45 UTC 2017.
> Anything received after that time might be too late.
> 
> The whole patch series can be found in one patch at:
> 	kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.4.83-rc1.gz
> or in the git tree and branch at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.4.y
> and the diffstat can be found below.
> 
> thanks,
> 
> greg k-h
> 

Compiled and booted on my test system. No dmesg regressions.

thanks,
-- Shuah

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web