mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-31 16:35:44 +00:00
kernel: bump 4.9 to 4.9.143
Refreshed all patches. Altered patches: - 950-0063-Improve-__copy_to_user-and-__copy_from_user-performa.patch - 950-0149-Update-vfpmodule.c.patch - 201-extra_optimization.patch New symbol: - CONFIG_HARDEN_BRANCH_PREDICTOR Compile-tested on: ar71xx, ar7, arc770, at91, brcm2708, brcm63xx, ixp4xx, lantiq, layerscape, mpc85xx, orion, rb532, uml Runtime-tested on: ar71xx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
This commit is contained in:
parent
d5afaa4114
commit
bcd7644007
@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
LINUX_RELEASE?=1
|
LINUX_RELEASE?=1
|
||||||
|
|
||||||
LINUX_VERSION-4.9 = .138
|
LINUX_VERSION-4.9 = .143
|
||||||
LINUX_VERSION-4.14 = .82
|
LINUX_VERSION-4.14 = .82
|
||||||
|
|
||||||
LINUX_KERNEL_HASH-4.9.138 = 92301242601d50854b173a3fdec318480e24fc86f32102003a9ed7108fab21b7
|
LINUX_KERNEL_HASH-4.9.143 = 0eb76464a696675fd4f8762e390328a377e973bfa263b00544ca1b5b10ac2cbf
|
||||||
LINUX_KERNEL_HASH-4.14.82 = a790a2e6f6a76d70decec91d1b7bcfba90f821b076273da070f6e0e1e6391dad
|
LINUX_KERNEL_HASH-4.14.82 = a790a2e6f6a76d70decec91d1b7bcfba90f821b076273da070f6e0e1e6391dad
|
||||||
|
|
||||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||||
|
@ -202,6 +202,7 @@ CONFIG_GPIOLIB_IRQCHIP=y
|
|||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_GRACE_PERIOD=y
|
CONFIG_GRACE_PERIOD=y
|
||||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||||
|
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||||
CONFIG_HARDIRQS_SW_RESEND=y
|
CONFIG_HARDIRQS_SW_RESEND=y
|
||||||
CONFIG_HAS_DMA=y
|
CONFIG_HAS_DMA=y
|
||||||
CONFIG_HAS_IOMEM=y
|
CONFIG_HAS_IOMEM=y
|
||||||
|
@ -187,6 +187,7 @@ CONFIG_GPIOLIB=y
|
|||||||
# CONFIG_GPIO_BCM_VIRT is not set
|
# CONFIG_GPIO_BCM_VIRT is not set
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||||
|
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||||
CONFIG_HARDIRQS_SW_RESEND=y
|
CONFIG_HARDIRQS_SW_RESEND=y
|
||||||
CONFIG_HAS_DMA=y
|
CONFIG_HAS_DMA=y
|
||||||
CONFIG_HAS_IOMEM=y
|
CONFIG_HAS_IOMEM=y
|
||||||
|
@ -202,6 +202,7 @@ CONFIG_GPIO_BCM_EXP=y
|
|||||||
CONFIG_GPIO_BCM_VIRT=y
|
CONFIG_GPIO_BCM_VIRT=y
|
||||||
CONFIG_GPIO_SYSFS=y
|
CONFIG_GPIO_SYSFS=y
|
||||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||||
|
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||||
CONFIG_HARDIRQS_SW_RESEND=y
|
CONFIG_HARDIRQS_SW_RESEND=y
|
||||||
CONFIG_HAS_DMA=y
|
CONFIG_HAS_DMA=y
|
||||||
CONFIG_HAS_IOMEM=y
|
CONFIG_HAS_IOMEM=y
|
||||||
|
@ -25,7 +25,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
|
|||||||
static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
|
static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
|
||||||
u32 *data, int in_pm)
|
u32 *data, int in_pm)
|
||||||
{
|
{
|
||||||
@@ -1954,7 +1958,8 @@ static int smsc95xx_rx_fixup(struct usbn
|
@@ -1961,7 +1965,8 @@ static int smsc95xx_rx_fixup(struct usbn
|
||||||
if (dev->net->features & NETIF_F_RXCSUM)
|
if (dev->net->features & NETIF_F_RXCSUM)
|
||||||
smsc95xx_rx_csum_offload(skb);
|
smsc95xx_rx_csum_offload(skb);
|
||||||
skb_trim(skb, skb->len - 4); /* remove fcs */
|
skb_trim(skb, skb->len - 4); /* remove fcs */
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
|
|||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@@ -1972,7 +1977,8 @@ static int smsc95xx_rx_fixup(struct usbn
|
@@ -1979,7 +1984,8 @@ static int smsc95xx_rx_fixup(struct usbn
|
||||||
if (dev->net->features & NETIF_F_RXCSUM)
|
if (dev->net->features & NETIF_F_RXCSUM)
|
||||||
smsc95xx_rx_csum_offload(ax_skb);
|
smsc95xx_rx_csum_offload(ax_skb);
|
||||||
skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */
|
skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */
|
||||||
|
@ -9,7 +9,7 @@ Subject: [PATCH] kbuild: Ignore dtco targets when filtering symbols
|
|||||||
|
|
||||||
--- a/scripts/Kbuild.include
|
--- a/scripts/Kbuild.include
|
||||||
+++ b/scripts/Kbuild.include
|
+++ b/scripts/Kbuild.include
|
||||||
@@ -285,7 +285,7 @@ ksym_dep_filter =
|
@@ -295,7 +295,7 @@ ksym_dep_filter =
|
||||||
$(CPP) $(call flags_nodeps,c_flags) -D__KSYM_DEPS__ $< ;; \
|
$(CPP) $(call flags_nodeps,c_flags) -D__KSYM_DEPS__ $< ;; \
|
||||||
as_*_S|cpp_s_S) \
|
as_*_S|cpp_s_S) \
|
||||||
$(CPP) $(call flags_nodeps,a_flags) -D__KSYM_DEPS__ $< ;; \
|
$(CPP) $(call flags_nodeps,a_flags) -D__KSYM_DEPS__ $< ;; \
|
||||||
|
@ -696,7 +696,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
|||||||
}
|
}
|
||||||
--- a/drivers/usb/core/hub.c
|
--- a/drivers/usb/core/hub.c
|
||||||
+++ b/drivers/usb/core/hub.c
|
+++ b/drivers/usb/core/hub.c
|
||||||
@@ -5072,7 +5072,7 @@ static void port_event(struct usb_hub *h
|
@@ -5074,7 +5074,7 @@ static void port_event(struct usb_hub *h
|
||||||
if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
|
if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
|
||||||
u16 status = 0, unused;
|
u16 status = 0, unused;
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
#define memset(p,v,n) \
|
#define memset(p,v,n) \
|
||||||
--- a/arch/arm/include/asm/uaccess.h
|
--- a/arch/arm/include/asm/uaccess.h
|
||||||
+++ b/arch/arm/include/asm/uaccess.h
|
+++ b/arch/arm/include/asm/uaccess.h
|
||||||
@@ -477,6 +477,9 @@ do { \
|
@@ -489,6 +489,9 @@ do { \
|
||||||
extern unsigned long __must_check
|
extern unsigned long __must_check
|
||||||
arm_copy_from_user(void *to, const void __user *from, unsigned long n);
|
arm_copy_from_user(void *to, const void __user *from, unsigned long n);
|
||||||
|
|
||||||
@ -262,17 +262,21 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
+.endm
|
+.endm
|
||||||
--- a/arch/arm/lib/copy_from_user.S
|
--- a/arch/arm/lib/copy_from_user.S
|
||||||
+++ b/arch/arm/lib/copy_from_user.S
|
+++ b/arch/arm/lib/copy_from_user.S
|
||||||
@@ -89,11 +89,13 @@
|
@@ -89,7 +89,8 @@
|
||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
-ENTRY(arm_copy_from_user)
|
-ENTRY(arm_copy_from_user)
|
||||||
+ENTRY(__copy_from_user_std)
|
+ENTRY(__copy_from_user_std)
|
||||||
+WEAK(arm_copy_from_user)
|
+WEAK(arm_copy_from_user)
|
||||||
|
#ifdef CONFIG_CPU_SPECTRE
|
||||||
|
get_thread_info r3
|
||||||
|
ldr r3, [r3, #TI_ADDR_LIMIT]
|
||||||
|
@@ -102,7 +103,7 @@ ENTRY(arm_copy_from_user)
|
||||||
|
|
||||||
#include "copy_template.S"
|
#include "copy_template.S"
|
||||||
|
|
||||||
ENDPROC(arm_copy_from_user)
|
-ENDPROC(arm_copy_from_user)
|
||||||
+ENDPROC(__copy_from_user_std)
|
+ENDPROC(__copy_from_user_std)
|
||||||
|
|
||||||
.pushsection .fixup,"ax"
|
.pushsection .fixup,"ax"
|
||||||
|
@ -102,15 +102,15 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
|
|||||||
vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN);
|
vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN);
|
||||||
fmxr(FPEXC, fpexc);
|
fmxr(FPEXC, fpexc);
|
||||||
}
|
}
|
||||||
@@ -604,6 +611,7 @@ int vfp_restore_user_hwstate(struct user
|
@@ -602,6 +609,7 @@ int vfp_restore_user_hwstate(struct user
|
||||||
|
struct thread_info *thread = current_thread_info();
|
||||||
struct vfp_hard_struct *hwstate = &thread->vfpstate.hard;
|
struct vfp_hard_struct *hwstate = &thread->vfpstate.hard;
|
||||||
unsigned long fpexc;
|
unsigned long fpexc;
|
||||||
int err = 0;
|
|
||||||
+ u32 fpsid = fmrx(FPSID);
|
+ u32 fpsid = fmrx(FPSID);
|
||||||
|
|
||||||
/* Disable VFP to avoid corrupting the new thread state. */
|
/* Disable VFP to avoid corrupting the new thread state. */
|
||||||
vfp_flush_hwstate(thread);
|
vfp_flush_hwstate(thread);
|
||||||
@@ -627,8 +635,12 @@ int vfp_restore_user_hwstate(struct user
|
@@ -624,8 +632,12 @@ int vfp_restore_user_hwstate(struct user
|
||||||
/* Ensure the VFP is enabled. */
|
/* Ensure the VFP is enabled. */
|
||||||
fpexc |= FPEXC_EN;
|
fpexc |= FPEXC_EN;
|
||||||
|
|
||||||
@ -124,8 +124,8 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
|
|||||||
+
|
+
|
||||||
hwstate->fpexc = fpexc;
|
hwstate->fpexc = fpexc;
|
||||||
|
|
||||||
__get_user_error(hwstate->fpinst, &ufp_exc->fpinst, err);
|
hwstate->fpinst = ufp_exc->fpinst;
|
||||||
@@ -698,7 +710,8 @@ void kernel_neon_begin(void)
|
@@ -695,7 +707,8 @@ void kernel_neon_begin(void)
|
||||||
cpu = get_cpu();
|
cpu = get_cpu();
|
||||||
|
|
||||||
fpexc = fmrx(FPEXC) | FPEXC_EN;
|
fpexc = fmrx(FPEXC) | FPEXC_EN;
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/smsc95xx.c
|
--- a/drivers/net/usb/smsc95xx.c
|
||||||
+++ b/drivers/net/usb/smsc95xx.c
|
+++ b/drivers/net/usb/smsc95xx.c
|
||||||
@@ -2004,13 +2004,13 @@ static struct sk_buff *smsc95xx_tx_fixup
|
@@ -2011,13 +2011,13 @@ static struct sk_buff *smsc95xx_tx_fixup
|
||||||
/* We do not advertise SG, so skbs should be already linearized */
|
/* We do not advertise SG, so skbs should be already linearized */
|
||||||
BUG_ON(skb_shinfo(skb)->nr_frags);
|
BUG_ON(skb_shinfo(skb)->nr_frags);
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -1213,7 +1213,6 @@ all: modules
|
@@ -1226,7 +1226,6 @@ all: modules
|
||||||
|
|
||||||
PHONY += modules
|
PHONY += modules
|
||||||
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin
|
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.';
|
@$(kecho) ' Building modules, stage 2.';
|
||||||
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
|
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
|
||||||
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild
|
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild
|
||||||
@@ -1243,7 +1242,6 @@ _modinst_:
|
@@ -1256,7 +1255,6 @@ _modinst_:
|
||||||
rm -f $(MODLIB)/build ; \
|
rm -f $(MODLIB)/build ; \
|
||||||
ln -s $(CURDIR) $(MODLIB)/build ; \
|
ln -s $(CURDIR) $(MODLIB)/build ; \
|
||||||
fi
|
fi
|
||||||
|
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
||||||
KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
|
KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
|
||||||
KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
|
KERNELVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
|
||||||
@@ -638,11 +643,6 @@ KBUILD_CFLAGS += $(call cc-disable-warni
|
@@ -671,11 +676,6 @@ KBUILD_CFLAGS += $(call cc-disable-warni
|
||||||
KBUILD_CFLAGS += $(call cc-disable-warning, int-in-bool-context)
|
KBUILD_CFLAGS += $(call cc-disable-warning, int-in-bool-context)
|
||||||
KBUILD_CFLAGS += $(call cc-disable-warning, attribute-alias)
|
KBUILD_CFLAGS += $(call cc-disable-warning, attribute-alias)
|
||||||
|
|
||||||
@ -43,8 +43,8 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
-endif
|
-endif
|
||||||
-
|
-
|
||||||
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
||||||
KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION)
|
KBUILD_CFLAGS += $(call cc-option,-Oz,-Os)
|
||||||
else
|
KBUILD_CFLAGS += $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION)
|
||||||
--- a/arch/arm/Kconfig
|
--- a/arch/arm/Kconfig
|
||||||
+++ b/arch/arm/Kconfig
|
+++ b/arch/arm/Kconfig
|
||||||
@@ -81,6 +81,7 @@ config ARM
|
@@ -81,6 +81,7 @@ config ARM
|
||||||
|
@ -90,7 +90,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
__used \
|
__used \
|
||||||
--- a/scripts/Makefile.build
|
--- a/scripts/Makefile.build
|
||||||
+++ b/scripts/Makefile.build
|
+++ b/scripts/Makefile.build
|
||||||
@@ -401,7 +401,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $(
|
@@ -409,7 +409,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $(
|
||||||
# Linker scripts preprocessor (.lds.S -> .lds)
|
# Linker scripts preprocessor (.lds.S -> .lds)
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
quiet_cmd_cpp_lds_S = LDS $@
|
quiet_cmd_cpp_lds_S = LDS $@
|
||||||
|
@ -14,12 +14,12 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -644,12 +644,12 @@ KBUILD_CFLAGS += $(call cc-option,-fdata
|
@@ -678,12 +678,12 @@ endif
|
||||||
endif
|
|
||||||
|
|
||||||
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
||||||
-KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,)
|
KBUILD_CFLAGS += $(call cc-option,-Oz,-Os)
|
||||||
+KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION)
|
-KBUILD_CFLAGS += $(call cc-disable-warning,maybe-uninitialized,)
|
||||||
|
+KBUILD_CFLAGS += $(call cc-disable-warning,maybe-uninitialized,) $(EXTRA_OPTIMIZATION)
|
||||||
else
|
else
|
||||||
ifdef CONFIG_PROFILE_ALL_BRANCHES
|
ifdef CONFIG_PROFILE_ALL_BRANCHES
|
||||||
-KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,)
|
-KBUILD_CFLAGS += -O2 $(call cc-disable-warning,maybe-uninitialized,)
|
||||||
|
@ -141,7 +141,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
static const struct rt6_info ip6_blk_hole_entry_template = {
|
static const struct rt6_info ip6_blk_hole_entry_template = {
|
||||||
.dst = {
|
.dst = {
|
||||||
.__refcnt = ATOMIC_INIT(1),
|
.__refcnt = ATOMIC_INIT(1),
|
||||||
@@ -1967,6 +1984,11 @@ static struct rt6_info *ip6_route_info_c
|
@@ -1970,6 +1987,11 @@ static struct rt6_info *ip6_route_info_c
|
||||||
rt->dst.output = ip6_pkt_prohibit_out;
|
rt->dst.output = ip6_pkt_prohibit_out;
|
||||||
rt->dst.input = ip6_pkt_prohibit;
|
rt->dst.input = ip6_pkt_prohibit;
|
||||||
break;
|
break;
|
||||||
@ -191,7 +191,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
case -EAGAIN:
|
case -EAGAIN:
|
||||||
rtm->rtm_type = RTN_THROW;
|
rtm->rtm_type = RTN_THROW;
|
||||||
break;
|
break;
|
||||||
@@ -3490,6 +3527,8 @@ static int ip6_route_dev_notify(struct n
|
@@ -3498,6 +3535,8 @@ static int ip6_route_dev_notify(struct n
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
|
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
|
||||||
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
|
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
|
||||||
@ -200,7 +200,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
|
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
|
||||||
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
|
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
|
||||||
#endif
|
#endif
|
||||||
@@ -3501,6 +3540,7 @@ static int ip6_route_dev_notify(struct n
|
@@ -3509,6 +3548,7 @@ static int ip6_route_dev_notify(struct n
|
||||||
in6_dev_put(net->ipv6.ip6_null_entry->rt6i_idev);
|
in6_dev_put(net->ipv6.ip6_null_entry->rt6i_idev);
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
in6_dev_put(net->ipv6.ip6_prohibit_entry->rt6i_idev);
|
in6_dev_put(net->ipv6.ip6_prohibit_entry->rt6i_idev);
|
||||||
@ -208,7 +208,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
in6_dev_put(net->ipv6.ip6_blk_hole_entry->rt6i_idev);
|
in6_dev_put(net->ipv6.ip6_blk_hole_entry->rt6i_idev);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -3716,6 +3756,17 @@ static int __net_init ip6_route_net_init
|
@@ -3724,6 +3764,17 @@ static int __net_init ip6_route_net_init
|
||||||
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
|
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
|
||||||
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
|
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
|
||||||
ip6_template_metrics, true);
|
ip6_template_metrics, true);
|
||||||
@ -226,7 +226,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
net->ipv6.sysctl.flush_delay = 0;
|
net->ipv6.sysctl.flush_delay = 0;
|
||||||
@@ -3734,6 +3785,8 @@ out:
|
@@ -3742,6 +3793,8 @@ out:
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
@ -235,7 +235,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
out_ip6_prohibit_entry:
|
out_ip6_prohibit_entry:
|
||||||
kfree(net->ipv6.ip6_prohibit_entry);
|
kfree(net->ipv6.ip6_prohibit_entry);
|
||||||
out_ip6_null_entry:
|
out_ip6_null_entry:
|
||||||
@@ -3751,6 +3804,7 @@ static void __net_exit ip6_route_net_exi
|
@@ -3759,6 +3812,7 @@ static void __net_exit ip6_route_net_exi
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
kfree(net->ipv6.ip6_prohibit_entry);
|
kfree(net->ipv6.ip6_prohibit_entry);
|
||||||
kfree(net->ipv6.ip6_blk_hole_entry);
|
kfree(net->ipv6.ip6_blk_hole_entry);
|
||||||
@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
#endif
|
#endif
|
||||||
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
|
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
|
||||||
}
|
}
|
||||||
@@ -3824,6 +3878,9 @@ void __init ip6_route_init_special_entri
|
@@ -3832,6 +3886,9 @@ void __init ip6_route_init_special_entri
|
||||||
init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
||||||
init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
|
init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
|
||||||
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
||||||
|
@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!(skb->dev->features & NETIF_F_GRO))
|
if (!(skb->dev->features & NETIF_F_GRO))
|
||||||
goto normal;
|
goto normal;
|
||||||
|
|
||||||
@@ -5860,6 +5863,48 @@ static void __netdev_adjacent_dev_unlink
|
@@ -5864,6 +5867,48 @@ static void __netdev_adjacent_dev_unlink
|
||||||
&upper_dev->adj_list.lower);
|
&upper_dev->adj_list.lower);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +93,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static int __netdev_upper_dev_link(struct net_device *dev,
|
static int __netdev_upper_dev_link(struct net_device *dev,
|
||||||
struct net_device *upper_dev, bool master,
|
struct net_device *upper_dev, bool master,
|
||||||
void *upper_priv, void *upper_info)
|
void *upper_priv, void *upper_info)
|
||||||
@@ -5932,6 +5977,7 @@ static int __netdev_upper_dev_link(struc
|
@@ -5936,6 +5981,7 @@ static int __netdev_upper_dev_link(struc
|
||||||
goto rollback_lower_mesh;
|
goto rollback_lower_mesh;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
|
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
ret = notifier_to_errno(ret);
|
ret = notifier_to_errno(ret);
|
||||||
@@ -6058,6 +6104,7 @@ void netdev_upper_dev_unlink(struct net_
|
@@ -6062,6 +6108,7 @@ void netdev_upper_dev_unlink(struct net_
|
||||||
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
|
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
|
||||||
__netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr);
|
__netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr);
|
||||||
|
|
||||||
@ -109,7 +109,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
|
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
}
|
}
|
||||||
@@ -6660,6 +6707,7 @@ int dev_set_mac_address(struct net_devic
|
@@ -6664,6 +6711,7 @@ int dev_set_mac_address(struct net_devic
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
dev->addr_assign_type = NET_ADDR_SET;
|
dev->addr_assign_type = NET_ADDR_SET;
|
||||||
|
@ -502,6 +502,7 @@ CONFIG_GPIO_TPS65910=y
|
|||||||
CONFIG_GPIO_TWL4030=y
|
CONFIG_GPIO_TWL4030=y
|
||||||
CONFIG_GPIO_XILINX=y
|
CONFIG_GPIO_XILINX=y
|
||||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||||
|
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||||
CONFIG_HARDIRQS_SW_RESEND=y
|
CONFIG_HARDIRQS_SW_RESEND=y
|
||||||
CONFIG_HAS_DMA=y
|
CONFIG_HAS_DMA=y
|
||||||
CONFIG_HAS_IOMEM=y
|
CONFIG_HAS_IOMEM=y
|
||||||
|
@ -421,7 +421,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
|||||||
* These are the defined Ethernet Protocol ID's.
|
* These are the defined Ethernet Protocol ID's.
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -6652,9 +6652,18 @@ int dev_set_mtu(struct net_device *dev,
|
@@ -6656,9 +6656,18 @@ int dev_set_mtu(struct net_device *dev,
|
||||||
if (new_mtu == dev->mtu)
|
if (new_mtu == dev->mtu)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -156,7 +156,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
|||||||
int ret;
|
int ret;
|
||||||
--- a/drivers/usb/core/hub.c
|
--- a/drivers/usb/core/hub.c
|
||||||
+++ b/drivers/usb/core/hub.c
|
+++ b/drivers/usb/core/hub.c
|
||||||
@@ -4431,6 +4431,14 @@ hub_port_init(struct usb_hub *hub, struc
|
@@ -4433,6 +4433,14 @@ hub_port_init(struct usb_hub *hub, struc
|
||||||
else
|
else
|
||||||
speed = usb_speed_string(udev->speed);
|
speed = usb_speed_string(udev->speed);
|
||||||
|
|
||||||
@ -636,7 +636,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
|||||||
|
|
||||||
--- a/drivers/usb/dwc3/gadget.c
|
--- a/drivers/usb/dwc3/gadget.c
|
||||||
+++ b/drivers/usb/dwc3/gadget.c
|
+++ b/drivers/usb/dwc3/gadget.c
|
||||||
@@ -2932,6 +2932,7 @@ static irqreturn_t dwc3_interrupt(int ir
|
@@ -2927,6 +2927,7 @@ static irqreturn_t dwc3_interrupt(int ir
|
||||||
int dwc3_gadget_init(struct dwc3 *dwc)
|
int dwc3_gadget_init(struct dwc3 *dwc)
|
||||||
{
|
{
|
||||||
int ret, irq;
|
int ret, irq;
|
||||||
@ -644,7 +644,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
|||||||
struct platform_device *dwc3_pdev = to_platform_device(dwc->dev);
|
struct platform_device *dwc3_pdev = to_platform_device(dwc->dev);
|
||||||
|
|
||||||
irq = platform_get_irq_byname(dwc3_pdev, "peripheral");
|
irq = platform_get_irq_byname(dwc3_pdev, "peripheral");
|
||||||
@@ -3046,6 +3047,12 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
@@ -3041,6 +3042,12 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
||||||
goto err5;
|
goto err5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user