We actually use nrexceptional for very little these days.  It's a constant
source of pain with the THP patches because we don't know how large a
shadow entry is, so either we have to ask the xarray how many indices
it covers, or store that information in the shadow entry (and reduce
the amount of other information in the shadow entry proportionally).
While tracking down the most recent case of "evict tells me I've got
the accounting wrong again", I wondered if it might not be simpler to
just remove it.  So here's a patch set to do just that.  I think each
of these patches is an improvement in isolation, but the combination of
all four is larger than the sum of its parts.

I'm running xfstests on this patchset right now.  If one of the DAX
people could try it out, that'd be fantastic.

Matthew Wilcox (Oracle) (4):
  mm: Introduce and use page_cache_empty
  mm: Stop accounting shadow entries
  dax: Account DAX entries as nrpages
  mm: Remove nrexceptional from inode

 fs/block_dev.c          |  2 +-
 fs/dax.c                |  8 ++++----
 fs/inode.c              |  2 +-
 include/linux/fs.h      |  2 --
 include/linux/pagemap.h |  5 +++++
 mm/filemap.c            | 15 ---------------
 mm/truncate.c           | 19 +++----------------
 mm/workingset.c         |  1 -
 8 files changed, 14 insertions(+), 40 deletions(-)

-- 
2.27.0
_______________________________________________
Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org
To unsubscribe send an email to linux-nvdimm-le...@lists.01.org

Reply via email to