aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch
diff options
context:
space:
mode:
authorJohn Audia <therealgraysky@proton.me>2023-06-06 10:45:47 -0400
committerHauke Mehrtens <hauke@hauke-m.de>2023-06-17 12:09:03 +0200
commit68bc059c55ee71d273fc7d00eddd96f97dcc50d5 (patch)
treedf85f9806afec93be04a59e66935f2e0fa24358d /target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch
parent6f9495b896f53172855cd015ac4024f6b7758e0a (diff)
downloadupstream-68bc059c55ee71d273fc7d00eddd96f97dcc50d5.tar.gz
upstream-68bc059c55ee71d273fc7d00eddd96f97dcc50d5.tar.bz2
upstream-68bc059c55ee71d273fc7d00eddd96f97dcc50d5.zip
kernel: bump 5.15 to 5.15.115
Manually rebased: backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch pending-5.15/723-net-mt7531-ensure-all-MACs-are-powered-down-before-r.patch* Removed upstreamed: generic-backport/610-v6.3-net-page_pool-use-in_softirq-instead.patch[1] backport-5.15/705-12-v6.0-net-dsa-mt7530-rework-mt753-01-_setup.patch[2] backport-5.15/790-v6.4-0010-net-dsa-mt7530-split-off-common-parts-from-mt7531_se.patch[3] backport-5.15/703-10-v5.16-net-dsa-introduce-helpers-for-iterating-through-port.patch[4] All other patches automatically rebased. * Modified to define the variable i as suggested by DragonBluep in PR discussion. See: https://github.com/openwrt/openwrt/pull/12823#issuecomment-1578518576 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=3af319d5147454dc63665ef451229c674b538377 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=0753c1ef24194580f7165ae6e259b59a851392f2 3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=5a7266feaa6d708fc6880a161786eaa884ef3c8e 4. https://github.com/gregkh/linux/commit/9902f91cf666124a6b50bbcf483b46ecb09ef408 Build system: x86_64 Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 5714660643e9170920be2abbb2297d9aac0b9533)
Diffstat (limited to 'target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch')
-rw-r--r--target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch14
1 files changed, 7 insertions, 7 deletions
diff --git a/target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch b/target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch
index fb11f0035f..b425b78c75 100644
--- a/target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch
+++ b/target/linux/generic/backport-5.15/601-v5.18-page_pool-Add-recycle-stats.patch
@@ -53,7 +53,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
/* A page_pool is strictly tied to a single RX-queue being
--- a/net/core/page_pool.c
+++ b/net/core/page_pool.c
-@@ -29,8 +29,15 @@
+@@ -52,8 +52,15 @@ static void page_pool_producer_unlock(st
#ifdef CONFIG_PAGE_POOL_STATS
/* alloc_stat_inc is intended to be used in softirq context */
#define alloc_stat_inc(pool, __stat) (pool->alloc_stats.__stat++)
@@ -69,7 +69,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
#endif
static int page_pool_init(struct page_pool *pool,
-@@ -80,6 +87,12 @@ static int page_pool_init(struct page_po
+@@ -103,6 +110,12 @@ static int page_pool_init(struct page_po
pool->p.flags & PP_FLAG_PAGE_FRAG)
return -EINVAL;
@@ -82,7 +82,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
if (ptr_ring_init(&pool->ring, ring_qsize, GFP_KERNEL) < 0)
return -ENOMEM;
-@@ -412,7 +425,12 @@ static bool page_pool_recycle_in_ring(st
+@@ -435,7 +448,12 @@ static bool page_pool_recycle_in_ring(st
else
ret = ptr_ring_produce_bh(&pool->ring, page);
@@ -96,7 +96,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
}
/* Only allow direct recycling in special circumstances, into the
-@@ -423,11 +441,14 @@ static bool page_pool_recycle_in_ring(st
+@@ -446,11 +464,14 @@ static bool page_pool_recycle_in_ring(st
static bool page_pool_recycle_in_cache(struct page *page,
struct page_pool *pool)
{
@@ -112,7 +112,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
return true;
}
-@@ -482,6 +503,7 @@ __page_pool_put_page(struct page_pool *p
+@@ -505,6 +526,7 @@ __page_pool_put_page(struct page_pool *p
* doing refcnt based recycle tricks, meaning another process
* will be invoking put_page.
*/
@@ -120,7 +120,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
/* Do not replace this with page_pool_return_page() */
page_pool_release_page(pool, page);
put_page(page);
-@@ -495,6 +517,7 @@ void page_pool_put_page(struct page_pool
+@@ -518,6 +540,7 @@ void page_pool_put_page(struct page_pool
page = __page_pool_put_page(pool, page, dma_sync_size, allow_direct);
if (page && !page_pool_recycle_in_ring(pool, page)) {
/* Cache full, fallback to free pages */
@@ -128,7 +128,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
page_pool_return_page(pool, page);
}
}
-@@ -641,6 +664,9 @@ static void page_pool_free(struct page_p
+@@ -665,6 +688,9 @@ static void page_pool_free(struct page_p
if (pool->p.flags & PP_FLAG_DMA_MAP)
put_device(pool->p.dev);