linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol
       [not found] <20190520030140.203605-1-alex.shi@linux.alibaba.com>
@ 2019-05-20  3:01 ` Alex Shi
  2019-05-24 21:40   ` Tejun Heo
  2019-05-20  3:01 ` [PATCH v2 2/3] kselftest/cgroup: fix unexpected testing failure on test_core Alex Shi
  2019-05-20  3:01 ` [PATCH v2 3/3] kselftest/cgroup: fix incorrect test_core skip Alex Shi
  2 siblings, 1 reply; 7+ messages in thread
From: Alex Shi @ 2019-05-20  3:01 UTC (permalink / raw)
  To: cgroups
  Cc: Alex Shi, Shuah Khan, Roman Gushchin, Tejun Heo, Mike Rapoport,
	Jay Kamat, linux-kselftest, linux-kernel

The cgroup testing relies on the root cgroup's subtree_control setting,
If the 'memory' controller isn't set, all test cases will be failed
as following:

$ sudo ./test_memcontrol
not ok 1 test_memcg_subtree_control
not ok 2 test_memcg_current
ok 3 # skip test_memcg_min
not ok 4 test_memcg_low
not ok 5 test_memcg_high
not ok 6 test_memcg_max
not ok 7 test_memcg_oom_events
ok 8 # skip test_memcg_swap_max
not ok 9 test_memcg_sock
not ok 10 test_memcg_oom_group_leaf_events
not ok 11 test_memcg_oom_group_parent_events
not ok 12 test_memcg_oom_group_score_events

To correct this unexpected failure, this patch write the 'memory' to
subtree_control of root to get a right result.

Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Mike Rapoport <rppt@linux.vnet.ibm.com>
Cc: Jay Kamat <jgkamat@fb.com>
Cc: linux-kselftest@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Roman Gushchin <guro@fb.com>
---
 tools/testing/selftests/cgroup/test_memcontrol.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tools/testing/selftests/cgroup/test_memcontrol.c b/tools/testing/selftests/cgroup/test_memcontrol.c
index 6f339882a6ca..73612d604a2a 100644
--- a/tools/testing/selftests/cgroup/test_memcontrol.c
+++ b/tools/testing/selftests/cgroup/test_memcontrol.c
@@ -1205,6 +1205,10 @@ int main(int argc, char **argv)
 	if (cg_read_strstr(root, "cgroup.controllers", "memory"))
 		ksft_exit_skip("memory controller isn't available\n");
 
+	if (cg_read_strstr(root, "cgroup.subtree_control", "memory"))
+	    if (cg_write(root, "cgroup.subtree_control", "+memory"))
+		ksft_exit_skip("Failed to set root memory controller\n");
+
 	for (i = 0; i < ARRAY_SIZE(tests); i++) {
 		switch (tests[i].fn(root)) {
 		case KSFT_PASS:
-- 
2.19.1.856.g8858448bb


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 2/3] kselftest/cgroup: fix unexpected testing failure on test_core
       [not found] <20190520030140.203605-1-alex.shi@linux.alibaba.com>
  2019-05-20  3:01 ` [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol Alex Shi
@ 2019-05-20  3:01 ` Alex Shi
  2019-05-20  3:01 ` [PATCH v2 3/3] kselftest/cgroup: fix incorrect test_core skip Alex Shi
  2 siblings, 0 replies; 7+ messages in thread
From: Alex Shi @ 2019-05-20  3:01 UTC (permalink / raw)
  To: cgroups
  Cc: Alex Shi, Shuah Khan, Tejun Heo, Roman Gushchin, Claudio Zumbo,
	Claudio, linux-kselftest, linux-kernel

The cgroup testing relys on the root cgroup's subtree_control setting,
If the 'memory' controller isn't set, some test cases will be failed
as following:

$sudo  ./test_core
not ok 1 test_cgcore_internal_process_constraint
ok 2 test_cgcore_top_down_constraint_enable
not ok 3 test_cgcore_top_down_constraint_disable
...

To correct this unexpected failure, this patch write the 'memory' to
subtree_control of root to get a right result.

Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Claudio Zumbo <claudioz@fb.com>
Cc: Claudio <claudiozumbo@gmail.com>
Cc: linux-kselftest@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Roman Gushchin <guro@fb.com>
---
 tools/testing/selftests/cgroup/test_core.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/tools/testing/selftests/cgroup/test_core.c b/tools/testing/selftests/cgroup/test_core.c
index be59f9c34ea2..b1a570d7c557 100644
--- a/tools/testing/selftests/cgroup/test_core.c
+++ b/tools/testing/selftests/cgroup/test_core.c
@@ -376,6 +376,11 @@ int main(int argc, char *argv[])
 
 	if (cg_find_unified_root(root, sizeof(root)))
 		ksft_exit_skip("cgroup v2 isn't mounted\n");
+
+	if (cg_read_strstr(root, "cgroup.subtree_control", "memory"))
+	    if (cg_write(root, "cgroup.subtree_control", "+memory"))
+		ksft_exit_skip("Failed to set root memory controller\n");
+
 	for (i = 0; i < ARRAY_SIZE(tests); i++) {
 		switch (tests[i].fn(root)) {
 		case KSFT_PASS:
-- 
2.19.1.856.g8858448bb


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 3/3] kselftest/cgroup: fix incorrect test_core skip
       [not found] <20190520030140.203605-1-alex.shi@linux.alibaba.com>
  2019-05-20  3:01 ` [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol Alex Shi
  2019-05-20  3:01 ` [PATCH v2 2/3] kselftest/cgroup: fix unexpected testing failure on test_core Alex Shi
@ 2019-05-20  3:01 ` Alex Shi
  2 siblings, 0 replies; 7+ messages in thread
From: Alex Shi @ 2019-05-20  3:01 UTC (permalink / raw)
  To: cgroups
  Cc: Alex Shi, Shuah Khan, Tejun Heo, Roman Gushchin, Claudio Zumbo,
	Claudio, linux-kselftest, linux-kernel

The test_core will skip the
test_cgcore_no_internal_process_constraint_on_threads test case if the
'cpu' controller missing in root's subtree_control. In fact we need to
set the 'cpu' in subtree_control, to make the testing meaningful.

./test_core
...
ok 4 # skip test_cgcore_no_internal_process_constraint_on_threads
...

Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Claudio Zumbo <claudioz@fb.com>
Cc: Claudio <claudiozumbo@gmail.com>
Cc: linux-kselftest@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Roman Gushchin <guro@fb.com>
---
 tools/testing/selftests/cgroup/test_core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/cgroup/test_core.c b/tools/testing/selftests/cgroup/test_core.c
index b1a570d7c557..2ffc3e07d98d 100644
--- a/tools/testing/selftests/cgroup/test_core.c
+++ b/tools/testing/selftests/cgroup/test_core.c
@@ -198,7 +198,7 @@ static int test_cgcore_no_internal_process_constraint_on_threads(const char *roo
 	char *parent = NULL, *child = NULL;
 
 	if (cg_read_strstr(root, "cgroup.controllers", "cpu") ||
-	    cg_read_strstr(root, "cgroup.subtree_control", "cpu")) {
+	    cg_write(root, "cgroup.subtree_control", "+cpu")) {
 		ret = KSFT_SKIP;
 		goto cleanup;
 	}
-- 
2.19.1.856.g8858448bb


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol
  2019-05-20  3:01 ` [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol Alex Shi
@ 2019-05-24 21:40   ` Tejun Heo
  2019-05-24 21:44     ` shuah
  0 siblings, 1 reply; 7+ messages in thread
From: Tejun Heo @ 2019-05-24 21:40 UTC (permalink / raw)
  To: Alex Shi
  Cc: cgroups, Shuah Khan, Roman Gushchin, Mike Rapoport, Jay Kamat,
	linux-kselftest, linux-kernel

Hello,

All three patches look good to me.  Please feel free to add my
acked-by.  Shuah, should I route these through cgroup tree or would
the kselftest tree be a better fit?

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol
  2019-05-24 21:40   ` Tejun Heo
@ 2019-05-24 21:44     ` shuah
  2019-05-25  0:06       ` shuah
  0 siblings, 1 reply; 7+ messages in thread
From: shuah @ 2019-05-24 21:44 UTC (permalink / raw)
  To: Tejun Heo, Alex Shi
  Cc: cgroups, Roman Gushchin, Mike Rapoport, Jay Kamat,
	linux-kselftest, linux-kernel, shuah

On 5/24/19 3:40 PM, Tejun Heo wrote:
> Hello,
> 
> All three patches look good to me.  Please feel free to add my
> acked-by.  Shuah, should I route these through cgroup tree or would
> the kselftest tree be a better fit?
> 
> Thanks.
> 


Tejun, I can take them through kselftest tree.

thanks,
-- Shuah

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol
  2019-05-24 21:44     ` shuah
@ 2019-05-25  0:06       ` shuah
  2019-05-27  6:30         ` Alex Shi
  0 siblings, 1 reply; 7+ messages in thread
From: shuah @ 2019-05-25  0:06 UTC (permalink / raw)
  To: Tejun Heo, Alex Shi
  Cc: cgroups, Roman Gushchin, Mike Rapoport, Jay Kamat,
	linux-kselftest, linux-kernel, shuah

On 5/24/19 3:44 PM, shuah wrote:
> On 5/24/19 3:40 PM, Tejun Heo wrote:
>> Hello,
>>
>> All three patches look good to me.  Please feel free to add my
>> acked-by.  Shuah, should I route these through cgroup tree or would
>> the kselftest tree be a better fit?
>>
>> Thanks.
>>
> 
> 
> Tejun, I can take them through kselftest tree.
> 

Alex,

patches 1/3 and 2/3 failed checkpatch. Could you please the warns
and send v3. Go ahead and send all v3 for all 3 patches

thanks,
-- Shuah


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol
  2019-05-25  0:06       ` shuah
@ 2019-05-27  6:30         ` Alex Shi
  0 siblings, 0 replies; 7+ messages in thread
From: Alex Shi @ 2019-05-27  6:30 UTC (permalink / raw)
  To: shuah, Tejun Heo
  Cc: cgroups, Roman Gushchin, Mike Rapoport, Jay Kamat,
	linux-kselftest, linux-kernel



On 2019/5/25 8:06 上午, shuah wrote:
> Alex,
> 
> patches 1/3 and 2/3 failed checkpatch. Could you please the warns
> and send v3. Go ahead and send all v3 for all 3 patches

fixed and rent. 

Thanks a lot! 
Alex 

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-05-27  6:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20190520030140.203605-1-alex.shi@linux.alibaba.com>
2019-05-20  3:01 ` [PATCH v2 1/3] kselftest/cgroup: fix unexpected testing failure on test_memcontrol Alex Shi
2019-05-24 21:40   ` Tejun Heo
2019-05-24 21:44     ` shuah
2019-05-25  0:06       ` shuah
2019-05-27  6:30         ` Alex Shi
2019-05-20  3:01 ` [PATCH v2 2/3] kselftest/cgroup: fix unexpected testing failure on test_core Alex Shi
2019-05-20  3:01 ` [PATCH v2 3/3] kselftest/cgroup: fix incorrect test_core skip Alex Shi

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).