mirror of https://github.com/hak5/openwrt.git
kernel: bump 4.9 to 4.9.187
Refreshed all patches. Altered patches: - 021-bridge-multicast-to-unicast.patch Compile-tested on: none Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>master
parent
274895a8d7
commit
a4d366005d
|
@ -6,11 +6,11 @@ ifdef CONFIG_TESTING_KERNEL
|
|||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||
endif
|
||||
|
||||
LINUX_VERSION-4.9 = .186
|
||||
LINUX_VERSION-4.9 = .187
|
||||
LINUX_VERSION-4.14 = .134
|
||||
LINUX_VERSION-4.19 = .62
|
||||
|
||||
LINUX_KERNEL_HASH-4.9.186 = 242484430d0729791d8efd92181b7d34b4021050646c6e00cf459866eab94b6a
|
||||
LINUX_KERNEL_HASH-4.9.187 = 014bcd042cd25e073539c17bd34c616a936b19787a9c6a4c35d36a4f28afd1c7
|
||||
LINUX_KERNEL_HASH-4.14.134 = 0b21e7b5effd92303a551b5be2380c9703d6fb87cfe5189fe0d795cc73903d2d
|
||||
LINUX_KERNEL_HASH-4.19.62 = 07be647189ced7eb8ba5ee769906e67919975772184842cc517f609df50cdadc
|
||||
|
||||
|
|
|
@ -117,7 +117,7 @@ Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
|
|||
+
|
||||
--- a/include/linux/compiler.h
|
||||
+++ b/include/linux/compiler.h
|
||||
@@ -583,4 +583,23 @@ static __always_inline void __write_once
|
||||
@@ -589,4 +589,23 @@ unsigned long read_word_at_a_time(const
|
||||
# define __kprobes
|
||||
# define nokprobe_inline inline
|
||||
#endif
|
||||
|
|
|
@ -246,14 +246,14 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
struct igmpv3_report *ih;
|
||||
struct igmpv3_grec *grec;
|
||||
int i;
|
||||
@@ -1068,12 +1101,14 @@ static int br_ip4_multicast_igmp3_report
|
||||
@@ -1070,12 +1103,14 @@ static int br_ip4_multicast_igmp3_report
|
||||
continue;
|
||||
}
|
||||
|
||||
+ src = eth_hdr(skb)->h_source;
|
||||
if ((type == IGMPV3_CHANGE_TO_INCLUDE ||
|
||||
type == IGMPV3_MODE_IS_INCLUDE) &&
|
||||
ntohs(grec->grec_nsrcs) == 0) {
|
||||
nsrcs == 0) {
|
||||
- br_ip4_multicast_leave_group(br, port, group, vid);
|
||||
+ br_ip4_multicast_leave_group(br, port, group, vid, src);
|
||||
} else {
|
||||
|
@ -263,7 +263,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
if (err)
|
||||
break;
|
||||
}
|
||||
@@ -1088,6 +1123,7 @@ static int br_ip6_multicast_mld2_report(
|
||||
@@ -1090,6 +1125,7 @@ static int br_ip6_multicast_mld2_report(
|
||||
struct sk_buff *skb,
|
||||
u16 vid)
|
||||
{
|
||||
|
@ -271,9 +271,9 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
struct icmp6hdr *icmp6h;
|
||||
struct mld2_grec *grec;
|
||||
int i;
|
||||
@@ -1139,10 +1175,11 @@ static int br_ip6_multicast_mld2_report(
|
||||
@@ -1144,10 +1180,11 @@ static int br_ip6_multicast_mld2_report(
|
||||
grec->grec_type == MLD2_MODE_IS_INCLUDE) &&
|
||||
ntohs(*nsrcs) == 0) {
|
||||
nsrcs == 0) {
|
||||
br_ip6_multicast_leave_group(br, port, &grec->grec_mca,
|
||||
- vid);
|
||||
+ vid, src);
|
||||
|
@ -285,7 +285,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
if (err)
|
||||
break;
|
||||
}
|
||||
@@ -1458,7 +1495,8 @@ br_multicast_leave_group(struct net_brid
|
||||
@@ -1462,7 +1499,8 @@ br_multicast_leave_group(struct net_brid
|
||||
struct net_bridge_port *port,
|
||||
struct br_ip *group,
|
||||
struct bridge_mcast_other_query *other_query,
|
||||
|
@ -295,7 +295,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
{
|
||||
struct net_bridge_mdb_htable *mdb;
|
||||
struct net_bridge_mdb_entry *mp;
|
||||
@@ -1482,7 +1520,7 @@ br_multicast_leave_group(struct net_brid
|
||||
@@ -1486,7 +1524,7 @@ br_multicast_leave_group(struct net_brid
|
||||
for (pp = &mp->ports;
|
||||
(p = mlock_dereference(*pp, br)) != NULL;
|
||||
pp = &p->next) {
|
||||
|
@ -304,7 +304,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
continue;
|
||||
|
||||
rcu_assign_pointer(*pp, p->next);
|
||||
@@ -1513,7 +1551,7 @@ br_multicast_leave_group(struct net_brid
|
||||
@@ -1517,7 +1555,7 @@ br_multicast_leave_group(struct net_brid
|
||||
for (p = mlock_dereference(mp->ports, br);
|
||||
p != NULL;
|
||||
p = mlock_dereference(p->next, br)) {
|
||||
|
@ -313,7 +313,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
continue;
|
||||
|
||||
if (!hlist_unhashed(&p->mglist) &&
|
||||
@@ -1564,7 +1602,8 @@ out:
|
||||
@@ -1568,7 +1606,8 @@ out:
|
||||
static void br_ip4_multicast_leave_group(struct net_bridge *br,
|
||||
struct net_bridge_port *port,
|
||||
__be32 group,
|
||||
|
@ -323,7 +323,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
{
|
||||
struct br_ip br_group;
|
||||
struct bridge_mcast_own_query *own_query;
|
||||
@@ -1579,14 +1618,15 @@ static void br_ip4_multicast_leave_group
|
||||
@@ -1583,14 +1622,15 @@ static void br_ip4_multicast_leave_group
|
||||
br_group.vid = vid;
|
||||
|
||||
br_multicast_leave_group(br, port, &br_group, &br->ip4_other_query,
|
||||
|
@ -341,7 +341,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
{
|
||||
struct br_ip br_group;
|
||||
struct bridge_mcast_own_query *own_query;
|
||||
@@ -1601,7 +1641,7 @@ static void br_ip6_multicast_leave_group
|
||||
@@ -1605,7 +1645,7 @@ static void br_ip6_multicast_leave_group
|
||||
br_group.vid = vid;
|
||||
|
||||
br_multicast_leave_group(br, port, &br_group, &br->ip6_other_query,
|
||||
|
@ -350,7 +350,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
}
|
||||
#endif
|
||||
|
||||
@@ -1644,6 +1684,7 @@ static int br_multicast_ipv4_rcv(struct
|
||||
@@ -1648,6 +1688,7 @@ static int br_multicast_ipv4_rcv(struct
|
||||
u16 vid)
|
||||
{
|
||||
struct sk_buff *skb_trimmed = NULL;
|
||||
|
@ -358,7 +358,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
struct igmphdr *ih;
|
||||
int err;
|
||||
|
||||
@@ -1659,13 +1700,14 @@ static int br_multicast_ipv4_rcv(struct
|
||||
@@ -1663,13 +1704,14 @@ static int br_multicast_ipv4_rcv(struct
|
||||
}
|
||||
|
||||
ih = igmp_hdr(skb);
|
||||
|
@ -374,7 +374,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
break;
|
||||
case IGMPV3_HOST_MEMBERSHIP_REPORT:
|
||||
err = br_ip4_multicast_igmp3_report(br, port, skb_trimmed, vid);
|
||||
@@ -1674,7 +1716,7 @@ static int br_multicast_ipv4_rcv(struct
|
||||
@@ -1678,7 +1720,7 @@ static int br_multicast_ipv4_rcv(struct
|
||||
err = br_ip4_multicast_query(br, port, skb_trimmed, vid);
|
||||
break;
|
||||
case IGMP_HOST_LEAVE_MESSAGE:
|
||||
|
@ -383,7 +383,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
break;
|
||||
}
|
||||
|
||||
@@ -1694,6 +1736,7 @@ static int br_multicast_ipv6_rcv(struct
|
||||
@@ -1698,6 +1740,7 @@ static int br_multicast_ipv6_rcv(struct
|
||||
u16 vid)
|
||||
{
|
||||
struct sk_buff *skb_trimmed = NULL;
|
||||
|
@ -391,7 +391,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
struct mld_msg *mld;
|
||||
int err;
|
||||
|
||||
@@ -1713,8 +1756,10 @@ static int br_multicast_ipv6_rcv(struct
|
||||
@@ -1717,8 +1760,10 @@ static int br_multicast_ipv6_rcv(struct
|
||||
|
||||
switch (mld->mld_type) {
|
||||
case ICMPV6_MGM_REPORT:
|
||||
|
@ -403,7 +403,7 @@ Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
|
|||
break;
|
||||
case ICMPV6_MLD2_REPORT:
|
||||
err = br_ip6_multicast_mld2_report(br, port, skb_trimmed, vid);
|
||||
@@ -1723,7 +1768,8 @@ static int br_multicast_ipv6_rcv(struct
|
||||
@@ -1727,7 +1772,8 @@ static int br_multicast_ipv6_rcv(struct
|
||||
err = br_ip6_multicast_query(br, port, skb_trimmed, vid);
|
||||
break;
|
||||
case ICMPV6_MGM_REDUCTION:
|
||||
|
|
|
@ -388,7 +388,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||
BNX2_PCICFG_INT_ACK_CMD_INDEX_VALID |
|
||||
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
|
||||
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
|
||||
@@ -3236,7 +3236,7 @@ static int bnx2x_poll(struct napi_struct
|
||||
@@ -3239,7 +3239,7 @@ static int bnx2x_poll(struct napi_struct
|
||||
* has been updated when NAPI was scheduled.
|
||||
*/
|
||||
if (IS_FCOE_FP(fp)) {
|
||||
|
|
|
@ -48,7 +48,7 @@ Reviewed-by: John Gilmore <gnu@toad.com>
|
|||
#define INADDR_ANY ((unsigned long int) 0x00000000)
|
||||
--- a/net/ipv4/devinet.c
|
||||
+++ b/net/ipv4/devinet.c
|
||||
@@ -898,7 +898,7 @@ static int inet_abc_len(__be32 addr)
|
||||
@@ -906,7 +906,7 @@ static int inet_abc_len(__be32 addr)
|
||||
{
|
||||
int rc = -1; /* Something else, probably a multicast. */
|
||||
|
||||
|
@ -57,7 +57,7 @@ Reviewed-by: John Gilmore <gnu@toad.com>
|
|||
rc = 0;
|
||||
else {
|
||||
__u32 haddr = ntohl(addr);
|
||||
@@ -909,6 +909,8 @@ static int inet_abc_len(__be32 addr)
|
||||
@@ -917,6 +917,8 @@ static int inet_abc_len(__be32 addr)
|
||||
rc = 16;
|
||||
else if (IN_CLASSC(haddr))
|
||||
rc = 24;
|
||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1226,7 +1226,6 @@ all: modules
|
||||
@@ -1227,7 +1227,6 @@ all: modules
|
||||
|
||||
PHONY += modules
|
||||
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
@$(kecho) ' Building modules, stage 2.';
|
||||
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
|
||||
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild
|
||||
@@ -1256,7 +1255,6 @@ _modinst_:
|
||||
@@ -1257,7 +1256,6 @@ _modinst_:
|
||||
rm -f $(MODLIB)/build ; \
|
||||
ln -s $(CURDIR) $(MODLIB)/build ; \
|
||||
fi
|
||||
|
|
|
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
||||
KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
|
||||
KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
|
||||
@@ -650,11 +655,6 @@ KBUILD_CFLAGS += $(call cc-disable-warni
|
||||
@@ -651,11 +656,6 @@ KBUILD_CFLAGS += $(call cc-disable-warni
|
||||
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
|
||||
KBUILD_CFLAGS += $(call cc-disable-warning, attribute-alias)
|
||||
|
||||
|
|
|
@ -81,7 +81,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
#include <linux/mutex.h>
|
||||
#include <linux/err.h>
|
||||
#include <linux/of.h>
|
||||
@@ -2913,3 +2914,5 @@ static int __init regmap_initcall(void)
|
||||
@@ -2915,3 +2916,5 @@ static int __init regmap_initcall(void)
|
||||
return 0;
|
||||
}
|
||||
postcore_initcall(regmap_initcall);
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
--- a/drivers/net/phy/phy_device.c
|
||||
+++ b/drivers/net/phy/phy_device.c
|
||||
@@ -1309,6 +1309,9 @@ int genphy_update_link(struct phy_device
|
||||
@@ -1315,6 +1315,9 @@ int genphy_update_link(struct phy_device
|
||||
{
|
||||
int status;
|
||||
|
||||
|
|
|
@ -221,7 +221,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
if (!root_irq_dir)
|
||||
--- a/kernel/time/timer_list.c
|
||||
+++ b/kernel/time/timer_list.c
|
||||
@@ -399,6 +399,9 @@ static int __init init_timer_list_procfs
|
||||
@@ -400,6 +400,9 @@ static int __init init_timer_list_procfs
|
||||
{
|
||||
struct proc_dir_entry *pe;
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -656,12 +656,12 @@ KBUILD_CFLAGS += $(call cc-option,-fdata
|
||||
@@ -657,12 +657,12 @@ KBUILD_CFLAGS += $(call cc-option,-fdata
|
||||
endif
|
||||
|
||||
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
||||
|
|
|
@ -65,7 +65,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
static int absolute_percpu = 0;
|
||||
static char symbol_prefix_char = '\0';
|
||||
static int base_relative = 0;
|
||||
@@ -446,6 +447,9 @@ static void write_src(void)
|
||||
@@ -449,6 +450,9 @@ static void write_src(void)
|
||||
|
||||
free(markers);
|
||||
|
||||
|
@ -75,7 +75,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
output_label("kallsyms_token_table");
|
||||
off = 0;
|
||||
for (i = 0; i < 256; i++) {
|
||||
@@ -504,6 +508,9 @@ static void *find_token(unsigned char *s
|
||||
@@ -507,6 +511,9 @@ static void *find_token(unsigned char *s
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -85,7 +85,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
for (i = 0; i < len - 1; i++) {
|
||||
if (str[i] == token[0] && str[i+1] == token[1])
|
||||
return &str[i];
|
||||
@@ -576,6 +583,9 @@ static void optimize_result(void)
|
||||
@@ -579,6 +586,9 @@ static void optimize_result(void)
|
||||
{
|
||||
int i, best;
|
||||
|
||||
|
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
/* using the '\0' symbol last allows compress_symbols to use standard
|
||||
* fast string functions */
|
||||
for (i = 255; i >= 0; i--) {
|
||||
@@ -764,6 +774,8 @@ int main(int argc, char **argv)
|
||||
@@ -767,6 +777,8 @@ int main(int argc, char **argv)
|
||||
symbol_prefix_char = *p;
|
||||
} else if (strcmp(argv[i], "--base-relative") == 0)
|
||||
base_relative = 1;
|
||||
|
|
|
@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||
|
||||
--- a/drivers/net/phy/phy_device.c
|
||||
+++ b/drivers/net/phy/phy_device.c
|
||||
@@ -998,6 +998,9 @@ void phy_detach(struct phy_device *phyde
|
||||
@@ -1004,6 +1004,9 @@ void phy_detach(struct phy_device *phyde
|
||||
struct mii_bus *bus;
|
||||
int i;
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
static struct amd_chipset_info {
|
||||
struct pci_dev *nb_dev;
|
||||
struct pci_dev *smbus_dev;
|
||||
@@ -511,6 +513,10 @@ void usb_amd_dev_put(void)
|
||||
@@ -518,6 +520,10 @@ void usb_amd_dev_put(void)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(usb_amd_dev_put);
|
||||
|
||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
/*
|
||||
* Make sure the controller is completely inactive, unable to
|
||||
* generate interrupts or do DMA.
|
||||
@@ -590,8 +596,17 @@ reset_needed:
|
||||
@@ -597,8 +603,17 @@ reset_needed:
|
||||
uhci_reset_hc(pdev, base);
|
||||
return 1;
|
||||
}
|
||||
|
@ -48,7 +48,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||
static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask)
|
||||
{
|
||||
u16 cmd;
|
||||
@@ -1158,3 +1173,4 @@ static void quirk_usb_early_handoff(stru
|
||||
@@ -1165,3 +1180,4 @@ static void quirk_usb_early_handoff(stru
|
||||
}
|
||||
DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID,
|
||||
PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff);
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
uart->capabilities = up->capabilities;
|
||||
--- a/drivers/tty/serial/serial_core.c
|
||||
+++ b/drivers/tty/serial/serial_core.c
|
||||
@@ -2254,6 +2254,7 @@ uart_report_port(struct uart_driver *drv
|
||||
@@ -2259,6 +2259,7 @@ uart_report_port(struct uart_driver *drv
|
||||
snprintf(address, sizeof(address),
|
||||
"I/O 0x%lx offset 0x%x", port->iobase, port->hub6);
|
||||
break;
|
||||
|
@ -26,7 +26,7 @@
|
|||
case UPIO_MEM:
|
||||
case UPIO_MEM16:
|
||||
case UPIO_MEM32:
|
||||
@@ -2926,6 +2927,7 @@ int uart_match_port(struct uart_port *po
|
||||
@@ -2931,6 +2932,7 @@ int uart_match_port(struct uart_port *po
|
||||
case UPIO_HUB6:
|
||||
return (port1->iobase == port2->iobase) &&
|
||||
(port1->hub6 == port2->hub6);
|
||||
|
@ -105,7 +105,7 @@
|
|||
case UPIO_AU:
|
||||
p->serial_out(p, offset, value);
|
||||
p->serial_in(p, UART_LCR); /* safe, no side-effects */
|
||||
@@ -2758,6 +2778,7 @@ static int serial8250_request_std_resour
|
||||
@@ -2759,6 +2779,7 @@ static int serial8250_request_std_resour
|
||||
case UPIO_MEM32BE:
|
||||
case UPIO_MEM16:
|
||||
case UPIO_MEM:
|
||||
|
@ -113,7 +113,7 @@
|
|||
if (!port->mapbase)
|
||||
break;
|
||||
|
||||
@@ -2796,6 +2817,7 @@ static void serial8250_release_std_resou
|
||||
@@ -2797,6 +2818,7 @@ static void serial8250_release_std_resou
|
||||
case UPIO_MEM32BE:
|
||||
case UPIO_MEM16:
|
||||
case UPIO_MEM:
|
||||
|
|
Loading…
Reference in New Issue