From: "Haitao Huang" <haitao.huang@linux.intel.com>
To: "Jarkko Sakkinen" <jarkko@kernel.org>
Cc: anakrish@microsoft.com, bp@alien8.de, cgroups@vger.kernel.org,
chrisyan@microsoft.com, dave.hansen@linux.intel.com,
hpa@zytor.com, kai.huang@intel.com, kristen@linux.intel.com,
linux-kernel@vger.kernel.org, linux-sgx@vger.kernel.org,
mikko.ylinen@linux.intel.com, mingo@redhat.com, mkoutny@suse.com,
seanjc@google.com, sohil.mehta@intel.com, tglx@linutronix.de,
tim.c.chen@linux.intel.com, tj@kernel.org, x86@kernel.org,
yangjie@microsoft.com, zhanb@microsoft.com,
zhiquan1.li@intel.com
Subject: Re: [PATCH v2] selftests/sgx: Improve cgroup test scripts
Date: Tue, 02 Apr 2024 12:31:36 -0500 [thread overview]
Message-ID: <op.2ll2yyfgwjvjmi@hhuan26-mobl.amr.corp.intel.com> (raw)
In-Reply-To: <D09GVMLN1O4Z.2RXQUH4ZY5IVF@kernel.org>
On Tue, 02 Apr 2024 02:43:25 -0500, Jarkko Sakkinen <jarkko@kernel.org>
wrote:
> On Tue Apr 2, 2024 at 4:42 AM EEST, Haitao Huang wrote:
>> Make cgroup test scripts ash compatible.
>> Remove cg-tools dependency.
>> Add documentation for functions.
>>
>> Tested with busybox on Ubuntu.
>>
>> Signed-off-by: Haitao Huang <haitao.huang@linux.intel.com>
>> ---
>> v2:
>> - Fixes for v2 cgroup
>> - Turn off swapping before memcontrol tests and back on after
>> - Add comments and reformat
>> ---
>> tools/testing/selftests/sgx/ash_cgexec.sh | 57 ++++++
>> .../selftests/sgx/run_epc_cg_selftests.sh | 187 +++++++++++-------
>> .../selftests/sgx/watch_misc_for_tests.sh | 13 +-
>> 3 files changed, 179 insertions(+), 78 deletions(-)
>> create mode 100755 tools/testing/selftests/sgx/ash_cgexec.sh
>>
>> diff --git a/tools/testing/selftests/sgx/ash_cgexec.sh
>> b/tools/testing/selftests/sgx/ash_cgexec.sh
>> new file mode 100755
>> index 000000000000..9607784378df
>> --- /dev/null
>> +++ b/tools/testing/selftests/sgx/ash_cgexec.sh
>> @@ -0,0 +1,57 @@
>> +#!/usr/bin/env sh
>> +# SPDX-License-Identifier: GPL-2.0
>> +# Copyright(c) 2024 Intel Corporation.
>> +
>> +# Move the current shell process to the specified cgroup
>> +# Arguments:
>> +# $1 - The cgroup controller name, e.g., misc, memory.
>> +# $2 - The path of the cgroup,
>> +# relative to /sys/fs/cgroup for cgroup v2,
>> +# relative to /sys/fs/cgroup/$1 for v1.
>> +move_to_cgroup() {
>> + controllers="$1"
>> + path="$2"
>> +
>> + # Check if cgroup v2 is in use
>> + if [ ! -d "/sys/fs/cgroup/misc" ]; then
>> + # Cgroup v2 logic
>> + cgroup_full_path="/sys/fs/cgroup/${path}"
>> + echo $$ > "${cgroup_full_path}/cgroup.procs"
>> + else
>> + # Cgroup v1 logic
>> + OLD_IFS="$IFS"
>> + IFS=','
>> + for controller in $controllers; do
>> + cgroup_full_path="/sys/fs/cgroup/${controller}/${path}"
>> + echo $$ > "${cgroup_full_path}/tasks"
>> + done
>> + IFS="$OLD_IFS"
>> + fi
>
> I think that if you could point me to git v10 and all this I could
> then quite easily create test image and see what I get from that.
>
> I will code review the whole thing but this is definitely good
> enough to start testing this series properly! Thanks for the
> effort with this. The payback from this comes after the feature
> is mainline. We have now sort of reference of the usage patterns
> and less layers when we need to debug any possible (likely) bugs
> in the future.
>
> This is definitely to the right direction. I'm just wondering do
> we want to support v1 cgroups or would it make sense support only
> v2?
> BR, Jarkko
>
I can drop v1. I think most distro now support v2.
Created this branch to host these changes so far:
https://github.com/haitaohuang/linux/tree/sgx_cg_upstream_v10_plus
Thanks
Haitao
next prev parent reply other threads:[~2024-04-02 17:31 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-28 0:22 [PATCH v10 00/14] Add Cgroup support for SGX EPC memory Haitao Huang
2024-03-28 0:22 ` [PATCH v10 01/14] x86/sgx: Replace boolean parameters with enums Haitao Huang
2024-03-28 0:22 ` [PATCH v10 02/14] cgroup/misc: Add per resource callbacks for CSS events Haitao Huang
2024-03-28 0:22 ` [PATCH v10 03/14] cgroup/misc: Export APIs for SGX driver Haitao Huang
2024-03-28 0:22 ` [PATCH v10 04/14] cgroup/misc: Add SGX EPC resource type Haitao Huang
2024-03-28 0:22 ` [PATCH v10 05/14] x86/sgx: Implement basic EPC misc cgroup functionality Haitao Huang
2024-03-28 12:53 ` Huang, Kai
2024-03-30 11:17 ` Jarkko Sakkinen
2024-04-01 9:29 ` Huang, Kai
2024-04-01 14:30 ` Jarkko Sakkinen
2024-04-05 1:24 ` Haitao Huang
2024-04-05 2:55 ` Huang, Kai
2024-03-28 0:22 ` [PATCH v10 06/14] x86/sgx: Add sgx_epc_lru_list to encapsulate LRU list Haitao Huang
2024-03-28 0:22 ` [PATCH v10 07/14] x86/sgx: Abstract tracking reclaimable pages in LRU Haitao Huang
2024-03-28 0:22 ` [PATCH v10 08/14] x86/sgx: Add basic EPC reclamation flow for cgroup Haitao Huang
2024-04-03 13:08 ` Huang, Kai
2024-04-04 17:05 ` Haitao Huang
2024-04-05 2:59 ` Huang, Kai
2024-04-05 3:07 ` Huang, Kai
2024-04-13 20:56 ` Jarkko Sakkinen
2024-03-28 0:22 ` [PATCH v10 09/14] x86/sgx: Implement async reclamation " Haitao Huang
2024-04-04 11:16 ` Huang, Kai
2024-04-04 15:39 ` Haitao Huang
2024-03-28 0:22 ` [PATCH v10 10/14] x86/sgx: Charge mem_cgroup for per-cgroup reclamation Haitao Huang
2024-03-28 0:22 ` [PATCH v10 11/14] x86/sgx: Abstract check for global reclaimable pages Haitao Huang
2024-03-28 0:22 ` [PATCH v10 12/14] x86/sgx: Turn on per-cgroup EPC reclamation Haitao Huang
2024-04-08 12:20 ` Huang, Kai
2024-04-08 18:03 ` Haitao Huang
2024-04-08 22:37 ` Huang, Kai
2024-04-09 4:23 ` Haitao Huang
2024-04-09 9:03 ` Michal Koutný
2024-04-09 15:34 ` Haitao Huang
2024-04-10 18:28 ` Haitao Huang
2024-03-28 0:22 ` [PATCH v10 13/14] Docs/x86/sgx: Add description for cgroup support Haitao Huang
2024-03-28 0:22 ` [PATCH v10 14/14] selftests/sgx: Add scripts for EPC cgroup testing Haitao Huang
2024-03-30 11:29 ` Jarkko Sakkinen
2024-03-31 17:44 ` [PATCH] selftests/sgx: Improve cgroup test scripts Haitao Huang
2024-04-01 14:22 ` Jarkko Sakkinen
2024-04-01 22:55 ` Haitao Huang
2024-04-02 7:37 ` Jarkko Sakkinen
2024-04-02 1:42 ` [PATCH v2] " Haitao Huang
2024-04-02 7:43 ` Jarkko Sakkinen
2024-04-02 17:31 ` Haitao Huang [this message]
2024-04-03 15:34 ` Jarkko Sakkinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=op.2ll2yyfgwjvjmi@hhuan26-mobl.amr.corp.intel.com \
--to=haitao.huang@linux.intel.com \
--cc=anakrish@microsoft.com \
--cc=bp@alien8.de \
--cc=cgroups@vger.kernel.org \
--cc=chrisyan@microsoft.com \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=jarkko@kernel.org \
--cc=kai.huang@intel.com \
--cc=kristen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sgx@vger.kernel.org \
--cc=mikko.ylinen@linux.intel.com \
--cc=mingo@redhat.com \
--cc=mkoutny@suse.com \
--cc=seanjc@google.com \
--cc=sohil.mehta@intel.com \
--cc=tglx@linutronix.de \
--cc=tim.c.chen@linux.intel.com \
--cc=tj@kernel.org \
--cc=x86@kernel.org \
--cc=yangjie@microsoft.com \
--cc=zhanb@microsoft.com \
--cc=zhiquan1.li@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®