Re: [RFC] Merge PG_private_2 and PG_mappedtodisk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 14.08.24 19:36, Matthew Wilcox wrote:
I believe these two flags have entirely disjoint uses and there will
be no confusion in amalgamating them.

Anonymous memory (re)uses mappedtodisk for anon_exclusive.
Anonymous memory does not use PG_private_2.

Also not when they are in the swapcache, right?


$ git grep -El '(folio.*mappedtodisk)|PageMappedToDisk'
fs/buffer.c
fs/ext4/readpage.c
fs/f2fs/data.c
fs/f2fs/file.c
fs/fuse/dev.c
fs/mpage.c
fs/nilfs2/file.c
fs/nilfs2/page.c
include/trace/events/pagemap.h
mm/memory.c
mm/migrate.c
mm/truncate.c

$ git grep -El '(folio.*private_2)|PagePrivate2'
fs/btrfs/ctree.h
fs/ceph/addr.c
fs/netfs/buffered_read.c
fs/netfs/fscache_io.c
fs/netfs/io.c
fs/nfs/file.c
fs/nfs/fscache.h
fs/nfs/write.c
include/linux/netfs.h
include/linux/pagemap.h
mm/filemap.c
mm/migrate.c

The one thing that's going to stand in the way of this is that various
parts of the VFS treat private_2 as a "wait for this bit to be clear",
due to its use in fscache (which is going away).

So my approach here is going to be:

  - Rename mappedtodisk to be PG_owner_priv_2 (add appropriate aliases)
  - Switch btrfs to use owner_priv_2 instead of private_2
  - Wait for the fscache use of private2 to finish its deprecation cycle
  - Remove private_2 entirely

Sound good?

Yes, one step into the right direction.

--
Cheers,

David / dhildenb





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux