CC: kernel: update 3.18 to 3.18.17

Changelog:
* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.17

Backport of r46150.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@46155 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Jonas Gorski 2015-07-01 00:32:10 +00:00
parent da318364ff
commit ee00711ff8
25 changed files with 46 additions and 143 deletions

View File

@ -2,9 +2,9 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .16
LINUX_VERSION-3.18 = .17
LINUX_KERNEL_MD5SUM-3.18.16 = 3b0e66fdf47b0660521d79b881eabf04
LINUX_KERNEL_MD5SUM-3.18.17 = f05d7620c587d8b0ab3cd944ff9dc9f7
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

View File

@ -1,6 +1,6 @@
--- a/drivers/spi/spi-bitbang.c
+++ b/drivers/spi/spi-bitbang.c
@@ -233,13 +233,14 @@ void spi_bitbang_cleanup(struct spi_devi
@@ -234,13 +234,14 @@ void spi_bitbang_cleanup(struct spi_devi
}
EXPORT_SYMBOL_GPL(spi_bitbang_cleanup);

View File

@ -1415,7 +1415,7 @@
endif
--- a/arch/mips/ath79/Makefile
+++ b/arch/mips/ath79/Makefile
@@ -38,9 +48,121 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route
@@ -38,9 +38,121 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route
#
# Machines
#

View File

@ -22,7 +22,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -1184,6 +1184,10 @@ config SOC_AR934X
@@ -1194,6 +1194,10 @@ config SOC_AR934X
select PCI_AR724X if PCI
def_bool n
@ -33,7 +33,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
config SOC_QCA955X
select HW_HAS_PCI
select PCI_AR724X if PCI
@@ -1226,7 +1230,7 @@ config ATH79_DEV_USB
@@ -1236,7 +1240,7 @@ config ATH79_DEV_USB
def_bool n
config ATH79_DEV_WMAC

View File

@ -445,7 +445,7 @@
}
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -1193,6 +1193,12 @@ config SOC_QCA955X
@@ -1203,6 +1203,12 @@ config SOC_QCA955X
select PCI_AR724X if PCI
def_bool n
@ -458,7 +458,7 @@
config ATH79_DEV_M25P80
select ATH79_DEV_SPI
def_bool n
@@ -1230,7 +1236,7 @@ config ATH79_DEV_USB
@@ -1240,7 +1246,7 @@ config ATH79_DEV_USB
def_bool n
config ATH79_DEV_WMAC

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -534,6 +534,16 @@ config ATH79_MACH_R6100
@@ -544,6 +544,16 @@ config ATH79_MACH_R6100
select ATH79_DEV_USB
select ATH79_DEV_WMAC

View File

@ -10,7 +10,7 @@
ATH79_MACH_PB92, /* Atheros PB92 */
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -687,6 +687,7 @@ config ATH79_MACH_OM2P
@@ -697,6 +697,7 @@ config ATH79_MACH_OM2P
config ATH79_MACH_OM5P
bool "OpenMesh OM5P board support"
select SOC_AR934X

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -694,6 +694,26 @@ config ATH79_MACH_OM5P
@@ -704,6 +704,26 @@ config ATH79_MACH_OM5P
select ATH79_DEV_M25P80
select ATH79_DEV_WMAC

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -569,6 +569,16 @@ config ATH79_MACH_RB91X
@@ -579,6 +579,16 @@ config ATH79_MACH_RB91X
select ATH79_DEV_USB
select ATH79_ROUTERBOOT

View File

@ -1,18 +1,18 @@
--- a/arch/mips/ath79/machtypes.h
+++ b/arch/mips/ath79/machtypes.h
@@ -21,6 +21,7 @@
ATH79_MACH_ALL0258N, /* Allnet ALL0258N */
ATH79_MACH_ALL0305, /* Allnet ALL0305 */
ATH79_MACH_ALL0315N, /* Allnet ALL0315N */
@@ -21,6 +21,7 @@ enum ath79_mach_type {
ATH79_MACH_ALL0258N, /* Allnet ALL0258N */
ATH79_MACH_ALL0305, /* Allnet ALL0305 */
ATH79_MACH_ALL0315N, /* Allnet ALL0315N */
+ ATH79_MACH_ANTMINER_S1, /* Bitmain Antminer S1 */
ATH79_MACH_AP113, /* Atheros AP113 reference board */
ATH79_MACH_AP121, /* Atheros AP121 reference board */
ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */
ATH79_MACH_AP113, /* Atheros AP113 reference board */
ATH79_MACH_AP121, /* Atheros AP121 reference board */
ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */
--- a/arch/mips/ath79/Kconfig
+++ b/arch/mips/ath79/Kconfig
@@ -56,6 +56,16 @@
select ATH79_DEV_LEDS_GPIO
select ATH79_DEV_M25P80
@@ -56,6 +56,16 @@ config ATH79_MACH_ALL0315N
select ATH79_DEV_LEDS_GPIO
select ATH79_DEV_M25P80
+config ATH79_MACH_ANTMINER_S1
+ bool "Bitmain Antminer S1 support"
@ -25,11 +25,11 @@
+ select ATH79_DEV_WMAC
+
config ATH79_MACH_AP113
bool "Atheros AP113 board support"
select SOC_AR724X
bool "Atheros AP113 board support"
select SOC_AR724X
--- a/arch/mips/ath79/Makefile
+++ b/arch/mips/ath79/Makefile
@@ -42,6 +42,7 @@
@@ -42,6 +42,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += ma
obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o
obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o
obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o

View File

@ -12,8 +12,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
arch/arm/boot/dts/bcm4708-netgear-r6250.dts | 11 +++++++++++
2 files changed, 31 insertions(+)
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
index 0b76a07..d0bb118 100644
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
@@ -25,6 +25,26 @@
@ -43,8 +41,6 @@ index 0b76a07..d0bb118 100644
spi {
compatible = "spi-gpio";
num-chipselects = <1>;
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
index d8ccc70..a05b8c2 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
@@ -35,6 +35,17 @@
@ -65,6 +61,3 @@ index d8ccc70..a05b8c2 100644
leds {
compatible = "gpio-leds";
--
1.8.4.5

View File

@ -5,7 +5,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
@@ -123,6 +123,12 @@
@@ -143,6 +143,12 @@
#address-cells = <1>;
#size-cells = <0>;

View File

@ -14,11 +14,9 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/usb/host/bcma-hcd.c | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
index 5398e3d..d347282 100644
--- a/drivers/usb/host/bcma-hcd.c
+++ b/drivers/usb/host/bcma-hcd.c
@@ -249,7 +249,10 @@ static const struct usb_ehci_pdata ehci_pdata = {
@@ -249,7 +249,10 @@ static const struct usb_ehci_pdata ehci_
static const struct usb_ohci_pdata ohci_pdata = {
};
@ -30,7 +28,7 @@ index 5398e3d..d347282 100644
{
struct platform_device *hci_dev;
struct resource hci_res[2];
@@ -264,8 +267,7 @@ static struct platform_device *bcma_hcd_create_pdev(struct bcma_device *dev, boo
@@ -264,8 +267,7 @@ static struct platform_device *bcma_hcd_
hci_res[1].start = dev->irq;
hci_res[1].flags = IORESOURCE_IRQ;
@ -40,7 +38,7 @@ index 5398e3d..d347282 100644
if (!hci_dev)
return ERR_PTR(-ENOMEM);
@@ -276,12 +278,8 @@ static struct platform_device *bcma_hcd_create_pdev(struct bcma_device *dev, boo
@@ -276,12 +278,8 @@ static struct platform_device *bcma_hcd_
ARRAY_SIZE(hci_res));
if (ret)
goto err_alloc;
@ -55,7 +53,7 @@ index 5398e3d..d347282 100644
if (ret)
goto err_alloc;
ret = platform_device_add(hci_dev);
@@ -334,11 +332,15 @@ static int bcma_hcd_probe(struct bcma_device *dev)
@@ -334,11 +332,15 @@ static int bcma_hcd_probe(struct bcma_de
&& chipinfo->rev == 0)
ohci_addr = 0x18009000;
@ -73,6 +71,3 @@ index 5398e3d..d347282 100644
if (IS_ERR(usb_dev->ehci_dev)) {
err = PTR_ERR(usb_dev->ehci_dev);
goto err_unregister_ohci_dev;
--
1.8.4.5

View File

@ -13,11 +13,9 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/usb/host/bcma-hcd.c | 51 +++++++++++++++++++++++++++++++--------------
1 file changed, 35 insertions(+), 16 deletions(-)
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
index d347282..0b4d0e8 100644
--- a/drivers/usb/host/bcma-hcd.c
+++ b/drivers/usb/host/bcma-hcd.c
@@ -34,6 +34,7 @@ MODULE_DESCRIPTION("Common USB driver for BCMA Bus");
@@ -34,6 +34,7 @@ MODULE_DESCRIPTION("Common USB driver fo
MODULE_LICENSE("GPL");
struct bcma_hcd_device {
@ -57,7 +55,7 @@ index d347282..0b4d0e8 100644
switch (dev->id.id) {
case BCMA_CORE_NS_USB20:
bcma_hcd_init_chip_arm(dev);
@@ -346,7 +336,6 @@ static int bcma_hcd_probe(struct bcma_device *dev)
@@ -346,7 +336,6 @@ static int bcma_hcd_probe(struct bcma_de
goto err_unregister_ohci_dev;
}
@ -102,6 +100,3 @@ index d347282..0b4d0e8 100644
static void bcma_hcd_remove(struct bcma_device *dev)
{
struct bcma_hcd_device *usb_dev = bcma_get_drvdata(dev);
--
1.8.4.5

View File

@ -11,8 +11,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/usb/host/bcma-hcd.c | 219 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 219 insertions(+)
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
index 0b4d0e8..ebcda25 100644
--- a/drivers/usb/host/bcma-hcd.c
+++ b/drivers/usb/host/bcma-hcd.c
@@ -37,6 +37,7 @@ struct bcma_hcd_device {
@ -239,7 +237,7 @@ index 0b4d0e8..ebcda25 100644
static int bcma_hcd_probe(struct bcma_device *dev)
{
int err;
@@ -365,6 +575,11 @@ static int bcma_hcd_probe(struct bcma_device *dev)
@@ -365,6 +575,11 @@ static int bcma_hcd_probe(struct bcma_de
if (err)
return err;
break;
@ -251,7 +249,7 @@ index 0b4d0e8..ebcda25 100644
default:
return -ENODEV;
}
@@ -378,11 +593,14 @@ static void bcma_hcd_remove(struct bcma_device *dev)
@@ -378,11 +593,14 @@ static void bcma_hcd_remove(struct bcma_
struct bcma_hcd_device *usb_dev = bcma_get_drvdata(dev);
struct platform_device *ohci_dev = usb_dev->ohci_dev;
struct platform_device *ehci_dev = usb_dev->ehci_dev;
@ -266,7 +264,7 @@ index 0b4d0e8..ebcda25 100644
bcma_core_disable(dev, 0);
}
@@ -419,6 +637,7 @@ static int bcma_hcd_resume(struct bcma_device *dev)
@@ -419,6 +637,7 @@ static int bcma_hcd_resume(struct bcma_d
static const struct bcma_device_id bcma_hcd_table[] = {
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_USB20_HOST, BCMA_ANY_REV, BCMA_ANY_CLASS),
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_NS_USB20, BCMA_ANY_REV, BCMA_ANY_CLASS),
@ -274,6 +272,3 @@ index 0b4d0e8..ebcda25 100644
BCMA_CORETABLE_END
};
MODULE_DEVICE_TABLE(bcma, bcma_hcd_table);
--
1.8.4.5

View File

@ -14,11 +14,9 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/usb/host/bcma-hcd.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
index 8853ef7..d18ffdc 100644
--- a/drivers/usb/host/bcma-hcd.c
+++ b/drivers/usb/host/bcma-hcd.c
@@ -230,17 +230,22 @@ static void bcma_hcd_init_chip_arm(struct bcma_device *dev)
@@ -230,17 +230,22 @@ static void bcma_hcd_init_chip_arm(struc
static void bcma_hci_platform_power_gpio(struct bcma_device *dev, bool val)
{
@ -45,6 +43,3 @@ index 8853ef7..d18ffdc 100644
gpio_free(gpio);
}
}
--
1.8.4.5

View File

@ -14,8 +14,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/usb/host/xhci.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 62 insertions(+)
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 3bceabe..0737ab2 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -122,6 +122,64 @@ int xhci_halt(struct xhci_hcd *xhci)
@ -83,7 +81,7 @@ index 3bceabe..0737ab2 100644
/*
* Set the run bit and wait for the host to be running.
*/
@@ -146,6 +204,10 @@ static int xhci_start(struct xhci_hcd *xhci)
@@ -146,6 +204,10 @@ static int xhci_start(struct xhci_hcd *x
xhci_err(xhci, "Host took too long to start, "
"waited %u microseconds.\n",
XHCI_MAX_HALT_USEC);
@ -94,6 +92,3 @@ index 3bceabe..0737ab2 100644
if (!ret)
xhci->xhc_state &= ~XHCI_STATE_HALTED;
return ret;
--
1.8.4.5

View File

@ -4081,7 +4081,7 @@ Signed-off-by: Kari Suvanto <karis79@gmail.com>
+module_exit(fsg_cleanup);
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -744,6 +744,19 @@ config USB_HWA_HCD
@@ -751,6 +751,19 @@ config USB_HWA_HCD
To compile this driver a module, choose M here: the module
will be called "hwa-hc".

View File

@ -26,7 +26,7 @@
obj-$(CONFIG_SPI_DESIGNWARE) += spi-dw.o
--- a/drivers/spi/spi-bitbang.c
+++ b/drivers/spi/spi-bitbang.c
@@ -332,6 +332,10 @@ static int spi_bitbang_transfer_one(stru
@@ -335,6 +335,10 @@ static int spi_bitbang_transfer_one(stru
*/
if (!m->is_dma_mapped)
t->rx_dma = t->tx_dma = 0;

View File

@ -1,58 +0,0 @@
From 1430a5975e1a5f249875faab7fd35b915a8d2397 Mon Sep 17 00:00:00 2001
From: Thadeu Lima de Souza Cascardo <cascardo@redhat.com>
Date: Fri, 22 May 2015 12:18:59 -0300
Subject: [PATCH] bridge: fix parsing of MLDv2 reports
When more than a multicast address is present in a MLDv2 report, all but
the first address is ignored, because the code breaks out of the loop if
there has not been an error adding that address.
This has caused failures when two guests connected through the bridge
tried to communicate using IPv6. Neighbor discoveries would not be
transmitted to the other guest when both used a link-local address and a
static address.
This only happens when there is a MLDv2 querier in the network.
The fix will only break out of the loop when there is a failure adding a
multicast address.
The mdb before the patch:
dev ovirtmgmt port vnet0 grp ff02::1:ff7d:6603 temp
dev ovirtmgmt port vnet1 grp ff02::1:ff7d:6604 temp
dev ovirtmgmt port bond0.86 grp ff02::2 temp
After the patch:
dev ovirtmgmt port vnet0 grp ff02::1:ff7d:6603 temp
dev ovirtmgmt port vnet1 grp ff02::1:ff7d:6604 temp
dev ovirtmgmt port bond0.86 grp ff02::fb temp
dev ovirtmgmt port bond0.86 grp ff02::2 temp
dev ovirtmgmt port bond0.86 grp ff02::d temp
dev ovirtmgmt port vnet0 grp ff02::1:ff00:76 temp
dev ovirtmgmt port bond0.86 grp ff02::16 temp
dev ovirtmgmt port vnet1 grp ff02::1:ff00:77 temp
dev ovirtmgmt port bond0.86 grp ff02::1:ff00:def temp
dev ovirtmgmt port bond0.86 grp ff02::1:ffa1:40bf temp
Fixes: 08b202b67264 ("bridge br_multicast: IPv6 MLD support.")
Reported-by: Rik Theys <Rik.Theys@esat.kuleuven.be>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@redhat.com>
Tested-by: Rik Theys <Rik.Theys@esat.kuleuven.be>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
net/bridge/br_multicast.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
@@ -1071,7 +1071,7 @@ static int br_ip6_multicast_mld2_report(
err = br_ip6_multicast_add_group(br, port, &grec->grec_mca,
vid);
- if (!err)
+ if (err)
break;
}

View File

@ -21,8 +21,6 @@ V2: Drop useless "default n", thanks Sergei :)
drivers/usb/host/Kconfig | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 197a6a3..688698a 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -32,7 +32,14 @@ config USB_XHCI_PCI
@ -41,6 +39,3 @@ index 197a6a3..688698a 100644
config USB_XHCI_MVEBU
tristate "xHCI support for Marvell Armada 375/38x"
--
1.8.4.5

View File

@ -84,7 +84,7 @@
if (qdisc == NULL) {
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
@@ -1945,7 +1945,7 @@ static int __init pktsched_init(void)
@@ -1947,7 +1947,7 @@ static int __init pktsched_init(void)
return err;
}

View File

@ -2610,7 +2610,7 @@
"ClearPortFeature USB_PORT_FEAT_SUSPEND\n");
- writel(0, hsotg->regs + PCGCTL);
+ dwc2_writel(0, hsotg->regs + PCGCTL);
usleep_range(20000, 40000);
msleep(USB_RESUME_TIMEOUT);
hprt0 = dwc2_read_hprt0(hsotg);
hprt0 |= HPRT0_RES;

View File

@ -1,6 +1,6 @@
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -302,6 +302,13 @@ config USB_OCTEON_EHCI
@@ -309,6 +309,13 @@ config USB_OCTEON_EHCI
USB 2.0 device support. All CN6XXX based chips with USB are
supported.

View File

@ -1,8 +1,6 @@
Index: linux-3.18.16/arch/mips/ralink/cevt-rt3352.c
===================================================================
--- linux-3.18.16.orig/arch/mips/ralink/cevt-rt3352.c 2015-06-14 09:10:18.544132719 +0200
+++ linux-3.18.16/arch/mips/ralink/cevt-rt3352.c 2015-06-18 13:30:04.830117077 +0200
@@ -53,8 +53,7 @@
--- a/arch/mips/ralink/cevt-rt3352.c
+++ b/arch/mips/ralink/cevt-rt3352.c
@@ -53,8 +53,7 @@ static int systick_next_event(unsigned l
sdev = container_of(evt, struct systick_device, dev);
count = ioread32(sdev->membase + SYSTICK_COUNT);