linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Yafang Shao <laoar.shao@gmail.com>
To: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	David Hildenbrand <david@redhat.com>,
	ziy@nvidia.com,  baolin.wang@linux.alibaba.com,
	Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
	 Liam Howlett <Liam.Howlett@oracle.com>,
	npache@redhat.com, ryan.roberts@arm.com,  dev.jain@arm.com,
	Johannes Weiner <hannes@cmpxchg.org>,
	usamaarif642@gmail.com,  gutierrez.asier@huawei-partners.com,
	Matthew Wilcox <willy@infradead.org>,
	 Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	 Andrii Nakryiko <andrii@kernel.org>,
	Amery Hung <ameryhung@gmail.com>,
	 David Rientjes <rientjes@google.com>,
	Jonathan Corbet <corbet@lwn.net>,
	21cnbao@gmail.com,  Shakeel Butt <shakeel.butt@linux.dev>,
	Tejun Heo <tj@kernel.org>,
	lance.yang@linux.dev,  Randy Dunlap <rdunlap@infradead.org>,
	bpf <bpf@vger.kernel.org>,  linux-mm <linux-mm@kvack.org>,
	"open list:DOCUMENTATION" <linux-doc@vger.kernel.org>,
	 LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v9 mm-new 03/11] mm: thp: add support for BPF based THP order selection
Date: Wed, 8 Oct 2025 12:25:18 +0800	[thread overview]
Message-ID: <CALOAHbBzS2RunZzEk8-rkU60M8jKEJ8FwiPgZqNeoXDy++L5hA@mail.gmail.com> (raw)
In-Reply-To: <CAADnVQKzW0wuN3NfgCSqQKVqAVRdKVEYMyJg+SpH0ENKH6fnMA@mail.gmail.com>

On Wed, Oct 8, 2025 at 12:10 PM Alexei Starovoitov
<alexei.starovoitov@gmail.com> wrote:
>
> On Tue, Oct 7, 2025 at 8:51 PM Yafang Shao <laoar.shao@gmail.com> wrote:
> >
> > On Wed, Oct 8, 2025 at 11:25 AM Alexei Starovoitov
> > <alexei.starovoitov@gmail.com> wrote:
> > >
> > > On Tue, Oct 7, 2025 at 1:47 AM Yafang Shao <laoar.shao@gmail.com> wrote:
> > > > has shown that multiple attachments often introduce conflicts. This is
> > > > precisely why system administrators prefer to manage BPF programs with
> > > > a single manager—to avoid undefined behaviors from competing programs.
> > >
> > > I don't believe this a single bit.
> >
> > You should spend some time seeing how users are actually applying BPF
> > in practice. Some information for you :
> >
> > https://github.com/bpfman/bpfman
> > https://github.com/DataDog/ebpf-manager
> > https://github.com/ccfos/huatuo
>
> By seeing the above you learned the wrong lesson.
> These orchestrators and many others were created because
> we made mistakes in the kernel by not scoping the progs enough.
> XDP is a prime example. It allows one program per netdev.
> This was a massive mistake which we're still trying to fix.

Since we don't use XDP in production, I can't comment on it. However,
for our multi-attachable cgroup BPF programs, a key issue arises: if a
program has permission to attach to one cgroup, it can attach to any
cgroup. While scoping enables attachment to individual cgroups, it
does not enforce isolation. This means we must still check for
conflicts between programs, which begs the question: what is the
functional purpose of this scoping mechanism?

>
> > > hid-bpf initially went with fmod_ret approach, deleted the whole thing
> > > and redesigned it with _scoped_ struct-ops.
> >
> > I see little value in embedding a bpf_thp_struct_ops into the
> > task_struct. The benefits don't appear to justify the added
> > complexity.
>
> huh? where did I say that struct-ops should be embedded in task_struct ?

Given that, what would you propose?
My position is that the only valid scope for bpf-thp is at the level
of specific THP modes like madvise and always. This patch correctly
implements that precise design.

--
Regards
Yafang


  reply	other threads:[~2025-10-08  4:25 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-30  5:58 [PATCH v9 mm-new 00/11] mm, bpf: " Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 01/11] mm: thp: remove vm_flags parameter from khugepaged_enter_vma() Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 02/11] mm: thp: remove vm_flags parameter from thp_vma_allowable_order() Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 03/11] mm: thp: add support for BPF based THP order selection Yafang Shao
2025-10-03  2:18   ` Alexei Starovoitov
2025-10-07  8:47     ` Yafang Shao
2025-10-08  3:25       ` Alexei Starovoitov
2025-10-08  3:50         ` Yafang Shao
2025-10-08  4:10           ` Alexei Starovoitov
2025-10-08  4:25             ` Yafang Shao [this message]
2025-10-08  4:39               ` Alexei Starovoitov
2025-10-08  6:02                 ` Yafang Shao
2025-10-08  8:08     ` David Hildenbrand
2025-10-08  8:18       ` Yafang Shao
2025-10-08  8:28         ` David Hildenbrand
2025-10-08  9:04           ` Yafang Shao
2025-10-08 11:27             ` Zi Yan
2025-10-08 12:06               ` Yafang Shao
2025-10-08 12:49                 ` Gutierrez Asier
2025-10-08 12:07               ` David Hildenbrand
2025-10-08 13:11                 ` Yafang Shao
2025-10-09  9:19                   ` David Hildenbrand
2025-10-09  9:59                     ` Yafang Shao
2025-10-10  7:54                       ` David Hildenbrand
2025-10-11  2:13                         ` Yafang Shao
2025-10-13 12:41                           ` David Hildenbrand
2025-10-13 13:07                             ` Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 04/11] mm: thp: decouple THP allocation between swap and page fault paths Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 05/11] mm: thp: enable THP allocation exclusively through khugepaged Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 06/11] bpf: mark mm->owner as __safe_rcu_or_null Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 07/11] bpf: mark vma->vm_mm as __safe_trusted_or_null Yafang Shao
2025-10-06 21:06   ` Andrii Nakryiko
2025-10-07  9:05     ` Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 08/11] selftests/bpf: add a simple BPF based THP policy Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 09/11] selftests/bpf: add test case to update " Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 10/11] selftests/bpf: add test cases for invalid thp_adjust usage Yafang Shao
2025-09-30  5:58 ` [PATCH v9 mm-new 11/11] Documentation: add BPF-based THP policy management Yafang Shao

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=CALOAHbBzS2RunZzEk8-rkU60M8jKEJ8FwiPgZqNeoXDy++L5hA@mail.gmail.com \
    --to=laoar.shao@gmail.com \
    --cc=21cnbao@gmail.com \
    --cc=Liam.Howlett@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexei.starovoitov@gmail.com \
    --cc=ameryhung@gmail.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=bpf@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=daniel@iogearbox.net \
    --cc=david@redhat.com \
    --cc=dev.jain@arm.com \
    --cc=gutierrez.asier@huawei-partners.com \
    --cc=hannes@cmpxchg.org \
    --cc=lance.yang@linux.dev \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=npache@redhat.com \
    --cc=rdunlap@infradead.org \
    --cc=rientjes@google.com \
    --cc=ryan.roberts@arm.com \
    --cc=shakeel.butt@linux.dev \
    --cc=tj@kernel.org \
    --cc=usamaarif642@gmail.com \
    --cc=willy@infradead.org \
    --cc=ziy@nvidia.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