* [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported
@ 2026-03-10 14:39 Waiman Long
2026-03-10 20:18 ` Shakeel Butt
2026-03-11 10:27 ` Michal Koutný
0 siblings, 2 replies; 3+ messages in thread
From: Waiman Long @ 2026-03-10 14:39 UTC (permalink / raw)
To: Johannes Weiner, Michal Hocko, Roman Gushchin, Shakeel Butt,
Muchun Song, Andrew Morton, Tejun Heo, Michal Koutný,
Shuah Khan, Mike Rapoport
Cc: linux-kernel, cgroups, linux-mm, linux-kselftest, Waiman Long
The test_memcg_sock test in memcontrol.c sets up an IPv6 socket and
send data over it to consume memory and verify that memory.stat.sock
and memory.current values are close.
On systems where IPv6 isn't enabled or not configured to support
SOCK_STREAM, the test_memcg_sock test always fails. When the socket()
call fails, there is no way we can test the memory consumption and
verify the above claim. I believe it is better to just skip the test
in this case instead of reporting a test failure hinting that there
may be something wrong with the memcg code.
Fixes: 5f8f019380b8 ("selftests: cgroup/memcontrol: add basic test for socket accounting")
Signed-off-by: Waiman Long <longman@redhat.com>
[v2] Update and commit log & adjust the skip code as suggested by Michael.
---
tools/testing/selftests/cgroup/test_memcontrol.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/cgroup/test_memcontrol.c b/tools/testing/selftests/cgroup/test_memcontrol.c
index 2fb096a2a9f9..a25eb097b31c 100644
--- a/tools/testing/selftests/cgroup/test_memcontrol.c
+++ b/tools/testing/selftests/cgroup/test_memcontrol.c
@@ -1280,8 +1280,11 @@ static int tcp_server(const char *cgroup, void *arg)
saddr.sin6_port = htons(srv_args->port);
sk = socket(AF_INET6, SOCK_STREAM, 0);
- if (sk < 0)
+ if (sk < 0) {
+ /* Pass back errno to the ctl_fd */
+ write(ctl_fd, &errno, sizeof(errno));
return ret;
+ }
if (setsockopt(sk, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(yes)) < 0)
goto cleanup;
@@ -1412,6 +1415,12 @@ static int test_memcg_sock(const char *root)
goto cleanup;
close(args.ctl[0]);
+ /* Skip if address family not supported by protocol */
+ if (err == EAFNOSUPPORT) {
+ ret = KSFT_SKIP;
+ goto cleanup;
+ }
+
if (!err)
break;
if (err != EADDRINUSE)
--
2.53.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported
2026-03-10 14:39 [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported Waiman Long
@ 2026-03-10 20:18 ` Shakeel Butt
2026-03-11 10:27 ` Michal Koutný
1 sibling, 0 replies; 3+ messages in thread
From: Shakeel Butt @ 2026-03-10 20:18 UTC (permalink / raw)
To: Waiman Long
Cc: Johannes Weiner, Michal Hocko, Roman Gushchin, Muchun Song,
Andrew Morton, Tejun Heo, Michal Koutný, Shuah Khan,
Mike Rapoport, linux-kernel, cgroups, linux-mm, linux-kselftest
On Tue, Mar 10, 2026 at 10:39:35AM -0400, Waiman Long wrote:
> The test_memcg_sock test in memcontrol.c sets up an IPv6 socket and
> send data over it to consume memory and verify that memory.stat.sock
> and memory.current values are close.
>
> On systems where IPv6 isn't enabled or not configured to support
> SOCK_STREAM, the test_memcg_sock test always fails. When the socket()
> call fails, there is no way we can test the memory consumption and
> verify the above claim. I believe it is better to just skip the test
> in this case instead of reporting a test failure hinting that there
> may be something wrong with the memcg code.
>
> Fixes: 5f8f019380b8 ("selftests: cgroup/memcontrol: add basic test for socket accounting")
> Signed-off-by: Waiman Long <longman@redhat.com>
Acked-by: Shakeel Butt <shakeel.butt@linux.dev>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported
2026-03-10 14:39 [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported Waiman Long
2026-03-10 20:18 ` Shakeel Butt
@ 2026-03-11 10:27 ` Michal Koutný
1 sibling, 0 replies; 3+ messages in thread
From: Michal Koutný @ 2026-03-11 10:27 UTC (permalink / raw)
To: Waiman Long
Cc: Johannes Weiner, Michal Hocko, Roman Gushchin, Shakeel Butt,
Muchun Song, Andrew Morton, Tejun Heo, Shuah Khan, Mike Rapoport,
linux-kernel, cgroups, linux-mm, linux-kselftest
[-- Attachment #1: Type: text/plain, Size: 1091 bytes --]
On Tue, Mar 10, 2026 at 10:39:35AM -0400, Waiman Long <longman@redhat.com> wrote:
> The test_memcg_sock test in memcontrol.c sets up an IPv6 socket and
> send data over it to consume memory and verify that memory.stat.sock
> and memory.current values are close.
>
> On systems where IPv6 isn't enabled or not configured to support
> SOCK_STREAM, the test_memcg_sock test always fails. When the socket()
> call fails, there is no way we can test the memory consumption and
> verify the above claim. I believe it is better to just skip the test
> in this case instead of reporting a test failure hinting that there
> may be something wrong with the memcg code.
>
> Fixes: 5f8f019380b8 ("selftests: cgroup/memcontrol: add basic test for socket accounting")
> Signed-off-by: Waiman Long <longman@redhat.com>
>
> [v2] Update and commit log & adjust the skip code as suggested by Michael.
>
> ---
> tools/testing/selftests/cgroup/test_memcontrol.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
Thanks,
Acked-by: Michal Koutný <mkoutny@suse.com>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 265 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-03-11 10:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-10 14:39 [PATCH v2] selftest: memcg: Skp memcg_sock test if address family not supported Waiman Long
2026-03-10 20:18 ` Shakeel Butt
2026-03-11 10:27 ` Michal Koutný
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox