mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 14:23:38 +00:00
kernel: bump to 5.4.254, 6.1.46 (#11460)
This commit is contained in:
parent
c5efeaff69
commit
38595344c2
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.4 = .253
|
LINUX_VERSION-5.4 = .254
|
||||||
LINUX_KERNEL_HASH-5.4.253 = 1fb2ba5f09aa98fa2a5965372cac438564dcc5270e4abc526dfc19bea6ad26e7
|
LINUX_KERNEL_HASH-5.4.254 = 51608da961b5e34d6a9452a7b302699e109633f769a4253c74b1048abba8d9c7
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-6.1 = .45
|
LINUX_VERSION-6.1 = .46
|
||||||
LINUX_KERNEL_HASH-6.1.45 = bd2343396e7ddad8974f3689a5a067ec931f4ade793e72b1070a85cd19f1f192
|
LINUX_KERNEL_HASH-6.1.46 = f5f67bcfccd47f8d9db2d5ba24e33af7778f40a777577d1fba424f4a1712a296
|
||||||
|
@ -43,7 +43,7 @@ produce a noisy warning.
|
|||||||
hcd->msi_enabled = 1;
|
hcd->msi_enabled = 1;
|
||||||
--- a/drivers/usb/host/xhci.h
|
--- a/drivers/usb/host/xhci.h
|
||||||
+++ b/drivers/usb/host/xhci.h
|
+++ b/drivers/usb/host/xhci.h
|
||||||
@@ -1902,6 +1902,7 @@ struct xhci_hcd {
|
@@ -1904,6 +1904,7 @@ struct xhci_hcd {
|
||||||
struct xhci_hub usb2_rhub;
|
struct xhci_hub usb2_rhub;
|
||||||
struct xhci_hub usb3_rhub;
|
struct xhci_hub usb3_rhub;
|
||||||
/* support xHCI 1.0 spec USB2 hardware LPM */
|
/* support xHCI 1.0 spec USB2 hardware LPM */
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
|
|||||||
|
|
||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -245,6 +245,8 @@ config ATH79
|
@@ -246,6 +246,8 @@ config ATH79
|
||||||
select SYS_SUPPORTS_BIG_ENDIAN
|
select SYS_SUPPORTS_BIG_ENDIAN
|
||||||
select SYS_SUPPORTS_MIPS16
|
select SYS_SUPPORTS_MIPS16
|
||||||
select SYS_SUPPORTS_ZBOOT_UART_PROM
|
select SYS_SUPPORTS_ZBOOT_UART_PROM
|
||||||
|
@ -301,7 +301,7 @@ SVN-Revision: 35130
|
|||||||
case IPV6_2292HOPOPTS:
|
case IPV6_2292HOPOPTS:
|
||||||
--- a/net/ipv6/exthdrs.c
|
--- a/net/ipv6/exthdrs.c
|
||||||
+++ b/net/ipv6/exthdrs.c
|
+++ b/net/ipv6/exthdrs.c
|
||||||
@@ -948,7 +948,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
|
@@ -941,7 +941,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
|
||||||
goto drop;
|
goto drop;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -644,7 +644,7 @@ SVN-Revision: 35130
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@@ -749,13 +753,13 @@ static inline void ipv6_addr_set_v4mappe
|
@@ -745,13 +749,13 @@ static inline void ipv6_addr_set_v4mappe
|
||||||
*/
|
*/
|
||||||
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
|
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
|
||||||
{
|
{
|
||||||
@ -660,7 +660,7 @@ SVN-Revision: 35130
|
|||||||
if (xb)
|
if (xb)
|
||||||
return i * 32 + 31 - __fls(ntohl(xb));
|
return i * 32 + 31 - __fls(ntohl(xb));
|
||||||
}
|
}
|
||||||
@@ -941,17 +945,18 @@ static inline int ip6_multipath_hash_pol
|
@@ -937,17 +941,18 @@ static inline int ip6_multipath_hash_pol
|
||||||
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
|
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
|
||||||
__be32 flowlabel)
|
__be32 flowlabel)
|
||||||
{
|
{
|
||||||
@ -727,7 +727,7 @@ SVN-Revision: 35130
|
|||||||
| TCPOLEN_TIMESTAMP))
|
| TCPOLEN_TIMESTAMP))
|
||||||
--- a/net/xfrm/xfrm_input.c
|
--- a/net/xfrm/xfrm_input.c
|
||||||
+++ b/net/xfrm/xfrm_input.c
|
+++ b/net/xfrm/xfrm_input.c
|
||||||
@@ -165,8 +165,8 @@ int xfrm_parse_spi(struct sk_buff *skb,
|
@@ -166,8 +166,8 @@ int xfrm_parse_spi(struct sk_buff *skb,
|
||||||
if (!pskb_may_pull(skb, hlen))
|
if (!pskb_may_pull(skb, hlen))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
@ -740,7 +740,7 @@ SVN-Revision: 35130
|
|||||||
EXPORT_SYMBOL(xfrm_parse_spi);
|
EXPORT_SYMBOL(xfrm_parse_spi);
|
||||||
--- a/net/ipv4/tcp_input.c
|
--- a/net/ipv4/tcp_input.c
|
||||||
+++ b/net/ipv4/tcp_input.c
|
+++ b/net/ipv4/tcp_input.c
|
||||||
@@ -4128,14 +4128,16 @@ static bool tcp_parse_aligned_timestamp(
|
@@ -4134,14 +4134,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||||
{
|
{
|
||||||
const __be32 *ptr = (const __be32 *)(th + 1);
|
const __be32 *ptr = (const __be32 *)(th + 1);
|
||||||
|
|
||||||
@ -788,7 +788,7 @@ SVN-Revision: 35130
|
|||||||
ptr = ip6hoff + sizeof(struct ipv6hdr);
|
ptr = ip6hoff + sizeof(struct ipv6hdr);
|
||||||
--- a/include/net/neighbour.h
|
--- a/include/net/neighbour.h
|
||||||
+++ b/include/net/neighbour.h
|
+++ b/include/net/neighbour.h
|
||||||
@@ -275,8 +275,10 @@ static inline bool neigh_key_eq128(const
|
@@ -270,8 +270,10 @@ static inline bool neigh_key_eq128(const
|
||||||
const u32 *n32 = (const u32 *)n->primary_key;
|
const u32 *n32 = (const u32 *)n->primary_key;
|
||||||
const u32 *p32 = pkey;
|
const u32 *p32 = pkey;
|
||||||
|
|
||||||
@ -833,7 +833,7 @@ SVN-Revision: 35130
|
|||||||
*sum = csum_fold(csum_partial(diff, sizeof(diff),
|
*sum = csum_fold(csum_partial(diff, sizeof(diff),
|
||||||
--- a/include/linux/etherdevice.h
|
--- a/include/linux/etherdevice.h
|
||||||
+++ b/include/linux/etherdevice.h
|
+++ b/include/linux/etherdevice.h
|
||||||
@@ -513,7 +513,7 @@ static inline bool is_etherdev_addr(cons
|
@@ -525,7 +525,7 @@ static inline bool is_etherdev_addr(cons
|
||||||
* @b: Pointer to Ethernet header
|
* @b: Pointer to Ethernet header
|
||||||
*
|
*
|
||||||
* Compare two Ethernet headers, returns 0 if equal.
|
* Compare two Ethernet headers, returns 0 if equal.
|
||||||
@ -842,7 +842,7 @@ SVN-Revision: 35130
|
|||||||
* aligned OR the platform can handle unaligned access. This is the
|
* aligned OR the platform can handle unaligned access. This is the
|
||||||
* case for all packets coming into netif_receive_skb or similar
|
* case for all packets coming into netif_receive_skb or similar
|
||||||
* entry points.
|
* entry points.
|
||||||
@@ -536,11 +536,12 @@ static inline unsigned long compare_ethe
|
@@ -548,11 +548,12 @@ static inline unsigned long compare_ethe
|
||||||
fold |= *(unsigned long *)(a + 6) ^ *(unsigned long *)(b + 6);
|
fold |= *(unsigned long *)(a + 6) ^ *(unsigned long *)(b + 6);
|
||||||
return fold;
|
return fold;
|
||||||
#else
|
#else
|
||||||
|
@ -24,7 +24,7 @@ Signed-off-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
|
|||||||
L: bpf@vger.kernel.org
|
L: bpf@vger.kernel.org
|
||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -49,7 +49,6 @@ config MIPS
|
@@ -50,7 +50,6 @@ config MIPS
|
||||||
select HAVE_ARCH_TRACEHOOK
|
select HAVE_ARCH_TRACEHOOK
|
||||||
select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES
|
select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES
|
||||||
select HAVE_ASM_MODVERSIONS
|
select HAVE_ASM_MODVERSIONS
|
||||||
@ -32,7 +32,7 @@ Signed-off-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
|
|||||||
select HAVE_CONTEXT_TRACKING
|
select HAVE_CONTEXT_TRACKING
|
||||||
select HAVE_TIF_NOHZ
|
select HAVE_TIF_NOHZ
|
||||||
select HAVE_C_RECORDMCOUNT
|
select HAVE_C_RECORDMCOUNT
|
||||||
@@ -57,7 +56,10 @@ config MIPS
|
@@ -58,7 +57,10 @@ config MIPS
|
||||||
select HAVE_DEBUG_STACKOVERFLOW
|
select HAVE_DEBUG_STACKOVERFLOW
|
||||||
select HAVE_DMA_CONTIGUOUS
|
select HAVE_DMA_CONTIGUOUS
|
||||||
select HAVE_DYNAMIC_FTRACE
|
select HAVE_DYNAMIC_FTRACE
|
||||||
|
@ -25,7 +25,7 @@ Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
|
|||||||
|
|
||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -2088,7 +2088,7 @@ config CPU_MIPS32
|
@@ -2089,7 +2089,7 @@ config CPU_MIPS32
|
||||||
config CPU_MIPS64
|
config CPU_MIPS64
|
||||||
bool
|
bool
|
||||||
default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R5 || \
|
default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R5 || \
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -6815,15 +6815,10 @@ void __netif_napi_del(struct napi_struct
|
@@ -6817,15 +6817,10 @@ void __netif_napi_del(struct napi_struct
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__netif_napi_del);
|
EXPORT_SYMBOL(__netif_napi_del);
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
weight = n->weight;
|
weight = n->weight;
|
||||||
|
|
||||||
/* This NAPI_STATE_SCHED test is for avoiding a race
|
/* This NAPI_STATE_SCHED test is for avoiding a race
|
||||||
@@ -6843,7 +6838,7 @@ static int napi_poll(struct napi_struct
|
@@ -6845,7 +6840,7 @@ static int napi_poll(struct napi_struct
|
||||||
n->poll, work, weight);
|
n->poll, work, weight);
|
||||||
|
|
||||||
if (likely(work < weight))
|
if (likely(work < weight))
|
||||||
@ -44,7 +44,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
/* Drivers must not modify the NAPI state if they
|
/* Drivers must not modify the NAPI state if they
|
||||||
* consume the entire weight. In such cases this code
|
* consume the entire weight. In such cases this code
|
||||||
@@ -6852,7 +6847,7 @@ static int napi_poll(struct napi_struct
|
@@ -6854,7 +6849,7 @@ static int napi_poll(struct napi_struct
|
||||||
*/
|
*/
|
||||||
if (unlikely(napi_disable_pending(n))) {
|
if (unlikely(napi_disable_pending(n))) {
|
||||||
napi_complete(n);
|
napi_complete(n);
|
||||||
@ -53,7 +53,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (n->gro_bitmask) {
|
if (n->gro_bitmask) {
|
||||||
@@ -6870,12 +6865,29 @@ static int napi_poll(struct napi_struct
|
@@ -6872,12 +6867,29 @@ static int napi_poll(struct napi_struct
|
||||||
if (unlikely(!list_empty(&n->poll_list))) {
|
if (unlikely(!list_empty(&n->poll_list))) {
|
||||||
pr_warn_once("%s: Budget exhausted after napi rescheduled\n",
|
pr_warn_once("%s: Budget exhausted after napi rescheduled\n",
|
||||||
n->dev ? n->dev->name : "backlog");
|
n->dev ? n->dev->name : "backlog");
|
||||||
|
@ -76,7 +76,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* napi_synchronize - wait until NAPI is not running
|
* napi_synchronize - wait until NAPI is not running
|
||||||
@@ -1865,6 +1855,8 @@ enum netdev_ml_priv_type {
|
@@ -1867,6 +1857,8 @@ enum netdev_ml_priv_type {
|
||||||
*
|
*
|
||||||
* @wol_enabled: Wake-on-LAN is enabled
|
* @wol_enabled: Wake-on-LAN is enabled
|
||||||
*
|
*
|
||||||
@ -85,7 +85,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
* @net_notifier_list: List of per-net netdev notifier block
|
* @net_notifier_list: List of per-net netdev notifier block
|
||||||
* that follow this device when it is moved
|
* that follow this device when it is moved
|
||||||
* to another network namespace.
|
* to another network namespace.
|
||||||
@@ -2184,6 +2176,7 @@ struct net_device {
|
@@ -2183,6 +2175,7 @@ struct net_device {
|
||||||
struct lock_class_key *qdisc_running_key;
|
struct lock_class_key *qdisc_running_key;
|
||||||
bool proto_down;
|
bool proto_down;
|
||||||
unsigned wol_enabled:1;
|
unsigned wol_enabled:1;
|
||||||
@ -153,7 +153,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
list_add_tail(&napi->poll_list, &sd->poll_list);
|
list_add_tail(&napi->poll_list, &sd->poll_list);
|
||||||
__raise_softirq_irqoff(NET_RX_SOFTIRQ);
|
__raise_softirq_irqoff(NET_RX_SOFTIRQ);
|
||||||
}
|
}
|
||||||
@@ -6768,6 +6805,12 @@ void netif_napi_add(struct net_device *d
|
@@ -6770,6 +6807,12 @@ void netif_napi_add(struct net_device *d
|
||||||
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
set_bit(NAPI_STATE_NPSVC, &napi->state);
|
||||||
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
list_add_rcu(&napi->dev_list, &dev->napi_list);
|
||||||
napi_hash_add(napi);
|
napi_hash_add(napi);
|
||||||
@ -166,7 +166,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL(netif_napi_add);
|
EXPORT_SYMBOL(netif_napi_add);
|
||||||
|
|
||||||
@@ -6784,9 +6827,28 @@ void napi_disable(struct napi_struct *n)
|
@@ -6786,9 +6829,28 @@ void napi_disable(struct napi_struct *n)
|
||||||
hrtimer_cancel(&n->timer);
|
hrtimer_cancel(&n->timer);
|
||||||
|
|
||||||
clear_bit(NAPI_STATE_DISABLE, &n->state);
|
clear_bit(NAPI_STATE_DISABLE, &n->state);
|
||||||
@ -195,7 +195,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static void flush_gro_hash(struct napi_struct *napi)
|
static void flush_gro_hash(struct napi_struct *napi)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@@ -6812,6 +6874,11 @@ void __netif_napi_del(struct napi_struct
|
@@ -6814,6 +6876,11 @@ void __netif_napi_del(struct napi_struct
|
||||||
|
|
||||||
flush_gro_hash(napi);
|
flush_gro_hash(napi);
|
||||||
napi->gro_bitmask = 0;
|
napi->gro_bitmask = 0;
|
||||||
@ -207,7 +207,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__netif_napi_del);
|
EXPORT_SYMBOL(__netif_napi_del);
|
||||||
|
|
||||||
@@ -6893,6 +6960,51 @@ static int napi_poll(struct napi_struct
|
@@ -6895,6 +6962,51 @@ static int napi_poll(struct napi_struct
|
||||||
return work;
|
return work;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
* wake_up_process() when it's not NULL.
|
* wake_up_process() when it's not NULL.
|
||||||
*/
|
*/
|
||||||
thread = READ_ONCE(napi->thread);
|
thread = READ_ONCE(napi->thread);
|
||||||
@@ -6778,6 +6779,49 @@ static void init_gro_hash(struct napi_st
|
@@ -6780,6 +6781,49 @@ static void init_gro_hash(struct napi_st
|
||||||
napi->gro_bitmask = 0;
|
napi->gro_bitmask = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,7 +54,7 @@ Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
|
|||||||
wake_up_process(thread);
|
wake_up_process(thread);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -6570,7 +6572,8 @@ bool napi_complete_done(struct napi_stru
|
@@ -6572,7 +6574,8 @@ bool napi_complete_done(struct napi_stru
|
||||||
|
|
||||||
WARN_ON_ONCE(!(val & NAPIF_STATE_SCHED));
|
WARN_ON_ONCE(!(val & NAPIF_STATE_SCHED));
|
||||||
|
|
||||||
@ -64,7 +64,7 @@ Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
|
|||||||
|
|
||||||
/* If STATE_MISSED was set, leave STATE_SCHED set,
|
/* If STATE_MISSED was set, leave STATE_SCHED set,
|
||||||
* because we will call napi->poll() one more time.
|
* because we will call napi->poll() one more time.
|
||||||
@@ -7006,16 +7009,25 @@ static int napi_poll(struct napi_struct
|
@@ -7008,16 +7011,25 @@ static int napi_poll(struct napi_struct
|
||||||
|
|
||||||
static int napi_thread_wait(struct napi_struct *napi)
|
static int napi_thread_wait(struct napi_struct *napi)
|
||||||
{
|
{
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -7013,7 +7013,7 @@ static int napi_thread_wait(struct napi_
|
@@ -7015,7 +7015,7 @@ static int napi_thread_wait(struct napi_
|
||||||
|
|
||||||
set_current_state(TASK_INTERRUPTIBLE);
|
set_current_state(TASK_INTERRUPTIBLE);
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
/* Testing SCHED_THREADED bit here to make sure the current
|
/* Testing SCHED_THREADED bit here to make sure the current
|
||||||
* kthread owns this napi and could poll on this napi.
|
* kthread owns this napi and could poll on this napi.
|
||||||
* Testing SCHED bit is not enough because SCHED bit might be
|
* Testing SCHED bit is not enough because SCHED bit might be
|
||||||
@@ -7031,6 +7031,7 @@ static int napi_thread_wait(struct napi_
|
@@ -7033,6 +7033,7 @@ static int napi_thread_wait(struct napi_
|
||||||
set_current_state(TASK_INTERRUPTIBLE);
|
set_current_state(TASK_INTERRUPTIBLE);
|
||||||
}
|
}
|
||||||
__set_current_state(TASK_RUNNING);
|
__set_current_state(TASK_RUNNING);
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -6824,6 +6824,7 @@ int dev_set_threaded(struct net_device *
|
@@ -6826,6 +6826,7 @@ int dev_set_threaded(struct net_device *
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/net/netfilter/nf_tables.h
|
--- a/include/net/netfilter/nf_tables.h
|
||||||
+++ b/include/net/netfilter/nf_tables.h
|
+++ b/include/net/netfilter/nf_tables.h
|
||||||
@@ -1475,13 +1475,16 @@ struct nft_trans_chain {
|
@@ -1500,13 +1500,16 @@ struct nft_trans_chain {
|
||||||
|
|
||||||
struct nft_trans_table {
|
struct nft_trans_table {
|
||||||
bool update;
|
bool update;
|
||||||
@ -34,7 +34,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
struct nft_set *set;
|
struct nft_set *set;
|
||||||
--- a/net/netfilter/nf_tables_api.c
|
--- a/net/netfilter/nf_tables_api.c
|
||||||
+++ b/net/netfilter/nf_tables_api.c
|
+++ b/net/netfilter/nf_tables_api.c
|
||||||
@@ -917,6 +917,12 @@ static void nf_tables_table_disable(stru
|
@@ -1056,6 +1056,12 @@ static void nf_tables_table_disable(stru
|
||||||
nft_table_disable(net, table, 0);
|
nft_table_disable(net, table, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
static int nf_tables_updtable(struct nft_ctx *ctx)
|
static int nf_tables_updtable(struct nft_ctx *ctx)
|
||||||
{
|
{
|
||||||
struct nft_trans *trans;
|
struct nft_trans *trans;
|
||||||
@@ -940,19 +946,17 @@ static int nf_tables_updtable(struct nft
|
@@ -1079,19 +1085,17 @@ static int nf_tables_updtable(struct nft
|
||||||
|
|
||||||
if ((flags & NFT_TABLE_F_DORMANT) &&
|
if ((flags & NFT_TABLE_F_DORMANT) &&
|
||||||
!(ctx->table->flags & NFT_TABLE_F_DORMANT)) {
|
!(ctx->table->flags & NFT_TABLE_F_DORMANT)) {
|
||||||
@ -68,9 +68,9 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
+ nft_trans_table_flags(trans) = flags;
|
+ nft_trans_table_flags(trans) = flags;
|
||||||
nft_trans_table_update(trans) = true;
|
nft_trans_table_update(trans) = true;
|
||||||
list_add_tail(&trans->list, &ctx->net->nft.commit_list);
|
nft_trans_commit_list_add_tail(ctx->net, trans);
|
||||||
return 0;
|
return 0;
|
||||||
@@ -7932,11 +7936,10 @@ static int nf_tables_commit(struct net *
|
@@ -8191,11 +8195,10 @@ static int nf_tables_commit(struct net *
|
||||||
switch (trans->msg_type) {
|
switch (trans->msg_type) {
|
||||||
case NFT_MSG_NEWTABLE:
|
case NFT_MSG_NEWTABLE:
|
||||||
if (nft_trans_table_update(trans)) {
|
if (nft_trans_table_update(trans)) {
|
||||||
@ -86,7 +86,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
} else {
|
} else {
|
||||||
nft_clear(net, trans->ctx.table);
|
nft_clear(net, trans->ctx.table);
|
||||||
}
|
}
|
||||||
@@ -8153,11 +8156,9 @@ static int __nf_tables_abort(struct net
|
@@ -8414,11 +8417,9 @@ static int __nf_tables_abort(struct net
|
||||||
switch (trans->msg_type) {
|
switch (trans->msg_type) {
|
||||||
case NFT_MSG_NEWTABLE:
|
case NFT_MSG_NEWTABLE:
|
||||||
if (nft_trans_table_update(trans)) {
|
if (nft_trans_table_update(trans)) {
|
||||||
|
@ -58,7 +58,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -850,6 +850,27 @@ typedef u16 (*select_queue_fallback_t)(s
|
@@ -853,6 +853,27 @@ typedef u16 (*select_queue_fallback_t)(s
|
||||||
struct sk_buff *skb,
|
struct sk_buff *skb,
|
||||||
struct net_device *sb_dev);
|
struct net_device *sb_dev);
|
||||||
|
|
||||||
@ -86,7 +86,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
enum tc_setup_type {
|
enum tc_setup_type {
|
||||||
TC_SETUP_QDISC_MQPRIO,
|
TC_SETUP_QDISC_MQPRIO,
|
||||||
TC_SETUP_CLSU32,
|
TC_SETUP_CLSU32,
|
||||||
@@ -1296,6 +1317,8 @@ struct netdev_net_notifier {
|
@@ -1299,6 +1320,8 @@ struct netdev_net_notifier {
|
||||||
* struct net_device *(*ndo_get_peer_dev)(struct net_device *dev);
|
* struct net_device *(*ndo_get_peer_dev)(struct net_device *dev);
|
||||||
* If a device is paired with a peer device, return the peer instance.
|
* If a device is paired with a peer device, return the peer instance.
|
||||||
* The caller must be under RCU read context.
|
* The caller must be under RCU read context.
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
*/
|
*/
|
||||||
struct net_device_ops {
|
struct net_device_ops {
|
||||||
int (*ndo_init)(struct net_device *dev);
|
int (*ndo_init)(struct net_device *dev);
|
||||||
@@ -1504,6 +1527,8 @@ struct net_device_ops {
|
@@ -1507,6 +1530,8 @@ struct net_device_ops {
|
||||||
int (*ndo_tunnel_ctl)(struct net_device *dev,
|
int (*ndo_tunnel_ctl)(struct net_device *dev,
|
||||||
struct ip_tunnel_parm *p, int cmd);
|
struct ip_tunnel_parm *p, int cmd);
|
||||||
struct net_device * (*ndo_get_peer_dev)(struct net_device *dev);
|
struct net_device * (*ndo_get_peer_dev)(struct net_device *dev);
|
||||||
@ -104,7 +104,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2851,6 +2876,8 @@ void dev_remove_offload(struct packet_of
|
@@ -2850,6 +2875,8 @@ void dev_remove_offload(struct packet_of
|
||||||
|
|
||||||
int dev_get_iflink(const struct net_device *dev);
|
int dev_get_iflink(const struct net_device *dev);
|
||||||
int dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb);
|
int dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb);
|
||||||
|
@ -28,7 +28,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -852,11 +852,18 @@ typedef u16 (*select_queue_fallback_t)(s
|
@@ -855,11 +855,18 @@ typedef u16 (*select_queue_fallback_t)(s
|
||||||
|
|
||||||
enum net_device_path_type {
|
enum net_device_path_type {
|
||||||
DEV_PATH_ETHERNET = 0,
|
DEV_PATH_ETHERNET = 0,
|
||||||
|
@ -9,7 +9,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -853,6 +853,7 @@ typedef u16 (*select_queue_fallback_t)(s
|
@@ -856,6 +856,7 @@ typedef u16 (*select_queue_fallback_t)(s
|
||||||
enum net_device_path_type {
|
enum net_device_path_type {
|
||||||
DEV_PATH_ETHERNET = 0,
|
DEV_PATH_ETHERNET = 0,
|
||||||
DEV_PATH_VLAN,
|
DEV_PATH_VLAN,
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -864,10 +864,20 @@ struct net_device_path {
|
@@ -867,10 +867,20 @@ struct net_device_path {
|
||||||
u16 id;
|
u16 id;
|
||||||
__be16 proto;
|
__be16 proto;
|
||||||
} encap;
|
} encap;
|
||||||
@ -36,7 +36,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
struct net_device_path_stack {
|
struct net_device_path_stack {
|
||||||
int num_paths;
|
int num_paths;
|
||||||
@@ -877,6 +887,12 @@ struct net_device_path_stack {
|
@@ -880,6 +890,12 @@ struct net_device_path_stack {
|
||||||
struct net_device_path_ctx {
|
struct net_device_path_ctx {
|
||||||
const struct net_device *dev;
|
const struct net_device *dev;
|
||||||
const u8 *daddr;
|
const u8 *daddr;
|
||||||
|
@ -83,7 +83,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
static int pppoe_recvmsg(struct socket *sock, struct msghdr *m,
|
static int pppoe_recvmsg(struct socket *sock, struct msghdr *m,
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -854,6 +854,7 @@ enum net_device_path_type {
|
@@ -857,6 +857,7 @@ enum net_device_path_type {
|
||||||
DEV_PATH_ETHERNET = 0,
|
DEV_PATH_ETHERNET = 0,
|
||||||
DEV_PATH_VLAN,
|
DEV_PATH_VLAN,
|
||||||
DEV_PATH_BRIDGE,
|
DEV_PATH_BRIDGE,
|
||||||
@ -91,7 +91,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct net_device_path {
|
struct net_device_path {
|
||||||
@@ -863,6 +864,7 @@ struct net_device_path {
|
@@ -866,6 +867,7 @@ struct net_device_path {
|
||||||
struct {
|
struct {
|
||||||
u16 id;
|
u16 id;
|
||||||
__be16 proto;
|
__be16 proto;
|
||||||
|
@ -10,7 +10,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -855,6 +855,7 @@ enum net_device_path_type {
|
@@ -858,6 +858,7 @@ enum net_device_path_type {
|
||||||
DEV_PATH_VLAN,
|
DEV_PATH_VLAN,
|
||||||
DEV_PATH_BRIDGE,
|
DEV_PATH_BRIDGE,
|
||||||
DEV_PATH_PPPOE,
|
DEV_PATH_PPPOE,
|
||||||
@ -18,7 +18,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct net_device_path {
|
struct net_device_path {
|
||||||
@@ -875,6 +876,10 @@ struct net_device_path {
|
@@ -878,6 +879,10 @@ struct net_device_path {
|
||||||
u16 vlan_id;
|
u16 vlan_id;
|
||||||
__be16 vlan_proto;
|
__be16 vlan_proto;
|
||||||
} bridge;
|
} bridge;
|
||||||
|
@ -12,7 +12,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -872,6 +872,7 @@ struct net_device_path {
|
@@ -875,6 +875,7 @@ struct net_device_path {
|
||||||
DEV_PATH_BR_VLAN_KEEP,
|
DEV_PATH_BR_VLAN_KEEP,
|
||||||
DEV_PATH_BR_VLAN_TAG,
|
DEV_PATH_BR_VLAN_TAG,
|
||||||
DEV_PATH_BR_VLAN_UNTAG,
|
DEV_PATH_BR_VLAN_UNTAG,
|
||||||
|
@ -58,7 +58,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
- 0 - disabled (default)
|
- 0 - disabled (default)
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -2575,26 +2575,24 @@ int nf_conntrack_init_start(void)
|
@@ -2578,26 +2578,24 @@ int nf_conntrack_init_start(void)
|
||||||
spin_lock_init(&nf_conntrack_locks[i]);
|
spin_lock_init(&nf_conntrack_locks[i]);
|
||||||
|
|
||||||
if (!nf_conntrack_htable_size) {
|
if (!nf_conntrack_htable_size) {
|
||||||
|
@ -646,7 +646,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Reposition in the original skb */
|
/* Reposition in the original skb */
|
||||||
@@ -5192,6 +5213,20 @@ bool skb_try_coalesce(struct sk_buff *to
|
@@ -5197,6 +5218,20 @@ bool skb_try_coalesce(struct sk_buff *to
|
||||||
if (skb_cloned(to))
|
if (skb_cloned(to))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|||||||
|
|
||||||
--- a/include/linux/etherdevice.h
|
--- a/include/linux/etherdevice.h
|
||||||
+++ b/include/linux/etherdevice.h
|
+++ b/include/linux/etherdevice.h
|
||||||
@@ -466,6 +466,20 @@ static inline void eth_addr_inc(u8 *addr
|
@@ -478,6 +478,20 @@ static inline void eth_addr_inc(u8 *addr
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -56,7 +56,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/net/core/skbuff.c
|
--- a/net/core/skbuff.c
|
||||||
+++ b/net/core/skbuff.c
|
+++ b/net/core/skbuff.c
|
||||||
@@ -5213,18 +5213,18 @@ bool skb_try_coalesce(struct sk_buff *to
|
@@ -5218,18 +5218,18 @@ bool skb_try_coalesce(struct sk_buff *to
|
||||||
if (skb_cloned(to))
|
if (skb_cloned(to))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -933,7 +933,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
}
|
}
|
||||||
--- a/drivers/net/ethernet/microchip/lan743x_main.c
|
--- a/drivers/net/ethernet/microchip/lan743x_main.c
|
||||||
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
|
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
|
||||||
@@ -2831,7 +2831,6 @@ static int lan743x_pcidev_probe(struct p
|
@@ -2844,7 +2844,6 @@ static int lan743x_pcidev_probe(struct p
|
||||||
{
|
{
|
||||||
struct lan743x_adapter *adapter = NULL;
|
struct lan743x_adapter *adapter = NULL;
|
||||||
struct net_device *netdev = NULL;
|
struct net_device *netdev = NULL;
|
||||||
@ -941,7 +941,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
int ret = -ENODEV;
|
int ret = -ENODEV;
|
||||||
|
|
||||||
netdev = devm_alloc_etherdev(&pdev->dev,
|
netdev = devm_alloc_etherdev(&pdev->dev,
|
||||||
@@ -2848,9 +2847,7 @@ static int lan743x_pcidev_probe(struct p
|
@@ -2861,9 +2860,7 @@ static int lan743x_pcidev_probe(struct p
|
||||||
NETIF_MSG_IFDOWN | NETIF_MSG_TX_QUEUED;
|
NETIF_MSG_IFDOWN | NETIF_MSG_TX_QUEUED;
|
||||||
netdev->max_mtu = LAN743X_MAX_FRAME_SIZE;
|
netdev->max_mtu = LAN743X_MAX_FRAME_SIZE;
|
||||||
|
|
||||||
@ -967,7 +967,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
eth_hw_addr_random(ndev);
|
eth_hw_addr_random(ndev);
|
||||||
--- a/drivers/net/ethernet/qualcomm/qca_spi.c
|
--- a/drivers/net/ethernet/qualcomm/qca_spi.c
|
||||||
+++ b/drivers/net/ethernet/qualcomm/qca_spi.c
|
+++ b/drivers/net/ethernet/qualcomm/qca_spi.c
|
||||||
@@ -885,7 +885,7 @@ qca_spi_probe(struct spi_device *spi)
|
@@ -884,7 +884,7 @@ qca_spi_probe(struct spi_device *spi)
|
||||||
struct net_device *qcaspi_devs = NULL;
|
struct net_device *qcaspi_devs = NULL;
|
||||||
u8 legacy_mode = 0;
|
u8 legacy_mode = 0;
|
||||||
u16 signature;
|
u16 signature;
|
||||||
@ -976,7 +976,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
if (!spi->dev.of_node) {
|
if (!spi->dev.of_node) {
|
||||||
dev_err(&spi->dev, "Missing device tree\n");
|
dev_err(&spi->dev, "Missing device tree\n");
|
||||||
@@ -962,12 +962,8 @@ qca_spi_probe(struct spi_device *spi)
|
@@ -961,12 +961,8 @@ qca_spi_probe(struct spi_device *spi)
|
||||||
|
|
||||||
spi_set_drvdata(spi, qcaspi_devs);
|
spi_set_drvdata(spi, qcaspi_devs);
|
||||||
|
|
||||||
@ -1618,7 +1618,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
int addr_width = 32;
|
int addr_width = 32;
|
||||||
u32 value;
|
u32 value;
|
||||||
|
|
||||||
@@ -2044,13 +2044,14 @@ static int axienet_probe(struct platform
|
@@ -2049,13 +2049,14 @@ static int axienet_probe(struct platform
|
||||||
dev_info(&pdev->dev, "Ethernet core IRQ not defined\n");
|
dev_info(&pdev->dev, "Ethernet core IRQ not defined\n");
|
||||||
|
|
||||||
/* Retrieve the MAC address */
|
/* Retrieve the MAC address */
|
||||||
|
@ -22,7 +22,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
|
|||||||
- mt7530_rmw(priv, MT7530_MFC, UNM_FFP_MASK, UNM_FFP(BIT(port)));
|
- mt7530_rmw(priv, MT7530_MFC, UNM_FFP_MASK, UNM_FFP(BIT(port)));
|
||||||
-
|
-
|
||||||
/* Set CPU port number */
|
/* Set CPU port number */
|
||||||
if (priv->id == ID_MT7621)
|
if (priv->id == ID_MT7530 || priv->id == ID_MT7621)
|
||||||
mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port));
|
mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port));
|
||||||
@@ -1134,6 +1131,20 @@ mt7530_stp_state_set(struct dsa_switch *
|
@@ -1134,6 +1131,20 @@ mt7530_stp_state_set(struct dsa_switch *
|
||||||
}
|
}
|
||||||
|
@ -48,7 +48,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
MODULE_AUTHOR("Pablo Neira Ayuso <pablo@netfilter.org>");
|
MODULE_AUTHOR("Pablo Neira Ayuso <pablo@netfilter.org>");
|
||||||
--- a/net/netfilter/nft_flow_offload.c
|
--- a/net/netfilter/nft_flow_offload.c
|
||||||
+++ b/net/netfilter/nft_flow_offload.c
|
+++ b/net/netfilter/nft_flow_offload.c
|
||||||
@@ -234,47 +234,14 @@ static struct nft_expr_type nft_flow_off
|
@@ -236,47 +236,14 @@ static struct nft_expr_type nft_flow_off
|
||||||
.owner = THIS_MODULE,
|
.owner = THIS_MODULE,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/scripts/mod/modpost.c
|
--- a/scripts/mod/modpost.c
|
||||||
+++ b/scripts/mod/modpost.c
|
+++ b/scripts/mod/modpost.c
|
||||||
@@ -2038,7 +2038,9 @@ static void read_symbols(const char *mod
|
@@ -2056,7 +2056,9 @@ static void read_symbols(const char *mod
|
||||||
symname = remove_dot(info.strtab + sym->st_name);
|
symname = remove_dot(info.strtab + sym->st_name);
|
||||||
|
|
||||||
handle_symbol(mod, &info, sym, symname);
|
handle_symbol(mod, &info, sym, symname);
|
||||||
@ -137,7 +137,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (sym = info.symtab_start; sym < info.symtab_stop; sym++) {
|
for (sym = info.symtab_start; sym < info.symtab_stop; sym++) {
|
||||||
@@ -2251,8 +2253,10 @@ static void add_header(struct buffer *b,
|
@@ -2269,8 +2271,10 @@ static void add_header(struct buffer *b,
|
||||||
buf_printf(b, "\n");
|
buf_printf(b, "\n");
|
||||||
buf_printf(b, "BUILD_SALT;\n");
|
buf_printf(b, "BUILD_SALT;\n");
|
||||||
buf_printf(b, "\n");
|
buf_printf(b, "\n");
|
||||||
@ -148,7 +148,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
buf_printf(b, "\n");
|
buf_printf(b, "\n");
|
||||||
buf_printf(b, "__visible struct module __this_module\n");
|
buf_printf(b, "__visible struct module __this_module\n");
|
||||||
buf_printf(b, "__section(\".gnu.linkonce.this_module\") = {\n");
|
buf_printf(b, "__section(\".gnu.linkonce.this_module\") = {\n");
|
||||||
@@ -2269,8 +2273,10 @@ static void add_header(struct buffer *b,
|
@@ -2287,8 +2291,10 @@ static void add_header(struct buffer *b,
|
||||||
|
|
||||||
static void add_intree_flag(struct buffer *b, int is_intree)
|
static void add_intree_flag(struct buffer *b, int is_intree)
|
||||||
{
|
{
|
||||||
@ -159,7 +159,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Cannot check for assembler */
|
/* Cannot check for assembler */
|
||||||
@@ -2283,8 +2289,10 @@ static void add_retpoline(struct buffer
|
@@ -2301,8 +2307,10 @@ static void add_retpoline(struct buffer
|
||||||
|
|
||||||
static void add_staging_flag(struct buffer *b, const char *name)
|
static void add_staging_flag(struct buffer *b, const char *name)
|
||||||
{
|
{
|
||||||
@ -170,7 +170,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2368,11 +2376,13 @@ static void add_depends(struct buffer *b
|
@@ -2386,11 +2394,13 @@ static void add_depends(struct buffer *b
|
||||||
|
|
||||||
static void add_srcversion(struct buffer *b, struct module *mod)
|
static void add_srcversion(struct buffer *b, struct module *mod)
|
||||||
{
|
{
|
||||||
@ -184,7 +184,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void write_buf(struct buffer *b, const char *fname)
|
static void write_buf(struct buffer *b, const char *fname)
|
||||||
@@ -2631,7 +2641,9 @@ int main(int argc, char **argv)
|
@@ -2649,7 +2659,9 @@ int main(int argc, char **argv)
|
||||||
add_staging_flag(&buf, mod->name);
|
add_staging_flag(&buf, mod->name);
|
||||||
err |= add_versions(&buf, mod);
|
err |= add_versions(&buf, mod);
|
||||||
add_depends(&buf, mod);
|
add_depends(&buf, mod);
|
||||||
|
@ -12,7 +12,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
---
|
---
|
||||||
--- a/arch/arm/Kconfig
|
--- a/arch/arm/Kconfig
|
||||||
+++ b/arch/arm/Kconfig
|
+++ b/arch/arm/Kconfig
|
||||||
@@ -99,6 +99,7 @@ config ARM
|
@@ -100,6 +100,7 @@ config ARM
|
||||||
select HAVE_KERNEL_XZ
|
select HAVE_KERNEL_XZ
|
||||||
select HAVE_KPROBES if !XIP_KERNEL && !CPU_ENDIAN_BE32 && !CPU_V7M
|
select HAVE_KPROBES if !XIP_KERNEL && !CPU_ENDIAN_BE32 && !CPU_V7M
|
||||||
select HAVE_KRETPROBES if HAVE_KPROBES
|
select HAVE_KRETPROBES if HAVE_KPROBES
|
||||||
|
@ -199,7 +199,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
|
|||||||
bool
|
bool
|
||||||
--- a/net/Kconfig
|
--- a/net/Kconfig
|
||||||
+++ b/net/Kconfig
|
+++ b/net/Kconfig
|
||||||
@@ -436,7 +436,7 @@ config NET_DEVLINK
|
@@ -434,7 +434,7 @@ config NET_DEVLINK
|
||||||
default n
|
default n
|
||||||
|
|
||||||
config PAGE_POOL
|
config PAGE_POOL
|
||||||
|
@ -116,7 +116,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#include <linux/mutex.h>
|
#include <linux/mutex.h>
|
||||||
#include <linux/err.h>
|
#include <linux/err.h>
|
||||||
#include <linux/property.h>
|
#include <linux/property.h>
|
||||||
@@ -3300,3 +3301,5 @@ static int __init regmap_initcall(void)
|
@@ -3298,3 +3299,5 @@ static int __init regmap_initcall(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
postcore_initcall(regmap_initcall);
|
postcore_initcall(regmap_initcall);
|
||||||
|
@ -26,7 +26,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
|
|||||||
* @name: name of the struct -- the string is not copied internally
|
* @name: name of the struct -- the string is not copied internally
|
||||||
--- a/net/Makefile
|
--- a/net/Makefile
|
||||||
+++ b/net/Makefile
|
+++ b/net/Makefile
|
||||||
@@ -53,7 +53,7 @@ obj-$(CONFIG_TIPC) += tipc/
|
@@ -52,7 +52,7 @@ obj-$(CONFIG_TIPC) += tipc/
|
||||||
obj-$(CONFIG_NETLABEL) += netlabel/
|
obj-$(CONFIG_NETLABEL) += netlabel/
|
||||||
obj-$(CONFIG_IUCV) += iucv/
|
obj-$(CONFIG_IUCV) += iucv/
|
||||||
obj-$(CONFIG_SMC) += smc/
|
obj-$(CONFIG_SMC) += smc/
|
||||||
|
@ -10,7 +10,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
|||||||
|
|
||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -1170,6 +1170,10 @@ config MIPS_MSC
|
@@ -1171,6 +1171,10 @@ config MIPS_MSC
|
||||||
config SYNC_R4K
|
config SYNC_R4K
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -1648,6 +1648,7 @@ enum netdev_priv_flags {
|
@@ -1651,6 +1651,7 @@ enum netdev_priv_flags {
|
||||||
IFF_FAILOVER_SLAVE = 1<<28,
|
IFF_FAILOVER_SLAVE = 1<<28,
|
||||||
IFF_L3MDEV_RX_HANDLER = 1<<29,
|
IFF_L3MDEV_RX_HANDLER = 1<<29,
|
||||||
IFF_LIVE_RENAME_OK = 1<<30,
|
IFF_LIVE_RENAME_OK = 1<<30,
|
||||||
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
|
|
||||||
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
|
||||||
@@ -1680,6 +1681,7 @@ enum netdev_priv_flags {
|
@@ -1683,6 +1684,7 @@ enum netdev_priv_flags {
|
||||||
#define IFF_FAILOVER_SLAVE IFF_FAILOVER_SLAVE
|
#define IFF_FAILOVER_SLAVE IFF_FAILOVER_SLAVE
|
||||||
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
#define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
|
||||||
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
#define IFF_LIVE_RENAME_OK IFF_LIVE_RENAME_OK
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/* Specifies the type of the struct net_device::ml_priv pointer */
|
/* Specifies the type of the struct net_device::ml_priv pointer */
|
||||||
enum netdev_ml_priv_type {
|
enum netdev_ml_priv_type {
|
||||||
@@ -2020,6 +2022,11 @@ struct net_device {
|
@@ -2022,6 +2024,11 @@ struct net_device {
|
||||||
const struct tlsdev_ops *tlsdev_ops;
|
const struct tlsdev_ops *tlsdev_ops;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
const struct header_ops *header_ops;
|
const struct header_ops *header_ops;
|
||||||
|
|
||||||
unsigned int flags;
|
unsigned int flags;
|
||||||
@@ -2110,6 +2117,10 @@ struct net_device {
|
@@ -2109,6 +2116,10 @@ struct net_device {
|
||||||
struct mpls_dev __rcu *mpls_ptr;
|
struct mpls_dev __rcu *mpls_ptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie)
|
struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie)
|
||||||
{
|
{
|
||||||
struct dst_entry *dst = __sk_dst_get(sk);
|
struct dst_entry *dst = __sk_dst_get(sk);
|
||||||
@@ -1834,9 +1848,11 @@ static void __sk_free(struct sock *sk)
|
@@ -1837,9 +1851,11 @@ static void __sk_free(struct sock *sk)
|
||||||
if (likely(sk->sk_net_refcnt))
|
if (likely(sk->sk_net_refcnt))
|
||||||
sock_inuse_add(sock_net(sk), -1);
|
sock_inuse_add(sock_net(sk), -1);
|
||||||
|
|
||||||
|
@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/net/core/sock.c
|
--- a/net/core/sock.c
|
||||||
+++ b/net/core/sock.c
|
+++ b/net/core/sock.c
|
||||||
@@ -3710,6 +3710,8 @@ static __net_initdata struct pernet_oper
|
@@ -3724,6 +3724,8 @@ static __net_initdata struct pernet_oper
|
||||||
|
|
||||||
static int __init proto_init(void)
|
static int __init proto_init(void)
|
||||||
{
|
{
|
||||||
|
@ -115,7 +115,7 @@ Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
|
|||||||
depends on NETFILTER_ADVANCED
|
depends on NETFILTER_ADVANCED
|
||||||
--- a/net/netfilter/nf_conntrack_core.c
|
--- a/net/netfilter/nf_conntrack_core.c
|
||||||
+++ b/net/netfilter/nf_conntrack_core.c
|
+++ b/net/netfilter/nf_conntrack_core.c
|
||||||
@@ -2726,6 +2726,9 @@ int nf_conntrack_init_net(struct net *ne
|
@@ -2729,6 +2729,9 @@ int nf_conntrack_init_net(struct net *ne
|
||||||
nf_conntrack_helper_pernet_init(net);
|
nf_conntrack_helper_pernet_init(net);
|
||||||
nf_conntrack_proto_pernet_init(net);
|
nf_conntrack_proto_pernet_init(net);
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
int (*fcn)(unsigned int events, struct nf_ct_event *item);
|
int (*fcn)(unsigned int events, struct nf_ct_event *item);
|
||||||
--- a/net/bridge/br_if.c
|
--- a/net/bridge/br_if.c
|
||||||
+++ b/net/bridge/br_if.c
|
+++ b/net/bridge/br_if.c
|
||||||
@@ -779,6 +779,28 @@ void br_port_flags_change(struct net_bri
|
@@ -780,6 +780,28 @@ void br_port_flags_change(struct net_bri
|
||||||
br_recalculate_neigh_suppress_enabled(br);
|
br_recalculate_neigh_suppress_enabled(br);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,7 +99,7 @@
|
|||||||
|
|
||||||
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
||||||
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
||||||
@@ -5208,6 +5216,11 @@ void netdev_rx_handler_unregister(struct
|
@@ -5210,6 +5218,11 @@ void netdev_rx_handler_unregister(struct
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
||||||
|
|
||||||
@ -111,7 +111,7 @@
|
|||||||
/*
|
/*
|
||||||
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
||||||
* the special handling of PFMEMALLOC skbs.
|
* the special handling of PFMEMALLOC skbs.
|
||||||
@@ -5256,6 +5269,10 @@ static int __netif_receive_skb_core(stru
|
@@ -5258,6 +5271,10 @@ static int __netif_receive_skb_core(stru
|
||||||
int ret = NET_RX_DROP;
|
int ret = NET_RX_DROP;
|
||||||
__be16 type;
|
__be16 type;
|
||||||
|
|
||||||
@ -122,7 +122,7 @@
|
|||||||
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
||||||
|
|
||||||
trace_netif_receive_skb(skb);
|
trace_netif_receive_skb(skb);
|
||||||
@@ -5295,6 +5312,15 @@ another_round:
|
@@ -5297,6 +5314,15 @@ another_round:
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,7 +140,7 @@
|
|||||||
|
|
||||||
--- a/net/Kconfig
|
--- a/net/Kconfig
|
||||||
+++ b/net/Kconfig
|
+++ b/net/Kconfig
|
||||||
@@ -481,3 +481,6 @@ config HAVE_CBPF_JIT
|
@@ -479,3 +479,6 @@ config HAVE_CBPF_JIT
|
||||||
# Extended BPF JIT (eBPF)
|
# Extended BPF JIT (eBPF)
|
||||||
config HAVE_EBPF_JIT
|
config HAVE_EBPF_JIT
|
||||||
bool
|
bool
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/net/wireless/wext-core.c
|
--- a/net/wireless/wext-core.c
|
||||||
+++ b/net/wireless/wext-core.c
|
+++ b/net/wireless/wext-core.c
|
||||||
@@ -956,6 +956,9 @@ static int wireless_process_ioctl(struct
|
@@ -962,6 +962,9 @@ static int wireless_process_ioctl(struct
|
||||||
else if (private)
|
else if (private)
|
||||||
return private(dev, iwr, cmd, info, handler);
|
return private(dev, iwr, cmd, info, handler);
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@ Acked-by: Rob Landley <rob@landley.net>
|
|||||||
---
|
---
|
||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -1085,9 +1085,6 @@ config FW_ARC
|
@@ -1086,9 +1086,6 @@ config FW_ARC
|
||||||
config ARCH_MAY_HAVE_PC_FDC
|
config ARCH_MAY_HAVE_PC_FDC
|
||||||
bool
|
bool
|
||||||
|
|
||||||
@ -19,7 +19,7 @@ Acked-by: Rob Landley <rob@landley.net>
|
|||||||
config CEVT_BCM1480
|
config CEVT_BCM1480
|
||||||
bool
|
bool
|
||||||
|
|
||||||
@@ -3182,6 +3179,18 @@ choice
|
@@ -3183,6 +3180,18 @@ choice
|
||||||
bool "Extend builtin kernel arguments with bootloader arguments"
|
bool "Extend builtin kernel arguments with bootloader arguments"
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -2059,6 +2059,8 @@ struct net_device {
|
@@ -2061,6 +2061,8 @@ struct net_device {
|
||||||
struct netdev_hw_addr_list mc;
|
struct netdev_hw_addr_list mc;
|
||||||
struct netdev_hw_addr_list dev_addrs;
|
struct netdev_hw_addr_list dev_addrs;
|
||||||
|
|
||||||
@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
__u16 tc_index; /* traffic control index */
|
__u16 tc_index; /* traffic control index */
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -6071,6 +6071,9 @@ static enum gro_result dev_gro_receive(s
|
@@ -6073,6 +6073,9 @@ static enum gro_result dev_gro_receive(s
|
||||||
int same_flow;
|
int same_flow;
|
||||||
int grow;
|
int grow;
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (netif_elide_gro(skb->dev))
|
if (netif_elide_gro(skb->dev))
|
||||||
goto normal;
|
goto normal;
|
||||||
|
|
||||||
@@ -8050,6 +8053,48 @@ static void __netdev_adjacent_dev_unlink
|
@@ -8052,6 +8055,48 @@ static void __netdev_adjacent_dev_unlink
|
||||||
&upper_dev->adj_list.lower);
|
&upper_dev->adj_list.lower);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,7 +91,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,
|
||||||
@@ -8101,6 +8146,7 @@ static int __netdev_upper_dev_link(struc
|
@@ -8103,6 +8148,7 @@ static int __netdev_upper_dev_link(struc
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
ret = notifier_to_errno(ret);
|
ret = notifier_to_errno(ret);
|
||||||
@@ -8197,6 +8243,7 @@ static void __netdev_upper_dev_unlink(st
|
@@ -8199,6 +8245,7 @@ static void __netdev_upper_dev_unlink(st
|
||||||
|
|
||||||
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
|
||||||
&changeupper_info.info);
|
&changeupper_info.info);
|
||||||
|
|
||||||
@@ -8983,6 +9030,7 @@ int dev_set_mac_address(struct net_devic
|
@@ -8985,6 +9032,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;
|
||||||
|
@ -233,7 +233,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static inline void
|
static inline void
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -856,6 +856,7 @@ enum net_device_path_type {
|
@@ -859,6 +859,7 @@ enum net_device_path_type {
|
||||||
DEV_PATH_BRIDGE,
|
DEV_PATH_BRIDGE,
|
||||||
DEV_PATH_PPPOE,
|
DEV_PATH_PPPOE,
|
||||||
DEV_PATH_DSA,
|
DEV_PATH_DSA,
|
||||||
@ -241,7 +241,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct net_device_path {
|
struct net_device_path {
|
||||||
@@ -881,6 +882,12 @@ struct net_device_path {
|
@@ -884,6 +885,12 @@ struct net_device_path {
|
||||||
int port;
|
int port;
|
||||||
u16 proto;
|
u16 proto;
|
||||||
} dsa;
|
} dsa;
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: Alexander Duyck <alexanderduyck@fb.com>
|
|||||||
|
|
||||||
--- a/net/core/skbuff.c
|
--- a/net/core/skbuff.c
|
||||||
+++ b/net/core/skbuff.c
|
+++ b/net/core/skbuff.c
|
||||||
@@ -4164,6 +4164,15 @@ int skb_gro_receive(struct sk_buff *p, s
|
@@ -4169,6 +4169,15 @@ int skb_gro_receive(struct sk_buff *p, s
|
||||||
if (unlikely(p->len + len >= 65536 || NAPI_GRO_CB(skb)->flush))
|
if (unlikely(p->len + len >= 65536 || NAPI_GRO_CB(skb)->flush))
|
||||||
return -E2BIG;
|
return -E2BIG;
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
|
|||||||
help
|
help
|
||||||
--- a/init/main.c
|
--- a/init/main.c
|
||||||
+++ b/init/main.c
|
+++ b/init/main.c
|
||||||
@@ -608,6 +608,29 @@ static inline void setup_nr_cpu_ids(void
|
@@ -606,6 +606,29 @@ static inline void setup_nr_cpu_ids(void
|
||||||
static inline void smp_prepare_cpus(unsigned int maxcpus) { }
|
static inline void smp_prepare_cpus(unsigned int maxcpus) { }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
|
|||||||
/*
|
/*
|
||||||
* We need to store the untouched command line for future reference.
|
* We need to store the untouched command line for future reference.
|
||||||
* We also need to store the touched command line since the parameter
|
* We also need to store the touched command line since the parameter
|
||||||
@@ -869,6 +892,7 @@ asmlinkage __visible void __init __no_sa
|
@@ -866,6 +889,7 @@ asmlinkage __visible void __init __no_sa
|
||||||
pr_notice("%s", linux_banner);
|
pr_notice("%s", linux_banner);
|
||||||
early_security_init();
|
early_security_init();
|
||||||
setup_arch(&command_line);
|
setup_arch(&command_line);
|
||||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#define PACKET_FANOUT_LB 1
|
#define PACKET_FANOUT_LB 1
|
||||||
--- a/net/packet/af_packet.c
|
--- a/net/packet/af_packet.c
|
||||||
+++ b/net/packet/af_packet.c
|
+++ b/net/packet/af_packet.c
|
||||||
@@ -1802,6 +1802,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1806,6 +1806,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
{
|
{
|
||||||
struct sock *sk;
|
struct sock *sk;
|
||||||
struct sockaddr_pkt *spkt;
|
struct sockaddr_pkt *spkt;
|
||||||
@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* When we registered the protocol we saved the socket in the data
|
* When we registered the protocol we saved the socket in the data
|
||||||
@@ -1809,6 +1810,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1813,6 +1814,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
*/
|
*/
|
||||||
|
|
||||||
sk = pt->af_packet_priv;
|
sk = pt->af_packet_priv;
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Yank back the headers [hope the device set this
|
* Yank back the headers [hope the device set this
|
||||||
@@ -1821,7 +1823,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1825,7 +1827,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
* so that this procedure is noop.
|
* so that this procedure is noop.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
@@ -2067,12 +2069,12 @@ static int packet_rcv(struct sk_buff *sk
|
@@ -2071,12 +2073,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||||
unsigned int snaplen, res;
|
unsigned int snaplen, res;
|
||||||
bool is_drop_n_account = false;
|
bool is_drop_n_account = false;
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -2198,12 +2200,12 @@ static int tpacket_rcv(struct sk_buff *s
|
@@ -2202,12 +2204,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
||||||
|
|
||||||
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -3313,6 +3315,7 @@ static int packet_create(struct net *net
|
@@ -3317,6 +3319,7 @@ static int packet_create(struct net *net
|
||||||
mutex_init(&po->pg_vec_lock);
|
mutex_init(&po->pg_vec_lock);
|
||||||
po->rollover = NULL;
|
po->rollover = NULL;
|
||||||
po->prot_hook.func = packet_rcv;
|
po->prot_hook.func = packet_rcv;
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
if (sock->type == SOCK_PACKET)
|
if (sock->type == SOCK_PACKET)
|
||||||
po->prot_hook.func = packet_rcv_spkt;
|
po->prot_hook.func = packet_rcv_spkt;
|
||||||
@@ -3952,6 +3955,16 @@ packet_setsockopt(struct socket *sock, i
|
@@ -3956,6 +3959,16 @@ packet_setsockopt(struct socket *sock, i
|
||||||
WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
|
WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
default:
|
default:
|
||||||
return -ENOPROTOOPT;
|
return -ENOPROTOOPT;
|
||||||
}
|
}
|
||||||
@@ -4008,6 +4021,13 @@ static int packet_getsockopt(struct sock
|
@@ -4012,6 +4025,13 @@ static int packet_getsockopt(struct sock
|
||||||
case PACKET_VNET_HDR:
|
case PACKET_VNET_HDR:
|
||||||
val = po->has_vnet_hdr;
|
val = po->has_vnet_hdr;
|
||||||
break;
|
break;
|
||||||
|
@ -506,7 +506,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
+MODULE_ALIAS("nf-flow-table-hw");
|
+MODULE_ALIAS("nf-flow-table-hw");
|
||||||
--- a/net/netfilter/nf_tables_api.c
|
--- a/net/netfilter/nf_tables_api.c
|
||||||
+++ b/net/netfilter/nf_tables_api.c
|
+++ b/net/netfilter/nf_tables_api.c
|
||||||
@@ -5857,6 +5857,13 @@ static int nf_tables_flowtable_parse_hoo
|
@@ -5888,6 +5888,13 @@ static int nf_tables_flowtable_parse_hoo
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
@ -520,7 +520,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL);
|
ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL);
|
||||||
if (!ops)
|
if (!ops)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
@@ -5987,10 +5994,19 @@ static int nf_tables_newflowtable(struct
|
@@ -6023,10 +6030,19 @@ static int nf_tables_newflowtable(struct
|
||||||
}
|
}
|
||||||
|
|
||||||
flowtable->data.type = type;
|
flowtable->data.type = type;
|
||||||
@ -540,7 +540,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK],
|
err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK],
|
||||||
flowtable);
|
flowtable);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
@@ -6111,7 +6127,8 @@ static int nf_tables_fill_flowtable_info
|
@@ -6149,7 +6165,8 @@ static int nf_tables_fill_flowtable_info
|
||||||
nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) ||
|
nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) ||
|
||||||
nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) ||
|
nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) ||
|
||||||
nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle),
|
nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle),
|
||||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#define PACKET_FANOUT_LB 1
|
#define PACKET_FANOUT_LB 1
|
||||||
--- a/net/packet/af_packet.c
|
--- a/net/packet/af_packet.c
|
||||||
+++ b/net/packet/af_packet.c
|
+++ b/net/packet/af_packet.c
|
||||||
@@ -1862,6 +1862,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1866,6 +1866,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
{
|
{
|
||||||
struct sock *sk;
|
struct sock *sk;
|
||||||
struct sockaddr_pkt *spkt;
|
struct sockaddr_pkt *spkt;
|
||||||
@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* When we registered the protocol we saved the socket in the data
|
* When we registered the protocol we saved the socket in the data
|
||||||
@@ -1869,6 +1870,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1873,6 +1874,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
*/
|
*/
|
||||||
|
|
||||||
sk = pt->af_packet_priv;
|
sk = pt->af_packet_priv;
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Yank back the headers [hope the device set this
|
* Yank back the headers [hope the device set this
|
||||||
@@ -1881,7 +1883,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1885,7 +1887,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
* so that this procedure is noop.
|
* so that this procedure is noop.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
@@ -2127,12 +2129,12 @@ static int packet_rcv(struct sk_buff *sk
|
@@ -2131,12 +2133,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||||
unsigned int snaplen, res;
|
unsigned int snaplen, res;
|
||||||
bool is_drop_n_account = false;
|
bool is_drop_n_account = false;
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -2259,12 +2261,12 @@ static int tpacket_rcv(struct sk_buff *s
|
@@ -2263,12 +2265,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
||||||
|
|
||||||
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -3374,6 +3376,7 @@ static int packet_create(struct net *net
|
@@ -3378,6 +3380,7 @@ static int packet_create(struct net *net
|
||||||
mutex_init(&po->pg_vec_lock);
|
mutex_init(&po->pg_vec_lock);
|
||||||
po->rollover = NULL;
|
po->rollover = NULL;
|
||||||
po->prot_hook.func = packet_rcv;
|
po->prot_hook.func = packet_rcv;
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
if (sock->type == SOCK_PACKET)
|
if (sock->type == SOCK_PACKET)
|
||||||
po->prot_hook.func = packet_rcv_spkt;
|
po->prot_hook.func = packet_rcv_spkt;
|
||||||
@@ -4009,6 +4012,16 @@ packet_setsockopt(struct socket *sock, i
|
@@ -4013,6 +4016,16 @@ packet_setsockopt(struct socket *sock, i
|
||||||
WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
|
WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
default:
|
default:
|
||||||
return -ENOPROTOOPT;
|
return -ENOPROTOOPT;
|
||||||
}
|
}
|
||||||
@@ -4065,6 +4078,13 @@ static int packet_getsockopt(struct sock
|
@@ -4069,6 +4082,13 @@ static int packet_getsockopt(struct sock
|
||||||
case PACKET_VNET_HDR:
|
case PACKET_VNET_HDR:
|
||||||
val = po->has_vnet_hdr;
|
val = po->has_vnet_hdr;
|
||||||
break;
|
break;
|
||||||
|
@ -59,7 +59,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|||||||
}
|
}
|
||||||
--- a/net/netfilter/nft_flow_offload.c
|
--- a/net/netfilter/nft_flow_offload.c
|
||||||
+++ b/net/netfilter/nft_flow_offload.c
|
+++ b/net/netfilter/nft_flow_offload.c
|
||||||
@@ -468,47 +468,14 @@ static struct nft_expr_type nft_flow_off
|
@@ -470,47 +470,14 @@ static struct nft_expr_type nft_flow_off
|
||||||
.owner = THIS_MODULE,
|
.owner = THIS_MODULE,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -626,7 +626,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
void bond_setup(struct net_device *bond_dev)
|
void bond_setup(struct net_device *bond_dev)
|
||||||
@@ -4959,6 +5026,16 @@ int bond_create(struct net *net, const c
|
@@ -4961,6 +5028,16 @@ int bond_create(struct net *net, const c
|
||||||
bond_work_init_all(bond);
|
bond_work_init_all(bond);
|
||||||
|
|
||||||
rtnl_unlock();
|
rtnl_unlock();
|
||||||
@ -643,7 +643,7 @@
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5054,6 +5131,203 @@ static void __exit bonding_exit(void)
|
@@ -5056,6 +5133,203 @@ static void __exit bonding_exit(void)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1321,7 +1321,7 @@
|
|||||||
+
|
+
|
||||||
--- a/net/ipv6/ndisc.c
|
--- a/net/ipv6/ndisc.c
|
||||||
+++ b/net/ipv6/ndisc.c
|
+++ b/net/ipv6/ndisc.c
|
||||||
@@ -648,6 +648,7 @@ void ndisc_send_ns(struct net_device *de
|
@@ -649,6 +649,7 @@ void ndisc_send_ns(struct net_device *de
|
||||||
|
|
||||||
ndisc_send_skb(skb, daddr, saddr);
|
ndisc_send_skb(skb, daddr, saddr);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user