On Thu, May 09, 2024 at 10:36:35AM -0400, Johannes Weiner wrote: > On Thu, May 09, 2024 at 10:22:10AM -0400, Johannes Weiner wrote: > > On Wed, May 08, 2024 at 08:41:29PM -0700, Roman Gushchin wrote: > > > 3) Is it better to use a new include/linux/memcontrol-v1.h instead of > > > mm/internal.h? Or mm/memcontrol-v1.h. > > > > mm/memcontrol-v1.h sounds good to me. > > Argh, there is a folio_memcg_lock() callsite in fs/buffer.c. I suppose > include/linux/memcontrol-v1.h makes the most sense then. You mean put everything into include/linux/memcontrol-v1.h? And functions from memcontrol.c by memcontrol-v1.c into include/linux/memcontrol.h? It's an option I considered it but the downside is that we're "leaking" a lot of internal definitions into the outside world, because memcontrol.h is included everywhere. So maybe mm/memcontrol-v1.h for definitions shared between v1 and v2 and keep exported functions in include/linux/memcontrol.h? There are only few of them. Thanks!