lkml.org 
[lkml]   [2018]   [Sep]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH v3 0/4] fs/dcache: Track # of negative dentries
Date
 v2->v3:
- With confirmation that the dummy array in dentry_stat structure
was never a replacement of a previously used field, patch 3 is now
reverted back to use one of dummy field as the negative dentry count
instead of adding a new field.

v1->v2:
- Clarify what the new nr_dentry_negative per-cpu counter is tracking
and open-code the increment and decrement as suggested by Dave Chinner.
- Append the new nr_dentry_negative count as the 7th element of dentry-state
instead of replacing one of the dummy entries.
- Remove patch "fs/dcache: Make negative dentries easier to be
reclaimed" for now as I need more time to think about what
to do with it.
- Add 2 more patches to address issues found while reviewing the
dentry code.
- Add another patch to change the conditional branch of
nr_dentry_negative accounting to conditional move so as to reduce
the performance impact of the accounting code.

This patchset addresses 2 issues found in the dentry code and adds a
new nr_dentry_negative per-cpu counter to track the total number of
negative dentries in all the LRU lists.

Patch 1 fixes a bug in the accounting of nr_dentry_unused in
shrink_dcache_sb().

Patch 2 removes the ____cacheline_aligned_in_smp tag from super_block
LRU lists.

Patch 3 adds the new nr_dentry_negative per-cpu counter.

Patch 4 removes conditional branches in nr_dentry_negative accounting
code.

Various filesystem related tests were run and no statistically
significant changes in performance was observed.

Waiman Long (4):
fs/dcache: Fix incorrect nr_dentry_unused accounting in
shrink_dcache_sb()
fs: Don't need to put list_lru into its own cacheline
fs/dcache: Track & report number of negative dentries
fs/dcache: Eliminate branches in nr_dentry_negative accounting

Documentation/sysctl/fs.txt | 26 +++++++++++++---------
fs/dcache.c | 54 ++++++++++++++++++++++++++++++++++++++++-----
include/linux/dcache.h | 7 +++---
include/linux/fs.h | 9 ++++----
4 files changed, 74 insertions(+), 22 deletions(-)

--
1.8.3.1

\
 
 \ /
  Last update: 2018-09-11 21:19    [W:0.113 / U:0.560 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site