* [PATCH net-next v2 1/3] netmem: fix netmem comments
@ 2025-06-15 20:35 Mina Almasry
2025-06-15 20:35 ` [PATCH net-next v2 2/3] selftests: devmem: remove unused variable Mina Almasry
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Mina Almasry @ 2025-06-15 20:35 UTC (permalink / raw)
To: netdev, linux-kernel, linux-kselftest
Cc: Mina Almasry, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Simon Horman, Andrew Lunn, Shuah Khan,
Stanislav Fomichev, Joe Damato
Trivial fix to a couple of outdated netmem comments. No code changes,
just more accurately describing current code.
Signed-off-by: Mina Almasry <almasrymina@google.com>
---
v2: https://lore.kernel.org/netdev/20250613042804.3259045-2-almasrymina@google.com/
- Adjust comment for clearing lsb as (Jakub)
---
include/net/netmem.h | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/include/net/netmem.h b/include/net/netmem.h
index 386164fb9c18..850869b45b45 100644
--- a/include/net/netmem.h
+++ b/include/net/netmem.h
@@ -89,8 +89,7 @@ static inline unsigned int net_iov_idx(const struct net_iov *niov)
* typedef netmem_ref - a nonexistent type marking a reference to generic
* network memory.
*
- * A netmem_ref currently is always a reference to a struct page. This
- * abstraction is introduced so support for new memory types can be added.
+ * A netmem_ref can be a struct page* or a struct net_iov* underneath.
*
* Use the supplied helpers to obtain the underlying memory pointer and fields.
*/
@@ -117,9 +116,6 @@ static inline struct page *__netmem_to_page(netmem_ref netmem)
return (__force struct page *)netmem;
}
-/* This conversion fails (returns NULL) if the netmem_ref is not struct page
- * backed.
- */
static inline struct page *netmem_to_page(netmem_ref netmem)
{
if (WARN_ON_ONCE(netmem_is_net_iov(netmem)))
@@ -178,6 +174,21 @@ static inline unsigned long netmem_pfn_trace(netmem_ref netmem)
return page_to_pfn(netmem_to_page(netmem));
}
+/* __netmem_clear_lsb - convert netmem_ref to struct net_iov * for access to
+ * common fields.
+ * @netmem: netmem reference to extract as net_iov.
+ *
+ * All the sub types of netmem_ref (page, net_iov) have the same pp, pp_magic,
+ * dma_addr, and pp_ref_count fields at the same offsets. Thus, we can access
+ * these fields without a type check to make sure that the underlying mem is
+ * net_iov or page.
+ *
+ * The resulting value of this function can only be used to access the fields
+ * that are NET_IOV_ASSERT_OFFSET'd. Accessing any other fields will result in
+ * undefined behavior.
+ *
+ * Return: the netmem_ref cast to net_iov* regardless of its underlying type.
+ */
static inline struct net_iov *__netmem_clear_lsb(netmem_ref netmem)
{
return (struct net_iov *)((__force unsigned long)netmem & ~NET_IOV);
base-commit: 8909f5f4ecd551c2299b28e05254b77424c8c7dc
--
2.50.0.rc1.591.g9c95f17f64-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next v2 2/3] selftests: devmem: remove unused variable
2025-06-15 20:35 [PATCH net-next v2 1/3] netmem: fix netmem comments Mina Almasry
@ 2025-06-15 20:35 ` Mina Almasry
2025-06-16 14:39 ` Stanislav Fomichev
2025-06-15 20:35 ` [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test Mina Almasry
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: Mina Almasry @ 2025-06-15 20:35 UTC (permalink / raw)
To: netdev, linux-kernel, linux-kselftest
Cc: Mina Almasry, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Simon Horman, Andrew Lunn, Shuah Khan,
Stanislav Fomichev, Joe Damato
Trivial fix to unused variable.
Signed-off-by: Mina Almasry <almasrymina@google.com>
---
tools/testing/selftests/drivers/net/hw/ncdevmem.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/tools/testing/selftests/drivers/net/hw/ncdevmem.c b/tools/testing/selftests/drivers/net/hw/ncdevmem.c
index 02e4d3d7ded2..cc9b40d9c5d5 100644
--- a/tools/testing/selftests/drivers/net/hw/ncdevmem.c
+++ b/tools/testing/selftests/drivers/net/hw/ncdevmem.c
@@ -852,7 +852,6 @@ static int do_client(struct memory_buffer *mem)
ssize_t line_size = 0;
struct cmsghdr *cmsg;
char *line = NULL;
- unsigned long mid;
size_t len = 0;
int socket_fd;
__u32 ddmabuf;
--
2.50.0.rc1.591.g9c95f17f64-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test
2025-06-15 20:35 [PATCH net-next v2 1/3] netmem: fix netmem comments Mina Almasry
2025-06-15 20:35 ` [PATCH net-next v2 2/3] selftests: devmem: remove unused variable Mina Almasry
@ 2025-06-15 20:35 ` Mina Almasry
2025-06-16 14:40 ` Stanislav Fomichev
2025-06-16 14:40 ` [PATCH net-next v2 1/3] netmem: fix netmem comments Stanislav Fomichev
2025-06-18 1:41 ` patchwork-bot+netdevbpf
3 siblings, 1 reply; 7+ messages in thread
From: Mina Almasry @ 2025-06-15 20:35 UTC (permalink / raw)
To: netdev, linux-kernel, linux-kselftest
Cc: Mina Almasry, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, Simon Horman, Andrew Lunn, Shuah Khan,
Stanislav Fomichev, Joe Damato
Add ipv4 support to the recently added chunks tests, which was added as
ipv6 only.
Signed-off-by: Mina Almasry <almasrymina@google.com>
---
tools/testing/selftests/drivers/net/hw/devmem.py | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/drivers/net/hw/devmem.py b/tools/testing/selftests/drivers/net/hw/devmem.py
index 7947650210a0..baa2f24240ba 100755
--- a/tools/testing/selftests/drivers/net/hw/devmem.py
+++ b/tools/testing/selftests/drivers/net/hw/devmem.py
@@ -51,15 +51,14 @@ def check_tx(cfg) -> None:
@ksft_disruptive
def check_tx_chunks(cfg) -> None:
- cfg.require_ipver("6")
require_devmem(cfg)
port = rand_port()
- listen_cmd = f"socat -U - TCP6-LISTEN:{port}"
+ listen_cmd = f"socat -U - TCP{cfg.addr_ipver}-LISTEN:{port}"
with bkg(listen_cmd, exit_wait=True) as socat:
wait_port_listen(port)
- cmd(f"echo -e \"hello\\nworld\"| {cfg.bin_remote} -f {cfg.ifname} -s {cfg.addr_v['6']} -p {port} -z 3", host=cfg.remote, shell=True)
+ cmd(f"echo -e \"hello\\nworld\"| {cfg.bin_remote} -f {cfg.ifname} -s {cfg.addr} -p {port} -z 3", host=cfg.remote, shell=True)
ksft_eq(socat.stdout.strip(), "hello\nworld")
--
2.50.0.rc1.591.g9c95f17f64-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next v2 2/3] selftests: devmem: remove unused variable
2025-06-15 20:35 ` [PATCH net-next v2 2/3] selftests: devmem: remove unused variable Mina Almasry
@ 2025-06-16 14:39 ` Stanislav Fomichev
0 siblings, 0 replies; 7+ messages in thread
From: Stanislav Fomichev @ 2025-06-16 14:39 UTC (permalink / raw)
To: Mina Almasry
Cc: netdev, linux-kernel, linux-kselftest, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Simon Horman,
Andrew Lunn, Shuah Khan, Stanislav Fomichev, Joe Damato
On 06/15, Mina Almasry wrote:
> Trivial fix to unused variable.
>
> Signed-off-by: Mina Almasry <almasrymina@google.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test
2025-06-15 20:35 ` [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test Mina Almasry
@ 2025-06-16 14:40 ` Stanislav Fomichev
0 siblings, 0 replies; 7+ messages in thread
From: Stanislav Fomichev @ 2025-06-16 14:40 UTC (permalink / raw)
To: Mina Almasry
Cc: netdev, linux-kernel, linux-kselftest, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Simon Horman,
Andrew Lunn, Shuah Khan, Stanislav Fomichev, Joe Damato
On 06/15, Mina Almasry wrote:
> Add ipv4 support to the recently added chunks tests, which was added as
> ipv6 only.
>
> Signed-off-by: Mina Almasry <almasrymina@google.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next v2 1/3] netmem: fix netmem comments
2025-06-15 20:35 [PATCH net-next v2 1/3] netmem: fix netmem comments Mina Almasry
2025-06-15 20:35 ` [PATCH net-next v2 2/3] selftests: devmem: remove unused variable Mina Almasry
2025-06-15 20:35 ` [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test Mina Almasry
@ 2025-06-16 14:40 ` Stanislav Fomichev
2025-06-18 1:41 ` patchwork-bot+netdevbpf
3 siblings, 0 replies; 7+ messages in thread
From: Stanislav Fomichev @ 2025-06-16 14:40 UTC (permalink / raw)
To: Mina Almasry
Cc: netdev, linux-kernel, linux-kselftest, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Simon Horman,
Andrew Lunn, Shuah Khan, Stanislav Fomichev, Joe Damato
On 06/15, Mina Almasry wrote:
> Trivial fix to a couple of outdated netmem comments. No code changes,
> just more accurately describing current code.
>
> Signed-off-by: Mina Almasry <almasrymina@google.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next v2 1/3] netmem: fix netmem comments
2025-06-15 20:35 [PATCH net-next v2 1/3] netmem: fix netmem comments Mina Almasry
` (2 preceding siblings ...)
2025-06-16 14:40 ` [PATCH net-next v2 1/3] netmem: fix netmem comments Stanislav Fomichev
@ 2025-06-18 1:41 ` patchwork-bot+netdevbpf
3 siblings, 0 replies; 7+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-06-18 1:41 UTC (permalink / raw)
To: Mina Almasry
Cc: netdev, linux-kernel, linux-kselftest, davem, edumazet, kuba,
pabeni, horms, andrew+netdev, shuah, sdf, jdamato
Hello:
This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Sun, 15 Jun 2025 20:35:09 +0000 you wrote:
> Trivial fix to a couple of outdated netmem comments. No code changes,
> just more accurately describing current code.
>
> Signed-off-by: Mina Almasry <almasrymina@google.com>
>
> ---
>
> [...]
Here is the summary with links:
- [net-next,v2,1/3] netmem: fix netmem comments
https://git.kernel.org/netdev/net-next/c/0f66b616b87c
- [net-next,v2,2/3] selftests: devmem: remove unused variable
https://git.kernel.org/netdev/net-next/c/46cbaef5d816
- [net-next,v2,3/3] selftests: devmem: add ipv4 support to chunks test
https://git.kernel.org/netdev/net-next/c/fb7612b6c44b
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-06-18 1:40 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-15 20:35 [PATCH net-next v2 1/3] netmem: fix netmem comments Mina Almasry
2025-06-15 20:35 ` [PATCH net-next v2 2/3] selftests: devmem: remove unused variable Mina Almasry
2025-06-16 14:39 ` Stanislav Fomichev
2025-06-15 20:35 ` [PATCH net-next v2 3/3] selftests: devmem: add ipv4 support to chunks test Mina Almasry
2025-06-16 14:40 ` Stanislav Fomichev
2025-06-16 14:40 ` [PATCH net-next v2 1/3] netmem: fix netmem comments Stanislav Fomichev
2025-06-18 1:41 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).