diff options
author | Olliver Schinagl <oliver@schinagl.nl> | 2022-09-20 12:01:48 +0200 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2022-10-01 02:47:56 +0200 |
commit | d5bf46bbe8f425182ea07787ae5d92145715da1b (patch) | |
tree | 2400e91eaba3059f12e39574f0e5fb3a62bb351f /target/linux/generic/backport-5.15 | |
parent | 5d09118f8e60fa151e03916f255f5511e197af68 (diff) | |
download | upstream-d5bf46bbe8f425182ea07787ae5d92145715da1b.tar.gz upstream-d5bf46bbe8f425182ea07787ae5d92145715da1b.tar.bz2 upstream-d5bf46bbe8f425182ea07787ae5d92145715da1b.zip |
generic: Convert incorrect generic/5.10 patches
OpenWRT's developer guide prefers having actual patches so they an be
sent upstream more easily.
However, in this case, Adding proper fields also allows for `git am` to
properly function. Some of these patches are quite old, and lack much
traceable history.
This commit tries to rectify that, by digging in the history to find
where and how it was first added.
It is by no means perfect and also shows some patches that should have
been long gone.
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Diffstat (limited to 'target/linux/generic/backport-5.15')
10 files changed, 208 insertions, 158 deletions
diff --git a/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch b/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch index 7b97181403..3dbfb7ccba 100644 --- a/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch +++ b/target/linux/generic/backport-5.15/600-v5.18-page_pool-Add-allocation-stats.patch @@ -1,30 +1,36 @@ -commit 8610037e8106b48c79cfe0afb92b2b2466e51c3d -Author: Joe Damato <jdamato@fastly.com> -Date: Tue Mar 1 23:55:47 2022 -0800 +From 8610037e8106b48c79cfe0afb92b2b2466e51c3d Mon Sep 17 00:00:00 2001 +From: Joe Damato <jdamato@fastly.com> +Date: Tue, 1 Mar 2022 23:55:47 -0800 +Subject: [PATCH] page_pool: Add allocation stats - page_pool: Add allocation stats - - Add per-pool statistics counters for the allocation path of a page pool. - These stats are incremented in softirq context, so no locking or per-cpu - variables are needed. - - This code is disabled by default and a kernel config option is provided for - users who wish to enable them. - - The statistics added are: - - fast: successful fast path allocations - - slow: slow path order-0 allocations - - slow_high_order: slow path high order allocations - - empty: ptr ring is empty, so a slow path allocation was forced. - - refill: an allocation which triggered a refill of the cache - - waive: pages obtained from the ptr ring that cannot be added to - the cache due to a NUMA mismatch. - - Signed-off-by: Joe Damato <jdamato@fastly.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Signed-off-by: David S. Miller <davem@davemloft.net> +Add per-pool statistics counters for the allocation path of a page pool. +These stats are incremented in softirq context, so no locking or per-cpu +variables are needed. +This code is disabled by default and a kernel config option is provided for +users who wish to enable them. + +The statistics added are: + - fast: successful fast path allocations + - slow: slow path order-0 allocations + - slow_high_order: slow path high order allocations + - empty: ptr ring is empty, so a slow path allocation was forced. + - refill: an allocation which triggered a refill of the cache + - waive: pages obtained from the ptr ring that cannot be added to + the cache due to a NUMA mismatch. + +Signed-off-by: Joe Damato <jdamato@fastly.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + include/net/page_pool.h | 18 ++++++++++++++++++ + net/Kconfig | 13 +++++++++++++ + net/core/page_pool.c | 24 ++++++++++++++++++++---- + 3 files changed, 51 insertions(+), 4 deletions(-) + +diff --git a/include/net/page_pool.h b/include/net/page_pool.h +index 97c3c19872ff..1f27e8a48830 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -82,6 +82,19 @@ struct page_pool_params { 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 8330ae811d..e60979f4a7 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 @@ -1,21 +1,26 @@ -commit ad6fa1e1ab1b8164f1ba296b1b4dc556a483bcad -Author: Joe Damato <jdamato@fastly.com> -Date: Tue Mar 1 23:55:48 2022 -0800 +From ad6fa1e1ab1b8164f1ba296b1b4dc556a483bcad Mon Sep 17 00:00:00 2001 +From: Joe Damato <jdamato@fastly.com> +Date: Tue, 1 Mar 2022 23:55:48 -0800 +Subject: [PATCH 2/3] page_pool: Add recycle stats - page_pool: Add recycle stats - - Add per-cpu stats tracking page pool recycling events: - - cached: recycling placed page in the page pool cache - - cache_full: page pool cache was full - - ring: page placed into the ptr ring - - ring_full: page released from page pool because the ptr ring was full - - released_refcnt: page released (and not recycled) because refcnt > 1 - - Signed-off-by: Joe Damato <jdamato@fastly.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Signed-off-by: David S. Miller <davem@davemloft.net> +Add per-cpu stats tracking page pool recycling events: + - cached: recycling placed page in the page pool cache + - cache_full: page pool cache was full + - ring: page placed into the ptr ring + - ring_full: page released from page pool because the ptr ring was full + - released_refcnt: page released (and not recycled) because refcnt > 1 +Signed-off-by: Joe Damato <jdamato@fastly.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + include/net/page_pool.h | 16 ++++++++++++++++ + net/core/page_pool.c | 30 ++++++++++++++++++++++++++++-- + 2 files changed, 44 insertions(+), 2 deletions(-) + +diff --git a/include/net/page_pool.h b/include/net/page_pool.h +index 1f27e8a48830..298af95bbf96 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -93,6 +93,18 @@ struct page_pool_alloc_stats { diff --git a/target/linux/generic/backport-5.15/602-v5.18-page_pool-Add-function-to-batch-and-return-stats.patch b/target/linux/generic/backport-5.15/602-v5.18-page_pool-Add-function-to-batch-and-return-stats.patch index 8afbd5d120..e5fbfd14f0 100644 --- a/target/linux/generic/backport-5.15/602-v5.18-page_pool-Add-function-to-batch-and-return-stats.patch +++ b/target/linux/generic/backport-5.15/602-v5.18-page_pool-Add-function-to-batch-and-return-stats.patch @@ -1,17 +1,22 @@ -commit 6b95e3388b1ea0ca63500c5a6e39162dbf828433 -Author: Joe Damato <jdamato@fastly.com> -Date: Tue Mar 1 23:55:49 2022 -0800 +From 6b95e3388b1ea0ca63500c5a6e39162dbf828433 Mon Sep 17 00:00:00 2001 +From: Joe Damato <jdamato@fastly.com> +Date: Tue, 1 Mar 2022 23:55:49 -0800 +Subject: [PATCH 3/3] page_pool: Add function to batch and return stats - page_pool: Add function to batch and return stats - - Adds a function page_pool_get_stats which can be used by drivers to obtain - stats for a specified page_pool. - - Signed-off-by: Joe Damato <jdamato@fastly.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Signed-off-by: David S. Miller <davem@davemloft.net> +Adds a function page_pool_get_stats which can be used by drivers to obtain +stats for a specified page_pool. +Signed-off-by: Joe Damato <jdamato@fastly.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + include/net/page_pool.h | 17 +++++++++++++++++ + net/core/page_pool.c | 25 +++++++++++++++++++++++++ + 2 files changed, 42 insertions(+) + +diff --git a/include/net/page_pool.h b/include/net/page_pool.h +index 298af95bbf96..ea5fb70e5101 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -105,6 +105,23 @@ struct page_pool_recycle_stats { diff --git a/target/linux/generic/backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch b/target/linux/generic/backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch index 90f307772a..e12c387bbc 100644 --- a/target/linux/generic/backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch +++ b/target/linux/generic/backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch @@ -1,17 +1,21 @@ -commit 590032a4d2133ecc10d3078a8db1d85a4842f12c -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Mon Apr 11 16:05:26 2022 +0200 +From 590032a4d2133ecc10d3078a8db1d85a4842f12c Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Mon, 11 Apr 2022 16:05:26 +0200 +Subject: [PATCH] page_pool: Add recycle stats to page_pool_put_page_bulk - page_pool: Add recycle stats to page_pool_put_page_bulk - - Add missing recycle stats to page_pool_put_page_bulk routine. - - Reviewed-by: Joe Damato <jdamato@fastly.com> - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Link: https://lore.kernel.org/r/3712178b51c007cfaed910ea80e68f00c916b1fa.1649685634.git.lorenzo@kernel.org - Signed-off-by: Paolo Abeni <pabeni@redhat.com> +Add missing recycle stats to page_pool_put_page_bulk routine. +Reviewed-by: Joe Damato <jdamato@fastly.com> +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Link: https://lore.kernel.org/r/3712178b51c007cfaed910ea80e68f00c916b1fa.1649685634.git.lorenzo@kernel.org +Signed-off-by: Paolo Abeni <pabeni@redhat.com> +--- + net/core/page_pool.c | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + +diff --git a/net/core/page_pool.c b/net/core/page_pool.c +index 1943c0f0307d..4af55d28ffa3 100644 --- a/net/core/page_pool.c +++ b/net/core/page_pool.c @@ -36,6 +36,12 @@ diff --git a/target/linux/generic/backport-5.15/604-v5.19-net-page_pool-introduce-ethtool-stats.patch b/target/linux/generic/backport-5.15/604-v5.19-net-page_pool-introduce-ethtool-stats.patch index 0694c5cfcb..fa3f1c8fb8 100644 --- a/target/linux/generic/backport-5.15/604-v5.19-net-page_pool-introduce-ethtool-stats.patch +++ b/target/linux/generic/backport-5.15/604-v5.19-net-page_pool-introduce-ethtool-stats.patch @@ -1,17 +1,22 @@ -commit f3c5264f452a5b0ac1de1f2f657efbabdea3c76a -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Tue Apr 12 18:31:58 2022 +0200 +From f3c5264f452a5b0ac1de1f2f657efbabdea3c76a Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Tue, 12 Apr 2022 18:31:58 +0200 +Subject: [PATCH] net: page_pool: introduce ethtool stats - net: page_pool: introduce ethtool stats - - Introduce page_pool APIs to report stats through ethtool and reduce - duplicated code in each driver. - - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Reviewed-by: Jakub Kicinski <kuba@kernel.org> - Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> - Signed-off-by: David S. Miller <davem@davemloft.net> +Introduce page_pool APIs to report stats through ethtool and reduce +duplicated code in each driver. +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Reviewed-by: Jakub Kicinski <kuba@kernel.org> +Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> +Signed-off-by: David S. Miller <davem@davemloft.net> +--- + include/net/page_pool.h | 21 ++++++++++++++ + net/core/page_pool.c | 63 ++++++++++++++++++++++++++++++++++++++++- + 2 files changed, 83 insertions(+), 1 deletion(-) + +diff --git a/include/net/page_pool.h b/include/net/page_pool.h +index ea5fb70e5101..813c93499f20 100644 --- a/include/net/page_pool.h +++ b/include/net/page_pool.h @@ -115,6 +115,10 @@ struct page_pool_stats { diff --git a/target/linux/generic/backport-5.15/605-v5.18-xdp-introduce-flags-field-in-xdp_buff-xdp_frame.patch b/target/linux/generic/backport-5.15/605-v5.18-xdp-introduce-flags-field-in-xdp_buff-xdp_frame.patch index 9c5a14c41b..529b504ed8 100644 --- a/target/linux/generic/backport-5.15/605-v5.18-xdp-introduce-flags-field-in-xdp_buff-xdp_frame.patch +++ b/target/linux/generic/backport-5.15/605-v5.18-xdp-introduce-flags-field-in-xdp_buff-xdp_frame.patch @@ -1,25 +1,29 @@ -commit 2e88d4ff03013937028f5397268b21e10cf68713 -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Fri Jan 21 11:09:45 2022 +0100 +From 2e88d4ff03013937028f5397268b21e10cf68713 Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Fri, 21 Jan 2022 11:09:45 +0100 +Subject: [PATCH] xdp: introduce flags field in xdp_buff/xdp_frame - xdp: introduce flags field in xdp_buff/xdp_frame - - Introduce flags field in xdp_frame and xdp_buffer data structures - to define additional buffer features. At the moment the only - supported buffer feature is frags bit (XDP_FLAGS_HAS_FRAGS). - frags bit is used to specify if this is a linear buffer - (XDP_FLAGS_HAS_FRAGS not set) or a frags frame (XDP_FLAGS_HAS_FRAGS - set). In the latter case the driver is expected to initialize the - skb_shared_info structure at the end of the first buffer to link together - subsequent buffers belonging to the same frame. - - Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> - Acked-by: John Fastabend <john.fastabend@gmail.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Link: https://lore.kernel.org/r/e389f14f3a162c0a5bc6a2e1aa8dd01a90be117d.1642758637.git.lorenzo@kernel.org - Signed-off-by: Alexei Starovoitov <ast@kernel.org> +Introduce flags field in xdp_frame and xdp_buffer data structures +to define additional buffer features. At the moment the only +supported buffer feature is frags bit (XDP_FLAGS_HAS_FRAGS). +frags bit is used to specify if this is a linear buffer +(XDP_FLAGS_HAS_FRAGS not set) or a frags frame (XDP_FLAGS_HAS_FRAGS +set). In the latter case the driver is expected to initialize the +skb_shared_info structure at the end of the first buffer to link together +subsequent buffers belonging to the same frame. +Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> +Acked-by: John Fastabend <john.fastabend@gmail.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Link: https://lore.kernel.org/r/e389f14f3a162c0a5bc6a2e1aa8dd01a90be117d.1642758637.git.lorenzo@kernel.org +Signed-off-by: Alexei Starovoitov <ast@kernel.org> +--- + include/net/xdp.h | 29 +++++++++++++++++++++++++++++ + 1 file changed, 29 insertions(+) + +diff --git a/include/net/xdp.h b/include/net/xdp.h +index 8f0812e4996d..485e9495a690 100644 --- a/include/net/xdp.h +++ b/include/net/xdp.h @@ -66,6 +66,10 @@ struct xdp_txq_info { diff --git a/target/linux/generic/backport-5.15/606-v5.18-xdp-add-frags-support-to-xdp_return_-buff-frame.patch b/target/linux/generic/backport-5.15/606-v5.18-xdp-add-frags-support-to-xdp_return_-buff-frame.patch index 5a04948002..a852c4d5b0 100644 --- a/target/linux/generic/backport-5.15/606-v5.18-xdp-add-frags-support-to-xdp_return_-buff-frame.patch +++ b/target/linux/generic/backport-5.15/606-v5.18-xdp-add-frags-support-to-xdp_return_-buff-frame.patch @@ -1,19 +1,24 @@ -commit 7c48cb0176c6d6d3b55029f7ff4ffa05faee6446 -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Fri Jan 21 11:09:50 2022 +0100 +From 7c48cb0176c6d6d3b55029f7ff4ffa05faee6446 Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Fri, 21 Jan 2022 11:09:50 +0100 +Subject: [PATCH] xdp: add frags support to xdp_return_{buff/frame} - xdp: add frags support to xdp_return_{buff/frame} - - Take into account if the received xdp_buff/xdp_frame is non-linear - recycling/returning the frame memory to the allocator or into - xdp_frame_bulk. - - Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> - Acked-by: John Fastabend <john.fastabend@gmail.com> - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Link: https://lore.kernel.org/r/a961069febc868508ce1bdf5e53a343eb4e57cb2.1642758637.git.lorenzo@kernel.org - Signed-off-by: Alexei Starovoitov <ast@kernel.org> +Take into account if the received xdp_buff/xdp_frame is non-linear +recycling/returning the frame memory to the allocator or into +xdp_frame_bulk. +Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> +Acked-by: John Fastabend <john.fastabend@gmail.com> +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Link: https://lore.kernel.org/r/a961069febc868508ce1bdf5e53a343eb4e57cb2.1642758637.git.lorenzo@kernel.org +Signed-off-by: Alexei Starovoitov <ast@kernel.org> +--- + include/net/xdp.h | 18 ++++++++++++++-- + net/core/xdp.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++- + 2 files changed, 69 insertions(+), 3 deletions(-) + +diff --git a/include/net/xdp.h b/include/net/xdp.h +index 1f8641ec658e..8463dea8b4db 100644 --- a/include/net/xdp.h +++ b/include/net/xdp.h @@ -275,10 +275,24 @@ void __xdp_release_frame(void *data, str diff --git a/target/linux/generic/backport-5.15/607-v5.18-net-skbuff-add-size-metadata-to-skb_shared_info-for-.patch b/target/linux/generic/backport-5.15/607-v5.18-net-skbuff-add-size-metadata-to-skb_shared_info-for-.patch index 5ded882f90..ea020d4e9f 100644 --- a/target/linux/generic/backport-5.15/607-v5.18-net-skbuff-add-size-metadata-to-skb_shared_info-for-.patch +++ b/target/linux/generic/backport-5.15/607-v5.18-net-skbuff-add-size-metadata-to-skb_shared_info-for-.patch @@ -1,22 +1,26 @@ -commit d16697cb6261d4cc23422e6b1cb2759df8aa76d0 -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Fri Jan 21 11:09:44 2022 +0100 +From d16697cb6261d4cc23422e6b1cb2759df8aa76d0 Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Fri, 21 Jan 2022 11:09:44 +0100 +Subject: [PATCH] net: skbuff: add size metadata to skb_shared_info for xdp - net: skbuff: add size metadata to skb_shared_info for xdp - - Introduce xdp_frags_size field in skb_shared_info data structure - to store xdp_buff/xdp_frame frame paged size (xdp_frags_size will - be used in xdp frags support). In order to not increase - skb_shared_info size we will use a hole due to skb_shared_info - alignment. - - Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> - Acked-by: John Fastabend <john.fastabend@gmail.com> - Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Link: https://lore.kernel.org/r/8a849819a3e0a143d540f78a3a5add76e17e980d.1642758637.git.lorenzo@kernel.org - Signed-off-by: Alexei Starovoitov <ast@kernel.org> +Introduce xdp_frags_size field in skb_shared_info data structure +to store xdp_buff/xdp_frame frame paged size (xdp_frags_size will +be used in xdp frags support). In order to not increase +skb_shared_info size we will use a hole due to skb_shared_info +alignment. +Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> +Acked-by: John Fastabend <john.fastabend@gmail.com> +Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Link: https://lore.kernel.org/r/8a849819a3e0a143d540f78a3a5add76e17e980d.1642758637.git.lorenzo@kernel.org +Signed-off-by: Alexei Starovoitov <ast@kernel.org> +--- + include/linux/skbuff.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h +index bf11e1fbd69b..8131d0de7559 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h @@ -567,6 +567,7 @@ struct skb_shared_info { diff --git a/target/linux/generic/backport-5.15/608-v5.18-net-veth-Account-total-xdp_frame-len-running-ndo_xdp.patch b/target/linux/generic/backport-5.15/608-v5.18-net-veth-Account-total-xdp_frame-len-running-ndo_xdp.patch index 9b16fc00b7..5ca38d2403 100644 --- a/target/linux/generic/backport-5.15/608-v5.18-net-veth-Account-total-xdp_frame-len-running-ndo_xdp.patch +++ b/target/linux/generic/backport-5.15/608-v5.18-net-veth-Account-total-xdp_frame-len-running-ndo_xdp.patch @@ -1,22 +1,27 @@ -commit 5142239a22219921a7863cf00c9ab853c00689d8 -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Fri Mar 11 10:14:18 2022 +0100 +From 5142239a22219921a7863cf00c9ab853c00689d8 Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Fri, 11 Mar 2022 10:14:18 +0100 +Subject: [PATCH] net: veth: Account total xdp_frame len running ndo_xdp_xmit - net: veth: Account total xdp_frame len running ndo_xdp_xmit - - Even if this is a theoretical issue since it is not possible to perform - XDP_REDIRECT on a non-linear xdp_frame, veth driver does not account - paged area in ndo_xdp_xmit function pointer. - Introduce xdp_get_frame_len utility routine to get the xdp_frame full - length and account total frame size running XDP_REDIRECT of a - non-linear xdp frame into a veth device. - - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> - Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> - Acked-by: John Fastabend <john.fastabend@gmail.com> - Link: https://lore.kernel.org/bpf/54f9fd3bb65d190daf2c0bbae2f852ff16cfbaa0.1646989407.git.lorenzo@kernel.org +Even if this is a theoretical issue since it is not possible to perform +XDP_REDIRECT on a non-linear xdp_frame, veth driver does not account +paged area in ndo_xdp_xmit function pointer. +Introduce xdp_get_frame_len utility routine to get the xdp_frame full +length and account total frame size running XDP_REDIRECT of a +non-linear xdp frame into a veth device. +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> +Acked-by: Toke Hoiland-Jorgensen <toke@redhat.com> +Acked-by: John Fastabend <john.fastabend@gmail.com> +Link: https://lore.kernel.org/bpf/54f9fd3bb65d190daf2c0bbae2f852ff16cfbaa0.1646989407.git.lorenzo@kernel.org +--- + drivers/net/veth.c | 4 ++-- + include/net/xdp.h | 14 ++++++++++++++ + 2 files changed, 16 insertions(+), 2 deletions(-) + +diff --git a/drivers/net/veth.c b/drivers/net/veth.c +index 58b20ea171dd..b77ce3fdcfe8 100644 --- a/drivers/net/veth.c +++ b/drivers/net/veth.c @@ -501,7 +501,7 @@ static int veth_xdp_xmit(struct net_devi diff --git a/target/linux/generic/backport-5.15/609-v5.18-veth-Allow-jumbo-frames-in-xdp-mode.patch b/target/linux/generic/backport-5.15/609-v5.18-veth-Allow-jumbo-frames-in-xdp-mode.patch index 8080d621da..c8627e0f71 100644 --- a/target/linux/generic/backport-5.15/609-v5.18-veth-Allow-jumbo-frames-in-xdp-mode.patch +++ b/target/linux/generic/backport-5.15/609-v5.18-veth-Allow-jumbo-frames-in-xdp-mode.patch @@ -1,18 +1,25 @@ -commit 7cda76d858a4e71ac4a04066c093679a12e1312c -Author: Lorenzo Bianconi <lorenzo@kernel.org> -Date: Fri Mar 11 10:14:20 2022 +0100 +From 7cda76d858a4e71ac4a04066c093679a12e1312c Mon Sep 17 00:00:00 2001 +From: Lorenzo Bianconi <lorenzo@kernel.org> +Date: Fri, 11 Mar 2022 10:14:20 +0100 +Subject: [PATCH] veth: Allow jumbo frames in xdp mode +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit - veth: Allow jumbo frames in xdp mode - - Allow increasing the MTU over page boundaries on veth devices - if the attached xdp program declares to support xdp fragments. - - Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> - Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> - Acked-by: Toke Høiland-Jørgensen <toke@redhat.com> - Acked-by: John Fastabend <john.fastabend@gmail.com> - Link: https://lore.kernel.org/bpf/d5dc039c3d4123426e7023a488c449181a7bc57f.1646989407.git.lorenzo@kernel.org +Allow increasing the MTU over page boundaries on veth devices +if the attached xdp program declares to support xdp fragments. +Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> +Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> +Acked-by: Toke Høiland-Jørgensen <toke@redhat.com> +Acked-by: John Fastabend <john.fastabend@gmail.com> +Link: https://lore.kernel.org/bpf/d5dc039c3d4123426e7023a488c449181a7bc57f.1646989407.git.lorenzo@kernel.org +--- + drivers/net/veth.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/drivers/net/veth.c b/drivers/net/veth.c +index bfae15ec902b..1b5714926d81 100644 --- a/drivers/net/veth.c +++ b/drivers/net/veth.c @@ -1470,9 +1470,14 @@ static int veth_xdp_set(struct net_devic |