From: Eric Dumazet <[EMAIL PROTECTED]>
Date: Thu, 27 Nov 2008 00:31:40 +0100

> Sockets, pipes and anonymous fds have interesting properties.
 ...
> This patch defines a new DCACHE_SPECIAL flag, to mark a dentry as
> a special one (for sockets, pipes, anonymous fd), and a new
> d_alloc_special(const struct qstr *name, struct inode *inode)
> method, called by the three subsystems.
> 
> Internally, dput() can take a fast path to dput_special() for
> special dentries, avoiding an expensive atomic_dec_and_lock()
> 
> Differences betwen a special dentry and a normal one are :
> 
> 1) Special dentry has the DCACHE_SPECIAL flag
> 2) Special dentry's parent are themselves.
>    This to avoid taking a reference on 'root' dentry, shared
>    by too many dentries.
> 3) They are not hashed into global hash table
> 4) Their d_alias list is empty
> 
> (socket8 bench result : from 27.5s to 24s)
> 
> Signed-off-by: Eric Dumazet <[EMAIL PROTECTED]>

Networking bits look fine:

Acked-by: David S. Miller <[EMAIL PROTECTED]>
--
To unsubscribe from this list: send the line "unsubscribe kernel-testers" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to