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 7DD4DD0EE2A for ; Fri, 11 Oct 2024 19:44:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D0B356B00B1; Fri, 11 Oct 2024 15:43:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CBBCD6B00B2; Fri, 11 Oct 2024 15:43:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B82FB6B00B4; Fri, 11 Oct 2024 15:43:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 980296B00B1 for ; Fri, 11 Oct 2024 15:43:59 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id E31BF1A08ED for ; Fri, 11 Oct 2024 19:43:50 +0000 (UTC) X-FDA: 82662346956.28.B5D398F Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by imf01.hostedemail.com (Postfix) with ESMTP id 7C5504001F for ; Fri, 11 Oct 2024 19:43:54 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LjjuPl+T; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf01.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.44 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1728675808; a=rsa-sha256; cv=none; b=BJs9VADmL7N4onysQtReGsQUkJKwvkrir9vWja4trzf8rmqvbjOeexD319dF+SF0kkxooz B8UoQQOSDAOXXSlbFE6+3HzslkzoKkQnW+HPWHGnfvTY+OboTXqjyuMDSJBHSbq5HcyBd0 MvCI0Z770sa5159EjNcQfd3UfPf/pq8= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LjjuPl+T; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf01.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.44 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1728675808; 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=hTT+DOTqu8ZpwPwDJCQEdCoOuIhh/yskraPW4+c1ErE=; b=xeC47klTbxWkkdYD5+L/nInVYgNh4Htiiw/clDKIbAyAMamq+Pr77in6HGFzqEkojyenLd QlFzxdEJvoX37Coq/gEDeLqihdKaCxntfULHNFcfZ4upGXxUwKY//Xt6v8Iwgn0j0rsiPv FXkwYe6FEcUt8q/2fxE2lj6Si6IalfM= Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2e28b75dbd6so1823568a91.0 for ; Fri, 11 Oct 2024 12:43:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728675836; x=1729280636; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=hTT+DOTqu8ZpwPwDJCQEdCoOuIhh/yskraPW4+c1ErE=; b=LjjuPl+TBF6f4O8aOv/JWoU60QGDOn7M+6dJfHNtYJSbG/ifQP9umaTEIBQTE3rGxz k9U+QbiQ8RjyzYtjJR9WZiYoVbPlNajKb8F+N0ZnQJx82p/3kruV+LBj1fTsXhJP4KJX 9j4FC1Fcb3ot43hAThYU+Z01HDnyInpTww3Q3dvviaLeR2Wido4n2uSgqm90qDa5qlAK SKmn9r6T3HqBoGXDPtDhQI3T11d65g+2gu1Sm9VtLv9RoWk99wNPgryord2uem2UlThw b+sUzoSllf9f76xYldphaRdO+cNn7X9Exeb9apx5V0+iC9HXSrgEXC3ObGioFP6Ezo55 Znew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728675836; x=1729280636; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hTT+DOTqu8ZpwPwDJCQEdCoOuIhh/yskraPW4+c1ErE=; b=ZZ93p1DzrhvcuW7JkcKE1fgWlxxX31c7M2sLnn4Xj9Co1wrMx71qUWiQxixCGExiom oMSXC2YKBNoW1hJJC8HCYfUTy8Eg94UUvMRsd/CDTmg//AO7bGVQyoXSBl9SAyg8+ilh d5guR9wur0XOvoOMjOHHjKfEyBQ1FS1GvasKcOKV1oV1Er7cc9C6q9LynmgaKjt1EGpG dZfVGQQNDD+8nJsLagvtIylEyZk/VGtrwW3co1Rlwl/lyAjn9CRmTA5IkuzLGnkfWTuT M44MpxuhvZJa7i53wKIcNLM7asRPO3xR6A290Gh/a1TxYZ26QB7jbgzZ36+CmrA6K+x/ o+OQ== X-Forwarded-Encrypted: i=1; AJvYcCWQHWRVjI2lGP0cQpDZihoqkpok6MLnWPK0YeIsAmz2uVcnKtxZxxxXIK9yWbymFWsy/MMuCCKSKg==@kvack.org X-Gm-Message-State: AOJu0YyP99USn0PHaNj7fj0WIzEICKO1DM0BF4OhrggPyjpBTaZS9FXg mantbRwKCfUDj5lKY1XQBcgMT6TB8joDLpQsqjY/JlPddd9FDOg20SMtD8SxvzQEZyvZZCiE1Vt N0T/gxIMfO0w1h7H3CeclrRp5jBw= X-Google-Smtp-Source: AGHT+IEEv+MYggNLv4dgRwOMMk7eOu9TZVK3vVYd3IVx0iPOkfChiKEqALrlX93LSx/Z1Lma33setQhb2squsITEcnE= X-Received: by 2002:a17:90a:2f21:b0:2e2:8299:2701 with SMTP id 98e67ed59e1d1-2e3152eb849mr719284a91.20.1728675835960; Fri, 11 Oct 2024 12:43:55 -0700 (PDT) MIME-Version: 1.0 References: <20241010232505.1339892-1-namhyung@kernel.org> <20241010232505.1339892-2-namhyung@kernel.org> In-Reply-To: From: Andrii Nakryiko Date: Fri, 11 Oct 2024 12:43:44 -0700 Message-ID: Subject: Re: [PATCH v5 bpf-next 1/3] bpf: Add kmem_cache iterator To: Alexei Starovoitov Cc: Namhyung Kim , 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 , Andrew Morton , Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm , Arnaldo Carvalho de Melo , Kees Cook , "Paul E. McKenney" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: 7oa14hcw3rw9uhr7jqetghgpc48g31rx X-Rspamd-Queue-Id: 7C5504001F X-Rspamd-Server: rspam02 X-HE-Tag: 1728675834-347374 X-HE-Meta: U2FsdGVkX18nE/0Er1Gepaxq8Niqa/GEEtzjgZzgt/ETyEptKhoQUt89Z/XCr6aX83f+BLMNG+O/5eLSu6dzzlgVCLO7jfPJ68dkI0beXOnJacfcyj46V+q1y/B4YxfbmjjUiS/L7J4OeCcQIFyCI5oJksRTM/kVlwWbxaT45zX7Z73UcaIzqOIl/fSjvCPj+5v7rtkuunVrD3v4eeRpWslhJMSgeWdSugKdANhYM2UgzDKWLl2WLr7xk/1WAuj1cACbhADN4fdLLAUhX7n7bZod+LklvzFi0dtj9ydp1OOHh1Vm8OT6HFjiEVjAHiA8rz6ttQoM6DPYEBO5sMp4XRDb0MSAAXg38r1SAkox+KdoOywAZjYIAdhGm3Y7FQGipXE3/yMuaEqErJM44v3Slsznblq0UwkhW3VZWAi8GP0Cuu8C9lKdM7ZnBG5c0F0EAT7RuaPTReWRnQVgL4maYhifINXvTlNtD+jxApRDF36qkC74vwYHfB7F2z2/Jug5WwzwEFtgvxjTR27j7+NXH0RUs4CSLkRxFLbBxsx0g1K92xHOI58wicNQs618xGIzSng4Qik8qEFewK7/CwOgKtjCauvznKFgeEzhcQehpZedIBuvBvnn8UR32S5DmTyZEvA8qXroN2cBljjVOkapxev5sMwHMEslBgDHYx0do36h6OeAIX87esjbHSTjxDQNSxqE5GvspOZWeYh69jX+qFMrQmvtp5llvJyBWkpIKg2Y4QPnsSPoqw+eVHgqido7xSt2Nu7D8DuGnklhkkfXGEfyH0f0zcwcc7If4r+EHGErAwBRdiYHfcdBO+m4csLObTNotAhwg/WzL/EN0ZmnsdPfldHI7kzcmA3MIa6rqvqzM+nczTd30eNkwSzKtUX3pQ/nlzlrwG43G06NCvwc8xNCYZofrjWkPfiF3xR9wtciT9L+WhKflk1PDSQtKaGQxrwC97qyGK7M9A/bw4/ djz54XqU x/f54ijDUC7KJWGxttG1NynPikzf5P4trETy4Xf5gMpZ2vmH7XRDL9prTEuWDLegY2WRPLQ3KrCi0cIcK1hFHfu7qZCQZRlxxB+BRjAY1cksaTAk0QsueIlH8gYMA0hRwJYgCtBE+dHplYHCYNghZECvQ+lm8762a/NUVFL58I0u49o3yfPOAUKsEuzsX+21v3xr9hMLXjoXVhfYue1t+Lx8RXhnDBNud26krhavVaZ2lyNJ3aAwBKrlsZE+QN73LiRn1uW4GrfDYWyWegh1TAYWZFB2gmKGDlq2kSCN3nML32YJnMbA/E7JSnfypZ/KvLssCsJ5dduD5t8eTJ5roKCdxuwl1/ZiuIFJ/o85oPqZVwAAwMtSHptnl7uNKmZXQ5S0wPvgQE+VdmWCKTFP0+VI9LtMGeltnGy5P53kW33Akftljdr9hV3flwAzdP8DbrwLn35dXrbj5Quukn0On5MVI7s4gh1HBk87ulonwncPFavYKBjQKipoIk+L+EZFULZ4WaAZu6c1reP8= 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 Fri, Oct 11, 2024 at 12:41=E2=80=AFPM Andrii Nakryiko wrote: > > On Fri, Oct 11, 2024 at 11:44=E2=80=AFAM Alexei Starovoitov > wrote: > > > > On Thu, Oct 10, 2024 at 4:25=E2=80=AFPM Namhyung Kim wrote: > > > > > > +struct bpf_iter__kmem_cache { > > > + __bpf_md_ptr(struct bpf_iter_meta *, meta); > > > + __bpf_md_ptr(struct kmem_cache *, s); > > > +}; BTW, do we want/need to define an open-coded iterator version of this, so that this iteration can be done from other BPF programs? Seems like it has to be a sleepable BPF program, but that's probably fine? > > > > Just noticed this. > > Not your fault. You're copy pasting from bpf_iter__*. > > It looks like tech debt. > > > > Andrii, Song, > > > > do you remember why all iters are using this? > > I don't *know*, but I suspect we are doing this because of 32-bit host > architecture. BPF-side is always 64-bit, so to make memory layout > inside the kernel and in BPF programs compatible we have to do this > for pointers, no? > > > __bpf_md_ptr() wrap was necessary in uapi/bpf.h, > > but this is kernel iters that go into vmlinux.h > > It should be fine to remove them all and > > progs wouldn't need to do the ugly dance of: > > > > #define bpf_iter__ksym bpf_iter__ksym___not_used > > #include "vmlinux.h" > > #undef bpf_iter__ksym > > I don't think __bpf_md_ptr is why we are doing this ___not_used dance. > At some point we probably didn't want to rely on having the very > latest vmlinux.h available in BPF selftests, so we chose to define > local versions of all relevant context types. > > I think we can drop all that ___not_used dance regardless (and remove > local definitions in progs/bpf_iter.h).