* [PATCH] selftests/cgroup: conform test to TAP format output
@ 2025-11-13 9:50 Guopeng Zhang
2025-11-13 10:45 ` Michal Koutný
0 siblings, 1 reply; 8+ messages in thread
From: Guopeng Zhang @ 2025-11-13 9:50 UTC (permalink / raw)
To: tj, hannes, shuah, cgroups
Cc: mkoutny, linux-kselftest, linux-kernel, Guopeng Zhang
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
Signed-off-by: Guopeng Zhang <zhangguopeng@kylinos.cn>
---
tools/testing/selftests/cgroup/test_core.c | 7 ++++---
tools/testing/selftests/cgroup/test_cpu.c | 7 ++++---
tools/testing/selftests/cgroup/test_cpuset.c | 7 ++++---
tools/testing/selftests/cgroup/test_freezer.c | 7 ++++---
tools/testing/selftests/cgroup/test_kill.c | 7 ++++---
tools/testing/selftests/cgroup/test_kmem.c | 7 ++++---
tools/testing/selftests/cgroup/test_memcontrol.c | 7 ++++---
tools/testing/selftests/cgroup/test_zswap.c | 7 ++++---
8 files changed, 32 insertions(+), 24 deletions(-)
diff --git a/tools/testing/selftests/cgroup/test_core.c b/tools/testing/selftests/cgroup/test_core.c
index 5e5b8c4b8c0e..102262555a59 100644
--- a/tools/testing/selftests/cgroup/test_core.c
+++ b/tools/testing/selftests/cgroup/test_core.c
@@ -923,8 +923,10 @@ struct corecg_test {
int main(int argc, char *argv[])
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), &nsdelegate)) {
if (setup_named_v1_root(root, sizeof(root), CG_NAMED_NAME))
ksft_exit_skip("cgroup v2 isn't mounted and could not setup named v1 hierarchy\n");
@@ -946,12 +948,11 @@ int main(int argc, char *argv[])
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
cleanup_named_v1_root(root);
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_cpu.c b/tools/testing/selftests/cgroup/test_cpu.c
index 7d77d3d43c8e..c83f05438d7c 100644
--- a/tools/testing/selftests/cgroup/test_cpu.c
+++ b/tools/testing/selftests/cgroup/test_cpu.c
@@ -796,8 +796,10 @@ struct cpucg_test {
int main(int argc, char *argv[])
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
@@ -814,11 +816,10 @@ int main(int argc, char *argv[])
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_cpuset.c b/tools/testing/selftests/cgroup/test_cpuset.c
index 8094091a5857..c5cf8b56ceb8 100644
--- a/tools/testing/selftests/cgroup/test_cpuset.c
+++ b/tools/testing/selftests/cgroup/test_cpuset.c
@@ -247,8 +247,10 @@ struct cpuset_test {
int main(int argc, char *argv[])
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
@@ -265,11 +267,10 @@ int main(int argc, char *argv[])
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_freezer.c b/tools/testing/selftests/cgroup/test_freezer.c
index 714c963aa3f5..97fae92c8387 100644
--- a/tools/testing/selftests/cgroup/test_freezer.c
+++ b/tools/testing/selftests/cgroup/test_freezer.c
@@ -1488,8 +1488,10 @@ struct cgfreezer_test {
int main(int argc, char *argv[])
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
for (i = 0; i < ARRAY_SIZE(tests); i++) {
@@ -1501,11 +1503,10 @@ int main(int argc, char *argv[])
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_kill.c b/tools/testing/selftests/cgroup/test_kill.c
index a4dd326ced79..c8c9d306925b 100644
--- a/tools/testing/selftests/cgroup/test_kill.c
+++ b/tools/testing/selftests/cgroup/test_kill.c
@@ -274,8 +274,10 @@ struct cgkill_test {
int main(int argc, char *argv[])
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
for (i = 0; i < ARRAY_SIZE(tests); i++) {
@@ -287,11 +289,10 @@ int main(int argc, char *argv[])
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_kmem.c b/tools/testing/selftests/cgroup/test_kmem.c
index 005a142f3492..ca38525484e3 100644
--- a/tools/testing/selftests/cgroup/test_kmem.c
+++ b/tools/testing/selftests/cgroup/test_kmem.c
@@ -421,8 +421,10 @@ struct kmem_test {
int main(int argc, char **argv)
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
@@ -446,11 +448,10 @@ int main(int argc, char **argv)
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_memcontrol.c b/tools/testing/selftests/cgroup/test_memcontrol.c
index 2e9d78ab641c..4e1647568c5b 100644
--- a/tools/testing/selftests/cgroup/test_memcontrol.c
+++ b/tools/testing/selftests/cgroup/test_memcontrol.c
@@ -1650,8 +1650,10 @@ struct memcg_test {
int main(int argc, char **argv)
{
char root[PATH_MAX];
- int i, proc_status, ret = EXIT_SUCCESS;
+ int i, proc_status;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
@@ -1685,11 +1687,10 @@ int main(int argc, char **argv)
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
diff --git a/tools/testing/selftests/cgroup/test_zswap.c b/tools/testing/selftests/cgroup/test_zswap.c
index ab865d900791..64ebc3f3f203 100644
--- a/tools/testing/selftests/cgroup/test_zswap.c
+++ b/tools/testing/selftests/cgroup/test_zswap.c
@@ -597,8 +597,10 @@ static bool zswap_configured(void)
int main(int argc, char **argv)
{
char root[PATH_MAX];
- int i, ret = EXIT_SUCCESS;
+ int i;
+ ksft_print_header();
+ ksft_set_plan(ARRAY_SIZE(tests));
if (cg_find_unified_root(root, sizeof(root), NULL))
ksft_exit_skip("cgroup v2 isn't mounted\n");
@@ -625,11 +627,10 @@ int main(int argc, char **argv)
ksft_test_result_skip("%s\n", tests[i].name);
break;
default:
- ret = EXIT_FAILURE;
ksft_test_result_fail("%s\n", tests[i].name);
break;
}
}
- return ret;
+ ksft_finished();
}
--
2.25.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH] selftests/cgroup: conform test to TAP format output
2025-11-13 9:50 [PATCH] selftests/cgroup: conform test to TAP format output Guopeng Zhang
@ 2025-11-13 10:45 ` Michal Koutný
2025-11-14 3:55 ` Guopeng Zhang
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Michal Koutný @ 2025-11-13 10:45 UTC (permalink / raw)
To: Guopeng Zhang
Cc: tj, hannes, shuah, cgroups, linux-kselftest, linux-kernel,
Sebastian Chlad
[-- Attachment #1: Type: text/plain, Size: 657 bytes --]
Hi.
Thanks for coming up with this. I've brought up something similar just
yesterday [1].
On Thu, Nov 13, 2025 at 05:50:25PM +0800, Guopeng Zhang <zhangguopeng@kylinos.cn> wrote:
> Conform the layout, informational and status messages to TAP. No
Could you please explain more why is the TAP layout beneficial?
(I understand selftest are for oneself, i.e. human readable only by default.)
Or is this part of some tree-wide effort?
I'm asking to better asses whether also the scripts listed in
Makefile:TEST_PROGS should be converted too.
Thanks,
Michal
[1] https://lore.kernel.org/all/rua6ubri67gh3b7atarbm5mggqgjyh6646mzkry2n2547jne4s@wvvpr3esi5es/
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 265 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH] selftests/cgroup: conform test to TAP format output
2025-11-13 10:45 ` Michal Koutný
@ 2025-11-14 3:55 ` Guopeng Zhang
2026-04-10 21:41 ` [PATCH v2] iio: adc: nxp-sar-adc: use field_get() for EOC bit check Piyush Patle
[not found] ` <6916a904.9d0a0220.2b5e5.0b79SMTPIN_ADDED_BROKEN@mx.google.com>
[not found] ` <6916a8f5.050a0220.23bb4.ab7dSMTPIN_ADDED_BROKEN@mx.google.com>
2 siblings, 1 reply; 8+ messages in thread
From: Guopeng Zhang @ 2025-11-14 3:55 UTC (permalink / raw)
To: mkoutny
Cc: tj, hannes, shuah, cgroups, linux-kselftest, linux-kernel,
sebastian.chlad, Guopeng Zhang
Hi Michal,
Thanks for reviewing and pointing out [1].
> Could you please explain more why is the TAP layout beneficial?
> (I understand selftest are for oneself, i.e. human readable only by default.)
Actually, selftests are no longer just something for developers to view locally; they are now extensively
run in CI and stable branch regression testing. Using a standardized layout means that general test runners
and CI systems can parse the cgroup test results without any special handling.
TAP provides a structured format that is both human-readable and machine-readable. The plan/result lines are parsed by tools,
while the diagnostic lines can still contain human-readable debug information. Over time, other selftest suites (such as mm, KVM, mptcp, etc.)
have also been converted to TAP-style output, so this change just brings the cgroup tests in line with that broader direction.
> Or is this part of some tree-wide effort?
This patch is not part of a formal, tree-wide conversion series I am running; it is an incremental step to align the
cgroup C tests with the existing TAP usage. I started here because these tests already use ksft_test_result_*() and
only require minor changes to generate proper TAP output.
> I'm asking to better asses whether also the scripts listed in
> Makefile:TEST_PROGS should be converted too.
I agree that having them produce TAP output would benefit tooling and CI. I did not want to mix
that into this change, but if you and other maintainers think this direction is reasonable,
I would be happy to follow up and convert the cgroup shell tests to TAP as well.
Thanks again for your review.
Best regards,
Guopeng
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH v2] iio: adc: nxp-sar-adc: use field_get() for EOC bit check
2025-11-14 3:55 ` Guopeng Zhang
@ 2026-04-10 21:41 ` Piyush Patle
0 siblings, 0 replies; 8+ messages in thread
From: Piyush Patle @ 2026-04-10 21:41 UTC (permalink / raw)
To: Jonathan Cameron, linux-iio
Cc: David Lechner, Nuno Sá, Andy Shevchenko, Daniel Lezcano,
Alexandru-Catalin Ionita, Felix Gu, linux-kernel
Use field_get() here now that runtime-mask support exists, and drop
the obsolete TODO. Since NXP_SAR_ADC_EOC_CH(c) is BIT(c), the
resulting !-test is semantically identical.
No functional change.
Reviewed-by: David Lechner <dlechner@baylibre.com>
Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
---
drivers/iio/adc/nxp-sar-adc.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/drivers/iio/adc/nxp-sar-adc.c b/drivers/iio/adc/nxp-sar-adc.c
index 58103bf16aff..d6c2a0d50bb4 100644
--- a/drivers/iio/adc/nxp-sar-adc.c
+++ b/drivers/iio/adc/nxp-sar-adc.c
@@ -316,11 +316,7 @@ static int nxp_sar_adc_read_data(struct nxp_sar_adc *info, unsigned int chan)
ceocfr = readl(NXP_SAR_ADC_CEOCFR0(info->regs));
- /*
- * FIELD_GET() can not be used here because EOC_CH is not constant.
- * TODO: Switch to field_get() when it will be available.
- */
- if (!(NXP_SAR_ADC_EOC_CH(chan) & ceocfr))
+ if (!field_get(NXP_SAR_ADC_EOC_CH(chan), ceocfr))
return -EIO;
cdr = readl(NXP_SAR_ADC_CDR(info->regs, chan));
--
2.43.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
[parent not found: <6916a904.9d0a0220.2b5e5.0b79SMTPIN_ADDED_BROKEN@mx.google.com>]
* Re: [PATCH] selftests/cgroup: conform test to TAP format output
[not found] ` <6916a904.9d0a0220.2b5e5.0b79SMTPIN_ADDED_BROKEN@mx.google.com>
@ 2025-11-14 7:04 ` Sebastian Chlad
2025-11-14 9:19 ` Guopeng Zhang
0 siblings, 1 reply; 8+ messages in thread
From: Sebastian Chlad @ 2025-11-14 7:04 UTC (permalink / raw)
To: Guopeng Zhang
Cc: mkoutny, tj, hannes, shuah, cgroups, linux-kselftest,
linux-kernel
On Fri, Nov 14, 2025 at 4:59 AM Guopeng Zhang <zhangguopeng@kylinos.cn> wrote:
>
> Hi Michal,
>
> Thanks for reviewing and pointing out [1].
>
> > Could you please explain more why is the TAP layout beneficial?
> > (I understand selftest are for oneself, i.e. human readable only by default.)
>
> Actually, selftests are no longer just something for developers to view locally; they are now extensively
> run in CI and stable branch regression testing. Using a standardized layout means that general test runners
> and CI systems can parse the cgroup test results without any special handling.
I second that.
In fact, we do run some of those tests in the CI; i.e.
https://openqa.opensuse.org/tests/5453031#external
We added this: https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Parser/Format/KTAP.pm
to our CI
but frankly the use of the KTAP across the selftests is very
inconsistent, so we need to post-process some of the output files
quite a lot.
Therefore the more standardized the output, the better for any CI.
Small ask: should we amend the commit message to say KTAP?
That being said - the cgroups tests produce nice output which is easy
to parse and gives us no issues in our CI apart
from the shell tests, specifically test_cpuset_prs.sh.
We currently run the cgroup tests only internally because some of them
tend to fail when crossing resource-usage
boundaries and don’t provide clear information about by how much.
That ties into my earlier effort Michal linked here::
https://lore.kernel.org/all/rua6ubri67gh3b7atarbm5mggqgjyh6646mzkry2n2547jne4s@wvvpr3esi5es/
I’ll try to add the cgroup tests to the public openSUSE CI and will
test your patches.
>
> TAP provides a structured format that is both human-readable and machine-readable. The plan/result lines are parsed by tools,
> while the diagnostic lines can still contain human-readable debug information. Over time, other selftest suites (such as mm, KVM, mptcp, etc.)
> have also been converted to TAP-style output, so this change just brings the cgroup tests in line with that broader direction.
>
> > Or is this part of some tree-wide effort?
>
> This patch is not part of a formal, tree-wide conversion series I am running; it is an incremental step to align the
> cgroup C tests with the existing TAP usage. I started here because these tests already use ksft_test_result_*() and
> only require minor changes to generate proper TAP output.
>
> > I'm asking to better asses whether also the scripts listed in
> > Makefile:TEST_PROGS should be converted too.
>
> I agree that having them produce TAP output would benefit tooling and CI. I did not want to mix
> that into this change, but if you and other maintainers think this direction is reasonable,
> I would be happy to follow up and convert the cgroup shell tests to TAP as well.
>
> Thanks again for your review.
>
> Best regards,
> Guopeng
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH] selftests/cgroup: conform test to TAP format output
2025-11-14 7:04 ` [PATCH] selftests/cgroup: conform test to TAP format output Sebastian Chlad
@ 2025-11-14 9:19 ` Guopeng Zhang
0 siblings, 0 replies; 8+ messages in thread
From: Guopeng Zhang @ 2025-11-14 9:19 UTC (permalink / raw)
To: Sebastian Chlad
Cc: mkoutny, tj, hannes, shuah, cgroups, linux-kselftest,
linux-kernel
On 11/14/25 15:04, Sebastian Chlad wrote:
> On Fri, Nov 14, 2025 at 4:59 AM Guopeng Zhang <zhangguopeng@kylinos.cn> wrote:
>>
>> Hi Michal,
>>
>> Thanks for reviewing and pointing out [1].
>>
>>> Could you please explain more why is the TAP layout beneficial?
>>> (I understand selftest are for oneself, i.e. human readable only by default.)
>>
>> Actually, selftests are no longer just something for developers to view locally; they are now extensively
>> run in CI and stable branch regression testing. Using a standardized layout means that general test runners
>> and CI systems can parse the cgroup test results without any special handling.
>
> I second that.
> In fact, we do run some of those tests in the CI; i.e.
> https://openqa.opensuse.org/tests/5453031#external
> We added this: https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Parser/Format/KTAP.pm
> to our CI
> but frankly the use of the KTAP across the selftests is very
> inconsistent, so we need to post-process some of the output files
> quite a lot.
> Therefore the more standardized the output, the better for any CI.
>
Hi Sebastian,
Thanks a lot for the details and for sharing the openQA links and the KTAP parser.
That context is really helpful.
> Small ask: should we amend the commit message to say KTAP?
>
Good point about the naming – I’ll respin this as v2 and amend the commit
message to refer to KTAP rather than just TAP.
> That being said - the cgroups tests produce nice output which is easy
> to parse and gives us no issues in our CI apart
> from the shell tests, specifically test_cpuset_prs.sh.
>
> We currently run the cgroup tests only internally because some of them
> tend to fail when crossing resource-usage
> boundaries and don’t provide clear information about by how much.
> That ties into my earlier effort Michal linked here::
> https://lore.kernel.org/all/rua6ubri67gh3b7atarbm5mggqgjyh6646mzkry2n2547jne4s@wvvpr3esi5es/
>
> I’ll try to add the cgroup tests to the public openSUSE CI and will
> test your patches.
>
It’s also great to hear that the cgroup C tests already integrate reasonably
well with your CI. Once this change settles, I’d be happy to follow up with
patches to convert the cgroup shell tests, in particular test_cpuset_prs.sh,
to KTAP-style output as well.
Thanks again for trying the patches in the openSUSE CI and for the feedback.
>>
>> TAP provides a structured format that is both human-readable and machine-readable. The plan/result lines are parsed by tools,
>> while the diagnostic lines can still contain human-readable debug information. Over time, other selftest suites (such as mm, KVM, mptcp, etc.)
>> have also been converted to TAP-style output, so this change just brings the cgroup tests in line with that broader direction.
>>
>>> Or is this part of some tree-wide effort?
>>
>> This patch is not part of a formal, tree-wide conversion series I am running; it is an incremental step to align the
>> cgroup C tests with the existing TAP usage. I started here because these tests already use ksft_test_result_*() and
>> only require minor changes to generate proper TAP output.
>>
>>> I'm asking to better asses whether also the scripts listed in
>>> Makefile:TEST_PROGS should be converted too.
>>
>> I agree that having them produce TAP output would benefit tooling and CI. I did not want to mix
>> that into this change, but if you and other maintainers think this direction is reasonable,
>> I would be happy to follow up and convert the cgroup shell tests to TAP as well.
>>
>> Thanks again for your review.
>>
>> Best regards,
>> Guopeng
>>
>>
^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <6916a8f5.050a0220.23bb4.ab7dSMTPIN_ADDED_BROKEN@mx.google.com>]
* Re: [PATCH] selftests/cgroup: conform test to TAP format output
[not found] ` <6916a8f5.050a0220.23bb4.ab7dSMTPIN_ADDED_BROKEN@mx.google.com>
@ 2025-11-14 14:32 ` Michal Koutný
2025-11-15 3:43 ` Guopeng Zhang
0 siblings, 1 reply; 8+ messages in thread
From: Michal Koutný @ 2025-11-14 14:32 UTC (permalink / raw)
To: Guopeng Zhang
Cc: tj, hannes, shuah, cgroups, linux-kselftest, linux-kernel,
sebastian.chlad, longman
[-- Attachment #1: Type: text/plain, Size: 1355 bytes --]
On Fri, Nov 14, 2025 at 11:55:48AM +0800, Guopeng Zhang <zhangguopeng@kylinos.cn> wrote:
> Actually, selftests are no longer just something for developers to view locally; they are now extensively
> run in CI and stable branch regression testing. Using a standardized layout means that general test runners
> and CI systems can parse the cgroup test results without any special handling.
Nice. I appreciate you took this up.
> This patch is not part of a formal, tree-wide conversion series I am running; it is an incremental step to align the
> cgroup C tests with the existing TAP usage. I started here because these tests already use ksft_test_result_*() and
> only require minor changes to generate proper TAP output.
The tests are in various state of usage, correctness and usefulness,
hence...
>
> > I'm asking to better asses whether also the scripts listed in
> > Makefile:TEST_PROGS should be converted too.
>
> I agree that having them produce TAP output would benefit tooling and CI. I did not want to mix
> that into this change, but if you and other maintainers think this direction is reasonable,
> I would be happy to follow up and convert the cgroup shell tests to TAP as well.
...I'd suggest next focus on test_cpuset_prs.sh (as discussed, it may
need more changes to adapt its output too).
Michal
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 265 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH] selftests/cgroup: conform test to TAP format output
2025-11-14 14:32 ` Michal Koutný
@ 2025-11-15 3:43 ` Guopeng Zhang
0 siblings, 0 replies; 8+ messages in thread
From: Guopeng Zhang @ 2025-11-15 3:43 UTC (permalink / raw)
To: Michal Koutný
Cc: tj, hannes, shuah, cgroups, linux-kselftest, linux-kernel,
sebastian.chlad, longman
On 11/14/25 22:32, Michal Koutný wrote:
> On Fri, Nov 14, 2025 at 11:55:48AM +0800, Guopeng Zhang <zhangguopeng@kylinos.cn> wrote:
>> Actually, selftests are no longer just something for developers to view locally; they are now extensively
>> run in CI and stable branch regression testing. Using a standardized layout means that general test runners
>> and CI systems can parse the cgroup test results without any special handling.
>
> Nice. I appreciate you took this up.
>
>> This patch is not part of a formal, tree-wide conversion series I am running; it is an incremental step to align the
>> cgroup C tests with the existing TAP usage. I started here because these tests already use ksft_test_result_*() and
>> only require minor changes to generate proper TAP output.
>
> The tests are in various state of usage, correctness and usefulness,
> hence...
>
>>
>>> I'm asking to better asses whether also the scripts listed in
>>> Makefile:TEST_PROGS should be converted too.
>>
>> I agree that having them produce TAP output would benefit tooling and CI. I did not want to mix
>> that into this change, but if you and other maintainers think this direction is reasonable,
>> I would be happy to follow up and convert the cgroup shell tests to TAP as well.
>
> ...I'd suggest next focus on test_cpuset_prs.sh (as discussed, it may
> need more changes to adapt its output too).
>
> Michal
Yes, I agree that test_cpuset_prs.sh should be the next focus.
Thanks again for the guidance.
Guopeng
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-04-10 21:41 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-13 9:50 [PATCH] selftests/cgroup: conform test to TAP format output Guopeng Zhang
2025-11-13 10:45 ` Michal Koutný
2025-11-14 3:55 ` Guopeng Zhang
2026-04-10 21:41 ` [PATCH v2] iio: adc: nxp-sar-adc: use field_get() for EOC bit check Piyush Patle
[not found] ` <6916a904.9d0a0220.2b5e5.0b79SMTPIN_ADDED_BROKEN@mx.google.com>
2025-11-14 7:04 ` [PATCH] selftests/cgroup: conform test to TAP format output Sebastian Chlad
2025-11-14 9:19 ` Guopeng Zhang
[not found] ` <6916a8f5.050a0220.23bb4.ab7dSMTPIN_ADDED_BROKEN@mx.google.com>
2025-11-14 14:32 ` Michal Koutný
2025-11-15 3:43 ` Guopeng Zhang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox