• Al Viro's avatar
    kill DCACHE_MAY_FREE · 1b327b5a
    Al Viro authored
    With the new ordering in __dentry_kill() it has become redundant -
    it's set if and only if both DCACHE_DENTRY_KILLED and DCACHE_SHRINK_LIST
    are set.
    
    We set it in __dentry_kill(), after having set DCACHE_DENTRY_KILLED
    with the only condition being that DCACHE_SHRINK_LIST is there;
    all of that is done without dropping ->d_lock and the only place
    that checks that flag (shrink_dentry_list()) does so under ->d_lock,
    after having found the victim on its shrink list.  Since DCACHE_SHRINK_LIST
    is set only when placing dentry into shrink list and removed only by
    shrink_dentry_list() itself, a check for DCACHE_DENTRY_KILLED in
    there would be equivalent to check for DCACHE_MAY_FREE.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    1b327b5a
dcache.c 83.7 KB