From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E57F4D0BB6A for ; Thu, 24 Oct 2024 07:44:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6B1EB6B0083; Thu, 24 Oct 2024 03:44:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 639AE6B0085; Thu, 24 Oct 2024 03:44:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4DA7C6B0088; Thu, 24 Oct 2024 03:44:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 2D8C76B0083 for ; Thu, 24 Oct 2024 03:44:31 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 7DFA7A0F5D for ; Thu, 24 Oct 2024 07:43:57 +0000 (UTC) X-FDA: 82707707418.07.A5A71EC Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf30.hostedemail.com (Postfix) with ESMTP id 9823780008 for ; Thu, 24 Oct 2024 07:43:54 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=F4XOFNrU; spf=pass (imf30.hostedemail.com: domain of namhyung@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=namhyung@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729755817; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=shDSTPU6X+XOxJX1FHRw8Ouzv1ZX63Aw7PBdXmulywM=; b=57Gb/PcTdd5MZvuZciRpEIWkA08gsENC6KU0o7E807PUqDoy5PwvFx3wpr4fCDbOqYo1nL OsjcDU2H/EyU4w8Ci/bIyUoqy8h4vBD7WFzHk5OIgO+trb40ZBFoTqLSkx4/KwvZtHlFPr 6W9AHJ3fK/zkmySo3opoJJ+6Ls5HE/4= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=F4XOFNrU; spf=pass (imf30.hostedemail.com: domain of namhyung@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=namhyung@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729755817; a=rsa-sha256; cv=none; b=QBqCHen9b1p7HMaFLjkrs8OMBksstBoVEXFqPIUt2PdImNhgfcOOXQww5BEqkrIogzufk7 s0XcfWXFpRuXZS0/02FjZRepgSGvEe6z2QgMeoGfniQvOc/QZvsUQXBPaxkP3eB1OnNZgS YOKjZFdswb9H3ja+JwOWEJfQ5HNiJGs= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 22F25A451BE; Thu, 24 Oct 2024 07:44:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1E8BAC4CEE5; Thu, 24 Oct 2024 07:44:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1729755868; bh=zylwN3ythosBgJwCjjnHYB5VcHWDkTD5jqrqiuJzVLw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=F4XOFNrU1T3xszMOzuwJGlqqbGnrssI8S8Uh061izZujPIYSl65IzbFbZ9bEGiWS6 ju2otyQ0OStQHyCJyJp1hBvmaa04H4soC6kEzf5IkbdHIE/YFpWBetSrdBBD48PS6M LUQU4UQdSKI2WN6Hweo7V/75zOTs6ceClClF036MWf/mNF9cvonEQVNAxGD5pZq6cm b4tennYpK8Ks5Z2W55o97e/JGoYcn0rXX1UAK2S0rCofmj+6dA+k+iptc5VJjweNcn kgZo2evHKpkKdVhWO+G/hoXgpf2KAn8lvk1wuYwf2M1g65e/fa7ph0COTR2R6G+ddI Wqy2szMQ4JhjA== Date: Thu, 24 Oct 2024 00:44:25 -0700 From: Namhyung Kim To: Andrii Nakryiko Cc: Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Eduard Zingerman , Song Liu , Yonghong Song , John Fastabend , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , LKML , bpf@vger.kernel.org, Andrew Morton , Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm@kvack.org, Arnaldo Carvalho de Melo , Kees Cook Subject: Re: [PATCH bpf-next 2/2] selftests/bpf: Add a test for open coded kmem_cache iter Message-ID: References: <20241017080604.541872-1-namhyung@kernel.org> <20241017080604.541872-2-namhyung@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspam-User: X-Stat-Signature: 66o84fff9mwnduxh93c9ewkjqzmkw4w6 X-Rspamd-Queue-Id: 9823780008 X-Rspamd-Server: rspam11 X-HE-Tag: 1729755834-808222 X-HE-Meta: U2FsdGVkX1/wVnJalN0hyc1LTfMeNdOqMV16HlvV0MWJSPc6B/GgMT+hNcKJ1trRojurCgHASpvMK9zxAOEJ5HWOmzmdXQQyCWHcrLt7a6zHJgfUqQK4CFAmqIt7ukVcA7dqrqBXu2maruW9qOVUmEl7TCA6Xq4LquYl1c1QaCRq8fLjC6QX8l1AYrgpKWLHTnYMhEHVqqSYka8Nc6oX5Uum7s5TcyKtrFBvNYMMPl/T/jRJ+QA5MTk7IF9f/m7Lo14HOJvoMDy5jzkXcFw3/mVoSXIT5NHh+SGNwvShfnYTSFKOYpC+HUPJFTX6WsG95sMLa2b0bAHPdw/PUm03y3q5eQVJnU9yeo+DtHeAHRQ3CruoC0Ytu5GnqcVFNCRyGLzmc4AKMZXGws86r1Vb8rlMRQyWMKds9SbSsHwb8qssW8y0n++5A/Baw8Afqkb/85LLUQIaao7+CzP6QNQp4DNRKskQ5VUGHq+Re3MDYLdj5tsWvpW47jeP3Tf9d9K+EJtMWRX8jlDcuanwtjAN2ssBDFJ2OmMEpG2wMTM+9/yGxugpQAcwbYyYqW99rzHr0YIkwVwfJi7UIaRGGolA/8Ocys/t+PIfVb2gXwAknxQP35ll6iFVk2ym+17jRTBXdIXhKNxMbUTu4bDpIAcagDonU4pNBSlZ6/kMaYm6r94QrUWuM9W2YAaJJaTpZFYf25CKjLy9+1QjPF9FjYtogf7sp2RxBLpFBAEZTwmbpgc87d+08BvAeBOQSHr9oXIEucz0ycYXooq+x/gPtIlrnpaiZi2TX6PaJkFKwVX1fUWAahArYnl31jj5XDB1LI7C0lWcjr0ocpu4kk5NFjTwBLmLoRKwK++H9W7gHNYxw52FcyGay1lvlJv6WcWmoOe/Hs9R+pXh/zczY2/F3T8evWS/Oxs2YlBi901qJuvshdEm31q/EvpQCxFSHwPhbY6DWn4GCFqhuktd5Vp0tza 7Uen2AFP XECuGZ2RZ1q856jGeeH23m0u4RhIeXo7NIgmxQQoDk1oGu8BFP6T8ipS7d2WNOTwZLSzXDgeaFs1zsh9xlX7svQk7x2a/PnayzvgTsYdq3XEBlHrVVxPoP0AF1HHJdY4aIRsAKIUW18+n72LkhulMMS89QpI61UkVIdYl/z1G8ZrzP2BHxK0riSbrckDZvsALx8ytQRUpt9J3ZW3P+vUZMEEJZpM8Mkx8MBmTbNm6O+qZSME8ov3TZNcxfJ/vt1uW8AnE2UQpbWTzotHL1rLyEGQFYXfcCvDTDOMBvYAXFgvr5riqh2+iHGtl4qDNzYmCoRR0+gP8bLy1+IQJ4d7SMRqXhqyyhs/IrSLDRaQ1mAsdNXP6+dy8MjLWt7Ihe+9Ou37a27u+6iNRRQHyH9ihTM5iDsWSXgh1TT1J X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Mon, Oct 21, 2024 at 04:36:49PM -0700, Andrii Nakryiko wrote: > On Thu, Oct 17, 2024 at 1:06 AM Namhyung Kim wrote: > > > > The new subtest is attached to sleepable fentry of syncfs() syscall. > > It iterates the kmem_cache using bpf_for_each loop and count the number > > of entries. Finally it checks it with the number of entries from the > > regular iterator. > > > > $ ./vmtest.sh -- ./test_progs -t kmem_cache_iter > > ... > > #130/1 kmem_cache_iter/check_task_struct:OK > > #130/2 kmem_cache_iter/check_slabinfo:OK > > #130/3 kmem_cache_iter/open_coded_iter:OK > > #130 kmem_cache_iter:OK > > Summary: 1/3 PASSED, 0 SKIPPED, 0 FAILED > > > > Also simplify the code by using attach routine of the skeleton. > > > > Signed-off-by: Namhyung Kim > > --- > > .../testing/selftests/bpf/bpf_experimental.h | 6 ++++ > > .../bpf/prog_tests/kmem_cache_iter.c | 28 +++++++++++-------- > > .../selftests/bpf/progs/kmem_cache_iter.c | 24 ++++++++++++++++ > > 3 files changed, 46 insertions(+), 12 deletions(-) > > > > diff --git a/tools/testing/selftests/bpf/bpf_experimental.h b/tools/testing/selftests/bpf/bpf_experimental.h > > index b0668f29f7b394eb..cd8ecd39c3f3c68d 100644 > > --- a/tools/testing/selftests/bpf/bpf_experimental.h > > +++ b/tools/testing/selftests/bpf/bpf_experimental.h > > @@ -582,4 +582,10 @@ extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, > > unsigned int flags__k, void *aux__ign) __ksym; > > #define bpf_wq_set_callback(timer, cb, flags) \ > > bpf_wq_set_callback_impl(timer, cb, flags, NULL) > > + > > +struct bpf_iter_kmem_cache; > > +extern int bpf_iter_kmem_cache_new(struct bpf_iter_kmem_cache *it) __weak __ksym; > > +extern struct kmem_cache *bpf_iter_kmem_cache_next(struct bpf_iter_kmem_cache *it) __weak __ksym; > > +extern void bpf_iter_kmem_cache_destroy(struct bpf_iter_kmem_cache *it) __weak __ksym; > > + > > we should be getting this from vmlinux.h nowadays, so this is probably > unnecessary I got some build errors without this. I'll leave it for v2. Thanks, Namhyung