Provided by: linux-doc-2.6.15_2.6.15-23.39_all bug

NAME

       d_splice_alias  -  splice  a  disconnected  dentry into the tree if one
       exists

SYNOPSIS

       struct dentry * d_splice_alias  (struct inode * inode,
                                           struct dentry * dentry);

ARGUMENTS

       inode  the inode which may have a disconnected dentry

       dentry a negative dentry which we want to point to the inode.

DESCRIPTION

       If  inode  is a directory and has a ’disconnected’ dentry (i.e. IS_ROOT
       and DCACHE_DISCONNECTED), then d_move that in place of the given dentry
       and  return  it,  else  simply d_add the inode to the dentry and return
       NULL.

       This is needed  in  the  lookup  routine  of  any  filesystem  that  is
       exportable (via knfsd) so that we can build dcache paths to directories
       effectively.

       If a dentry was found and moved, then it is returned. Otherwise NULL is
       returned. This matches the expected return value of ->lookup.