From nobody Mon Jun 8 06:38:56 2026 Received: from smtpbgau1.qq.com (smtpbgau1.qq.com [54.206.16.166]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6CAF43876B5; Mon, 1 Jun 2026 07:49:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.206.16.166 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780300171; cv=none; b=PkExZEW0ZxGt9mLBrgp2ixuhDAJ34DmbHyfEAW3Uchfp+yyMWI6MwynyJur9ICinaQC/T+WixEUT4OXX5FyVlSMVOjiQ9HUSvUszJoz4k9McJ0kQ5MZIV+rmEOSwkKefLnJUZlpJPmMkWKbyHieKDSU0nciCaufpNRHdXR9fUaU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780300171; c=relaxed/simple; bh=0aE6h/5Gor35FT0+47VDSaRxZdUotrOoDslgItJm8PY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KtrLz1m631B769oYigoI995QrZRH0oNAsOMiIPKf6nTOsz3yIZFxA0acv9V7c/HArUPwdyfVup0DIQpIlWjpmPobHiYm+4nLTZ6WI6Jw5tevJwQS44+fqM+tOg6AnOf0+3fo7BtyrXx/EdlcdZ3ZMtJOQIQz0SVUjuMF2PyKuLs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com; spf=pass smtp.mailfrom=uniontech.com; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b=iJWubnZu; arc=none smtp.client-ip=54.206.16.166 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=uniontech.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b="iJWubnZu" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uniontech.com; s=onoh2408; t=1780300139; bh=ea62rNturdRY4XhPqvTtukJW98iV/DZwMOLJ/F5D8vs=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=iJWubnZun/6JXwWwyKBES70kPEdA2PDRD+Gpj9FJDKg45hNtZXNimTAdIcoPupW7x Jl6CSkS1AlKd4qKs3sWJaOxAtibmuQQOmoTOmpy32nMKTQEWdiHExehV8C7Gr2LcVJ QJofNlsZfGvPJxGvcMgFGXYyVskrYZGy/iJWKYBA= X-QQ-mid: esmtpgz12t1780300133t483c7627 X-QQ-Originating-IP: AuBRQDf+rRPjo7dNJJXoqZJl3lWoOPaEZfnf7IeH34E= Received: from PEN1097 ( [1.202.39.170]) by bizesmtp.qq.com (ESMTP) with id ; Mon, 01 Jun 2026 15:48:51 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 1 X-BIZMAIL-ID: 15829220135844779042 EX-QQ-RecipientCnt: 7 From: Cheng Nie To: niecheng1@uniontech.com Cc: damon@lists.linux.dev, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, shuah@kernel.org, sj@kernel.org Subject: [PATCH v3 1/2] selftests/damon/_damon_sysfs.py: fix memcg_path assignment Date: Mon, 1 Jun 2026 15:48:39 +0800 Message-ID: <13D41964888D2DAC+20260601074839.208530-1-niecheng1@uniontech.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-QQ-SENDSIZE: 520 Feedback-ID: esmtpgz:uniontech.com:qybglogicsvrsz:qybglogicsvrsz4b-0 X-QQ-XMAILINFO: N+Pc87eOxrZlcuhRfieXgWE8Lf/Xf4ufFbYsZEzZIQ9CD4fKJVhLS2Bc BHU6ZQO3e33IFmdOFL9EOu9r06AF66/HfDFRoO7XqD716eOP9uOWU4PYVYrzpbyBZtQe+5A IEMfPTs2b3ojERoS+PwWTh/bIbbPn6+5z6FgJnQlbQ37ArTuvpT0wAgr2ZlZzetVeYKPAKs TjPhy0Fm/1JkOOmDfOvYf3BUzp5qv1auucyqnRtVBqE4NomrX9nVSNq4h9woIBBgCbNycTD HfS3rdoBAczzRRcwNlkRnDEruvDiQjq8BvTGjWVXi1gC3T396EEX0f/PG9DbBIAd9/UiHzc 6qikehy/UUua4hXqDe4z8QgknOWyuaxzRKjq2Nm97C3wLld2QvUYhMvERm/ozQfGy26/BBv m+zgK0RLQ+uyR9QcPLTcorH6b2m17gSIcOxJ1pWMxXoS5/5cbMcFm9Qpd34yfj0x9mpFnKR +Jqml2KdKXsonywl+ZMDqKCDmO1r781t1DIegrchdPErxucIoCTn6SgyhqeV9bDqwMO8J99 sTCUfWbJCb8BEHRJTmsUlTR8lbrp3vkOaBWwpQOfk8Yl/NaxLvODlS0/ynWnLxEiFTsUzb6 XbPlT4WpHwPSiDZEhbNvgtHZennKMv8E5lkMPbkFOKUegt4L01oghlrIxKk9CFwO9BPlhw0 vDmsXvdz26aOt0Ixa3wznszD/+shCvQYSMae2nztTlSMb4XVbQBlZ6/LyyY7r99C2vXe+7o BJh7QriLr9gDBPl/0tOgcWV1JUBqJ3HDTH3fR7OazMkSzBzp6EplwqgzCsz4xpN/tHnFBIV nMds/rHB3814o79t7/vbFMS5A5iDklHeQnXS1BbzApF2PwRT3xJAeRlgGOb39+8Tmwo+Mxb SrRfJEOza0DWZJIUZlq96QD2LyjEVqaEOr1r72xqnl7EUJyXxYbS7zYxDFknmg9EHNVr8Cr wF343etjbXwmY9wuApir/+onS/i/gjN0/d0ZSQamEMywTpH2xEgG4VP9BCZ+Ad2pzcBmGJz vyNzeCLrheQ3GvUBtL6GIZpvKXif0A16ndVWGaaLqYq79pnXYwXWsmKQEjsl7vS3vYUuhtj YZEdeSPgb+LjLlX6YJBzU/LBoHNqcl2bLPLWhSQuArTvrsicR+vlqoVJsvHdIv3IdSq6eek TaDC/2MelKeSP0PMmHGCQnDtF8Whitd/8S/8 X-QQ-XMRINFO: OWPUhxQsoeAVwkVaQIEGSKwwgKCxK/fD5g== X-QQ-RECHKSPAM: 0 Content-Type: text/plain; charset="utf-8" DamosFilter stores memcg_path for sysfs staging, but the constructor assigns it with a trailing comma and therefore turns it into a tuple. Fix the assignment so memcg_path is stored as the intended string. This makes memcg filter staging and follow-up validation use the written path correctly. Signed-off-by: Cheng Nie Reviewed-by: SeongJae Park --- tools/testing/selftests/damon/_damon_sysfs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/damon/_damon_sysfs.py b/tools/testing/= selftests/damon/_damon_sysfs.py index 8b12cc048440..43075892215e 100644 --- a/tools/testing/selftests/damon/_damon_sysfs.py +++ b/tools/testing/selftests/damon/_damon_sysfs.py @@ -271,7 +271,7 @@ class DamosFilter: self.type_ =3D type_ self.matching =3D matching self.allow =3D allow - self.memcg_path =3D memcg_path, + self.memcg_path =3D memcg_path self.addr_start =3D addr_start self.addr_end =3D addr_end self.target_idx =3D target_idx --=20 2.51.0 From nobody Mon Jun 8 06:38:56 2026 Received: from smtpbgau2.qq.com (smtpbgau2.qq.com [54.206.34.216]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 765513876B5; Mon, 1 Jun 2026 07:50:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.206.34.216 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780300208; cv=none; b=jtL29YeYdyEF305HkwyeG0YSdOrZqWsRHp7QueumPvKaUYGJvEiM+FbZ+MekvMf48gvWX8RJhs3/tP6a0QRNhvb63WDbzfrmtPAvicQ4tEXngi+bujyzpIWb3vKZ6JxFYR+MBeeidAl6uaQsXwtZt9M1KqF4zZpahXr3+qMYH48= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780300208; c=relaxed/simple; bh=Ui10wFMz45J23P1UzESKZoov93+QxhRiviRiKuErgFQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rOhccyCxeK/BhMcZv2YuMY5KTVhXNWDgTOc9NEHvNjvc39x5VELm5ad2fMtBv0SFiBzqDni524KvOsDYMW4pByMvDLS4m+DChISrUkReCpBcc5rIIWrpghdp9SNIV45tCePp0MmsgHiJ4TaADM9Xsvk6paR4E9LXj6qE5QAZlzM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com; spf=pass smtp.mailfrom=uniontech.com; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b=S8YTF3Y2; arc=none smtp.client-ip=54.206.34.216 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=uniontech.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b="S8YTF3Y2" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uniontech.com; s=onoh2408; t=1780300172; bh=iKyEwkDOqalQswQ1rmvg6AgbJ6uvYlJ03lXFXs4SB1M=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=S8YTF3Y2PivDAnKJlAYUN+ipvO7KPsXbLF83dHr9A2Y6jSuVnr89CiAG78TSxiE5r 7s0ZtHs9GiV/9MSP+BX6gEbzCzWp2qiKkuOQFPxR/6PdqznXneuS0SLhY8EIqt51Gh EV10apff4ivtgiFEsEp+MS1IORMf7TzWFJ7rZY3k= X-QQ-mid: zesmtpsz8t1780300166t38979b5a X-QQ-Originating-IP: JqpDz2mPNA+ZctIp3x7l0Rxyq9TU/u1A+AoOY1r1WpE= Received: from PEN1097 ( [1.202.39.170]) by bizesmtp.qq.com (ESMTP) with id ; Mon, 01 Jun 2026 15:49:24 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 1 X-BIZMAIL-ID: 9316155705307074460 EX-QQ-RecipientCnt: 7 From: Cheng Nie To: niecheng1@uniontech.com Cc: damon@lists.linux.dev, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, shuah@kernel.org, sj@kernel.org Subject: [PATCH v3 2/2] selftests/damon/sysfs.py: validate memcg_path staging readback Date: Mon, 1 Jun 2026 15:49:22 +0800 Message-ID: <9FAF3DC4DEDDA72F+20260601074922.209222-1-niecheng1@uniontech.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-QQ-SENDSIZE: 520 Feedback-ID: zesmtpsz:uniontech.com:qybglogicsvrsz:qybglogicsvrsz4b-0 X-QQ-XMAILINFO: M/5qe47GLMYOBizVx65eWdFouzicF4e+xCRO1KzC2oEf7Lw0p0hXIXkr p0uhtN/YY8D4m1g+cHhHTdBJjF0h52DtlovCrFPmrSzMavIoHge4Ik3SWtxJrTQ16DPAl2t kth3MK+ZuS/CSrzlTw76awjLUBvujLUWsQ2OGWMkjzSuWRxeOm5HF5jX2Fes2vHcUIpnwPg gwm8Qo6lAcbHach7rDWoIcjgrWvkMsPEpbUw0A49JRUAF8RSRS6ujKycgjuYSTG5/xTn7tr NNrVo1gJTRrvrSd8aj0Y/91sSEJ//Mer2bqUfBnIA57oGIMiwgUJJpUTyBkhGDFgCDss1AF TieRCsbwM3EForRowVGRvLtS6nM/zyWOcIdDXU/eQYnNVp2aJGNsQWfREUk3eoBLmSLzSI/ a2FygrRXXmUqHATw8cQgXj8BqnC+dx656NMSkblwXXU9sLUHgIWmboNz3NwdgxxBuWNe78y VNTijUojZyBimbJXj2ZGPAr8VerBBsBVH9kupTs4Uuc0ooquhGfqhSHUUGk1g8qboZIbcDq MbLu7rkRzdoz8vkp0YI7IFfU1EsADRj7pPJrZu1xPP4U01mKGZSdQgdJpIp8Pz6D7X35rTK SFsuD+h+aEAnF3t6VVhmQUImE8p9ZtIDlt+JKN2hEPvIUak3jlznaxVsjp4JnrTe6ZciIsk oZ+dClC9lPhTmGvfll2BMZToz4TLyNL9dNAxD2pBTQOnGzB50ReCF+9IvfApP8/bmbRi0A5 RuaVb54KgZrRcRXFvTtOKBx+3AnsaGNdsWJtCMc/JLeL0Uy3gjSq6lPo03X1S6O2iU1lrJM wNav9Q641HP84YCvvNpsLgYaRvHcBj5loZNHs12Mhjz7RGhrzfmZTdeaoP00qtUv5Gy6JL4 2TDuRuhECi1SvQ7HXdvRZmpjFfEG1PfDtZGB4aonj0S3sUhl8WgRZGrYRUBkANiqzgUVOU0 Gfe2yo7W2zv8hv8iH/rKAoQRfNg4q2yTEGzzpTzvSYSsdszs8osewkw1ViwS0QdUIxTqZBp lL5xz+X3O6987R3iW7xoc917x9p1g6oQMyaCQzRG3Gk7o0i6Y8DuZ72+Unr1VHWVz3W0v0G +7vz369VwLvq045jp1wvElUCS5sIDQyhYJiF78a/t0MwBSsMoxXv22cch6SbooCEVt2Igk4 Dlh2rY33GYDnIA5zSVgfe/uB2A== X-QQ-XMRINFO: Mp0Kj//9VHAxzExpfF+O8yhSrljjwrznVg== X-QQ-RECHKSPAM: 0 Content-Type: text/plain; charset="utf-8" Add a dedicated test at the end of main() that writes memcg_path to sysfs and checks the readback path. Configure the memcg filter before start(), verify staging readback without commit(), and ignore start() failures so the test does not depend on CONFIG_MEMCG or cgroup layout. Signed-off-by: Cheng Nie --- tools/testing/selftests/damon/sysfs.py | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tools/testing/selftests/damon/sysfs.py b/tools/testing/selftes= ts/damon/sysfs.py index aa03a1187489..7a17ab88361b 100755 --- a/tools/testing/selftests/damon/sysfs.py +++ b/tools/testing/selftests/damon/sysfs.py @@ -250,6 +250,38 @@ def assert_ctxs_committed(kdamonds): if ctx in ctxs_paused_for_dump: ctx.pause =3D False =20 +def test_memcg_filter_memcg_path_staging(): + global kdamonds + memcg_filter =3D _damon_sysfs.DamosFilter( + type_=3D'memcg', matching=3DTrue, allow=3DTrue, memcg_path=3D'= /') + kdamonds =3D _damon_sysfs.Kdamonds( + [_damon_sysfs.Kdamond( + contexts=3D[_damon_sysfs.DamonCtx( + targets=3D[_damon_sysfs.DamonTarget(pid=3D-1)], + schemes=3D[_damon_sysfs.Damos( + ops_filters=3D[memcg_filter])], + )])]) + kdamonds.start() + + shown, rd_err =3D _damon_sysfs.read_file( + os.path.join(memcg_filter.sysfs_dir(), 'memcg_path')) + if rd_err is not None: + print('memcg_path staging: sysfs read (%s)' % rd_err) + kdamonds.stop() + exit(1) + if shown.rstrip('\n') !=3D memcg_filter.memcg_path: + print('memcg_path staging: memcg_path readback ' + '(shown=3D%s, expected=3D%s)' % + (shown.rstrip('\n'), memcg_filter.memcg_path)) + kdamonds.stop() + exit(1) + + err =3D kdamonds.stop() + if err is not None: + print('memcg_path staging: kdamond stop (%s)' % err) + exit(1) + kdamonds =3D None + def main(): global kdamonds kdamonds =3D _damon_sysfs.Kdamonds( @@ -356,5 +388,7 @@ def main(): assert_ctxs_committed(kdamonds) kdamonds.stop() =20 + test_memcg_filter_memcg_path_staging() + if __name__ =3D=3D '__main__': main() --=20 2.51.0