public inbox for linux-mm@kvack.org
 help / color / mirror / Atom feed
From: Roman Gushchin <roman.gushchin@linux.dev>
To: "David Hildenbrand (Arm)" <david@kernel.org>
Cc: bpf <bpf@vger.kernel.org>,  linux-mm <linux-mm@kvack.org>,
	 Vlastimil Babka <vbabka@kernel.org>,
	 Shakeel Butt <shakeel.butt@linux.dev>,
	 Andrew Morton <akpm@linux-foundation.org>,
	 lsf-pc <lsf-pc@lists.linux-foundation.org>,
	 Daniel Borkmann <daniel@iogearbox.net>
Subject: Re: [LSF/MM/BPF TOPIC] Using BPF in MM
Date: Tue, 28 Apr 2026 16:35:52 +0000	[thread overview]
Message-ID: <7ia4h5ov6o0n.fsf@castle.c.googlers.com> (raw)
In-Reply-To: <014f3c0a-7c6f-4f64-95cd-b7b69d804880@kernel.org> (David Hildenbrand's message of "Tue, 28 Apr 2026 10:12:16 +0200")

"David Hildenbrand (Arm)" <david@kernel.org> writes:

> On 4/28/26 01:57, Roman Gushchin wrote:
>> [LSF/MM/BPF TOPIC] Using BPF in MM
>> ----------------------------------
>> 
>> Over the last decade, BPF successfully penetrated into multiple kernel
>> subsystems: started as a feature to filter (out) networking packets,
>> it captured its place in networking, tracing, security, HID drivers,
>> and scheduling. Memory management is a logical next step, and recently
>> we saw a growing number of proposals in this area.
>> 
>> In (approximately) historical order:
>>   - BPF OOM
>>   - BPF-based memcg stats access (landed)
>>   - BPF-based NUMA balancing
>>   - eBPF-mm
>>   - cache_ext (BPF Page Cache)
>>   - memcg_ext
>
> There was also the BPF THP control.

Thanks, missed that.

>
>> 
>> There are some obvious target which haven't been covered yet:
>>   - BPF-driven readahead control
>>   - BPF-driven KSM
>>   - BPF-driven guest memory control
>> 
>> Despite a large number of suggestions only a relatively small feature
>> (query memcg statistics from BPF) made it to upstream.
>> 
>> It looks like using BPF in the MM subsystem comes with a set of somewhat
>> unique challenges and questions to be answered.
>
> [...]
>
> I think you are missing one of the most important points: Unclear ABI stability
> guarantees.

Totally agree, it's just not specific to mm and is not very new.
Arguments about the ABI stability are almost as old as BPF itself, e.g.
a quick search gave me a lwn article from 2019:
https://lwn.net/Articles/787856/ .

>
> One the one hand, we are told that there are no ABI stability guarantees, and
> that we can change hooks (add/remove/modify) any time we want.
>
> On the other hand, as soon as there is some ebpf program out there that we
> break, you can rest assured that there will be trouble.
>
> In the area of THP, where we don't even know which hooks we will need long term
> and how they would look like, that was one of the reasons why the BPF THP
> control was rejected.

Agree. And in my mind it's also related to safety/performance tradeoff:
if we use very generic hooks/interfaces, it's easier to keep them stable
and meaningful, but then it's hard to guarantee safety without
performance sacrifices. Or we use very targeted policy hooks, then it's
much easier to make them safe and performant, but they may become
obsolete very quickly.


  reply	other threads:[~2026-04-28 16:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-27 23:57 [LSF/MM/BPF TOPIC] Using BPF in MM Roman Gushchin
2026-04-28  8:12 ` David Hildenbrand (Arm)
2026-04-28 16:35   ` Roman Gushchin [this message]
2026-05-03 17:25   ` Vernon Yang
2026-04-29  2:43 ` 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=7ia4h5ov6o0n.fsf@castle.c.googlers.com \
    --to=roman.gushchin@linux.dev \
    --cc=akpm@linux-foundation.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=david@kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    --cc=shakeel.butt@linux.dev \
    --cc=vbabka@kernel.org \
    /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