kernel: bump 6.1 to 6.1.32
Removed upstreamed: generic-backport/610-v6.3-net-page_pool-use-in_softirq-instead.patch[1] All other patches automatically rebased. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/net?h=v6.1.32&id=7dccd5fa7edb9562da61af820bb9d0346447baf1 Build system: x86_64/Fedora 38 Build-tested: ipq807x/Dynalink DL-WRX36 Runtime-tested: ipq807x/Dynalink DL-WRX36 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
parent
4747b96287
commit
f6485c7ce6
|
@ -1,2 +1,2 @@
|
||||||
LINUX_VERSION-6.1 = .31
|
LINUX_VERSION-6.1 = .32
|
||||||
LINUX_KERNEL_HASH-6.1.31 = e86917bba1990e967943645484182a64ba325f98b114a1906cc1d50992e073c1
|
LINUX_KERNEL_HASH-6.1.32 = 7c88b7a09ba2b9e47b78eba2b32b1db6a4d89636f7ddd586545f9671a2521a6c
|
|
@ -1,56 +0,0 @@
|
||||||
From: Qingfang DENG <qingfang.deng@siflower.com.cn>
|
|
||||||
Date: Fri, 3 Feb 2023 09:16:11 +0800
|
|
||||||
Subject: [PATCH] net: page_pool: use in_softirq() instead
|
|
||||||
|
|
||||||
We use BH context only for synchronization, so we don't care if it's
|
|
||||||
actually serving softirq or not.
|
|
||||||
|
|
||||||
As a side node, in case of threaded NAPI, in_serving_softirq() will
|
|
||||||
return false because it's in process context with BH off, making
|
|
||||||
page_pool_recycle_in_cache() unreachable.
|
|
||||||
|
|
||||||
Signed-off-by: Qingfang DENG <qingfang.deng@siflower.com.cn>
|
|
||||||
---
|
|
||||||
|
|
||||||
--- a/include/net/page_pool.h
|
|
||||||
+++ b/include/net/page_pool.h
|
|
||||||
@@ -386,7 +386,7 @@ static inline void page_pool_nid_changed
|
|
||||||
static inline void page_pool_ring_lock(struct page_pool *pool)
|
|
||||||
__acquires(&pool->ring.producer_lock)
|
|
||||||
{
|
|
||||||
- if (in_serving_softirq())
|
|
||||||
+ if (in_softirq())
|
|
||||||
spin_lock(&pool->ring.producer_lock);
|
|
||||||
else
|
|
||||||
spin_lock_bh(&pool->ring.producer_lock);
|
|
||||||
@@ -395,7 +395,7 @@ static inline void page_pool_ring_lock(s
|
|
||||||
static inline void page_pool_ring_unlock(struct page_pool *pool)
|
|
||||||
__releases(&pool->ring.producer_lock)
|
|
||||||
{
|
|
||||||
- if (in_serving_softirq())
|
|
||||||
+ if (in_softirq())
|
|
||||||
spin_unlock(&pool->ring.producer_lock);
|
|
||||||
else
|
|
||||||
spin_unlock_bh(&pool->ring.producer_lock);
|
|
||||||
--- a/net/core/page_pool.c
|
|
||||||
+++ b/net/core/page_pool.c
|
|
||||||
@@ -511,8 +511,8 @@ static void page_pool_return_page(struct
|
|
||||||
static bool page_pool_recycle_in_ring(struct page_pool *pool, struct page *page)
|
|
||||||
{
|
|
||||||
int ret;
|
|
||||||
- /* BH protection not needed if current is serving softirq */
|
|
||||||
- if (in_serving_softirq())
|
|
||||||
+ /* BH protection not needed if current is softirq */
|
|
||||||
+ if (in_softirq())
|
|
||||||
ret = ptr_ring_produce(&pool->ring, page);
|
|
||||||
else
|
|
||||||
ret = ptr_ring_produce_bh(&pool->ring, page);
|
|
||||||
@@ -570,7 +570,7 @@ __page_pool_put_page(struct page_pool *p
|
|
||||||
page_pool_dma_sync_for_device(pool, page,
|
|
||||||
dma_sync_size);
|
|
||||||
|
|
||||||
- if (allow_direct && in_serving_softirq() &&
|
|
||||||
+ if (allow_direct && in_softirq() &&
|
|
||||||
page_pool_recycle_in_cache(page, pool))
|
|
||||||
return NULL;
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
*/
|
*/
|
||||||
--- a/include/linux/skbuff.h
|
--- a/include/linux/skbuff.h
|
||||||
+++ b/include/linux/skbuff.h
|
+++ b/include/linux/skbuff.h
|
||||||
@@ -3022,6 +3022,10 @@ static inline int pskb_trim(struct sk_bu
|
@@ -3032,6 +3032,10 @@ static inline int pskb_trim(struct sk_bu
|
||||||
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
|
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
/**
|
/**
|
||||||
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
|
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
|
||||||
* @skb: buffer to alter
|
* @skb: buffer to alter
|
||||||
@@ -3171,16 +3175,6 @@ static inline struct sk_buff *dev_alloc_
|
@@ -3181,16 +3185,6 @@ static inline struct sk_buff *dev_alloc_
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
--- a/include/linux/skbuff.h
|
--- a/include/linux/skbuff.h
|
||||||
+++ b/include/linux/skbuff.h
|
+++ b/include/linux/skbuff.h
|
||||||
@@ -2988,7 +2988,7 @@ static inline int pskb_network_may_pull(
|
@@ -2998,7 +2998,7 @@ static inline int pskb_network_may_pull(
|
||||||
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
|
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
|
||||||
*/
|
*/
|
||||||
#ifndef NET_SKB_PAD
|
#ifndef NET_SKB_PAD
|
||||||
|
|
Loading…
Reference in New Issue