Update to 4.6.4

This commit is contained in:
Salvatore Bonaccorso 2016-07-13 17:23:56 +02:00
parent 0818af71cc
commit 1a1a829223
3 changed files with 34 additions and 83 deletions

35
debian/changelog vendored
View File

@ -1,5 +1,38 @@
linux (4.6.3-2) UNRELEASED; urgency=medium
linux (4.6.4-1) UNRELEASED; urgency=medium
* New upstream stable update:
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.6.4
- net_sched: fix pfifo_head_drop behavior vs backlog
- act_ipt: fix a bind refcnt leak
- net: Don't forget pr_fmt on net_dbg_ratelimited for CONFIG_DYNAMIC_DEBUG
- sit: correct IP protocol used in ipip6_err
- esp: Fix ESN generation under UDP encapsulation
- netem: fix a use after free
- ipmr/ip6mr: Initialize the last assert time of mfc entries.
- Bridge: Fix ipv6 mc snooping if bridge has no ipv6 address
- sock_diag: do not broadcast raw socket destruction
- bpf, perf: delay release of BPF prog after grace period
- neigh: Explicitly declare RCU-bh read side critical section in neigh_xmit()
- AX.25: Close socket connection on session completion
- [powerpc] crypto: vmx - Increase priority of aes-cbc cipher
- crypto: user - re-add size check for CRYPTO_MSG_GETALG
- USB: uas: Fix slave queue_depth not being set
- usb: quirks: Fix sorting
- usb: quirks: Add no-lpm quirk for Acer C120 LED Projector
- [armhf] usb: musb: only restore devctl when session was set in backup
- [armhf] usb: musb: Stop bulk endpoint while queue is rotated
- [armhf] usb: musb: Ensure rx reinit occurs for shared_fifo endpoints
- [armhf] usb: musb: host: correct cppi dma channel for isoch transfer
- xhci: Cleanup only when releasing primary hcd
- usb: xhci-plat: properly handle probe deferral for devm_clk_get()
- USB: xhci: Add broken streams quirk for Frescologic device id 1009
- xhci: Fix handling timeouted commands on hosts in weird states.
- USB: mos7720: delete parport
- usb: gadget: fix spinlock dead lock in gadgetfs
- [arm64, armhf] usb: host: ehci-tegra: Grab the correct UTMI pads reset
- usb: dwc3: exynos: Fix deferred probing storm.
[ Uwe Kleine-König ]
* Cherry pick patches for rtc-s35390a from next. (Closes: #794266)
-- Uwe Kleine-König <ukleinek@debian.org> Sun, 10 Jul 2016 15:25:48 +0200

View File

@ -1,81 +0,0 @@
From: "Steinar H. Gunderson" <sesse@google.com>
Date: Tue, 24 May 2016 20:13:15 +0200
Forwarded: http://mid.gmane.org/E1b6Hj3-0001MI-AS@pannekake.samfundet.no
Subject: dwc3-exynos: Fix deferred probing storm.
Bug-Debian: https://bugs.debian.org/823552
dwc3-exynos has two problems during init if the regulators are slow
to come up (for instance if the I2C bus driver is not on the initramfs)
and return probe deferral. First, every time this happens, the driver
leaks the USB phys created; they need to be deallocated on error.
Second, since the phy devices are created before the regulators fail,
this means that there's a new device to re-trigger deferred probing,
which causes it to essentially go into a busy loop of re-probing the
device until the regulators come up.
Move the phy creation to after the regulators have succeeded, and also
fix cleanup on failure. On my ODROID XU4 system (with Debian's initramfs
which doesn't contain the I2C driver), this reduces the number of probe
attempts (for each of the two controllers) from more than 2000 to eight.
Signed-off-by: Steinar H. Gunderson <sesse@google.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Vivek Gautam <gautam.vivek@samsung.com>
Fixes: d720f057fda4 ("usb: dwc3: exynos: add nop transceiver support")
Cc: <stable@vger.kernel.org>
---
drivers/usb/dwc3/dwc3-exynos.c | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
index dd5cb55..2f1fb7e 100644
--- a/drivers/usb/dwc3/dwc3-exynos.c
+++ b/drivers/usb/dwc3/dwc3-exynos.c
@@ -128,12 +128,6 @@ static int dwc3_exynos_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, exynos);
- ret = dwc3_exynos_register_phys(exynos);
- if (ret) {
- dev_err(dev, "couldn't register PHYs\n");
- return ret;
- }
-
exynos->dev = dev;
exynos->clk = devm_clk_get(dev, "usbdrd30");
@@ -183,20 +177,29 @@ static int dwc3_exynos_probe(struct platform_device *pdev)
goto err3;
}
+ ret = dwc3_exynos_register_phys(exynos);
+ if (ret) {
+ dev_err(dev, "couldn't register PHYs\n");
+ goto err4;
+ }
+
if (node) {
ret = of_platform_populate(node, NULL, NULL, dev);
if (ret) {
dev_err(dev, "failed to add dwc3 core\n");
- goto err4;
+ goto err5;
}
} else {
dev_err(dev, "no device node, failed to add dwc3 core\n");
ret = -ENODEV;
- goto err4;
+ goto err5;
}
return 0;
+err5:
+ platform_device_unregister(exynos->usb2_phy);
+ platform_device_unregister(exynos->usb3_phy);
err4:
regulator_disable(exynos->vdd10);
err3:

View File

@ -46,7 +46,6 @@ bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
# Arch bug fixes
bugfix/mips/MIPS-Allow-emulation-for-unaligned-LSDXC1-instructions.patch
bugfix/powerpc/powerpc-fix-sstep-compile-on-powerpcspe.patch
bugfix/arm/dwc3-exynos-fix-deferred-probing-storm.patch
# Arch features
features/mips/MIPS-increase-MAX-PHYSMEM-BITS-on-Loongson-3-only.patch