]> git.baikalelectronics.ru Git - kernel.git/commit
vfs: make the dentry cache use the lockref infrastructure
authorWaiman Long <Waiman.Long@hp.com>
Thu, 29 Aug 2013 01:24:59 +0000 (18:24 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 29 Aug 2013 01:24:59 +0000 (18:24 -0700)
commit2cce27e7c1bcd620a4ff5098552794e7dfef0464
treee07a431ce2f83162ea0643398a75d8ab5806b895
parent2d0e49bd925dcaea906b3fa30ec6a3dd2726834f
vfs: make the dentry cache use the lockref infrastructure

This just replaces the dentry count/lock combination with the lockref
structure that contains both a count and a spinlock, and does the
mechanical conversion to use the lockref infrastructure.

There are no semantic changes here, it's purely syntactic.  The
reference lockref implementation uses the spinlock exactly the same way
that the old dcache code did, and the bulk of this patch is just
expanding the internal "d_count" use in the dcache code to use
"d_lockref.count" instead.

This is purely preparation for the real change to make the reference
count updates be lockless during the 3.12 merge window.

[ As with the previous commit, this is a rewritten version of a concept
  originally from Waiman, so credit goes to him, blame for any errors
  goes to me.

  Waiman's patch had some semantic differences for taking advantage of
  the lockless update in dget_parent(), while this patch is
  intentionally a pure search-and-replace change with no semantic
  changes.     - Linus ]

Signed-off-by: Waiman Long <Waiman.Long@hp.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/dcache.c
fs/namei.c
include/linux/dcache.h