• D
    VFS: Put a small type field into struct dentry::d_flags · b18825a7
    David Howells 提交于
    Put a type field into struct dentry::d_flags to indicate if the dentry is one
    of the following types that relate particularly to pathwalk:
    
    	Miss (negative dentry)
    	Directory
    	"Automount" directory (defective - no i_op->lookup())
    	Symlink
    	Other (regular, socket, fifo, device)
    
    The type field is set to one of the first five types on a dentry by calls to
    __d_instantiate() and d_obtain_alias() from information in the inode (if one is
    given).
    
    The type is cleared by dentry_unlink_inode() when it reconstitutes an existing
    dentry as a negative dentry.
    
    Accessors provided are:
    
    	d_set_type(dentry, type)
    	d_is_directory(dentry)
    	d_is_autodir(dentry)
    	d_is_symlink(dentry)
    	d_is_file(dentry)
    	d_is_negative(dentry)
    	d_is_positive(dentry)
    
    A bunch of checks in pathname resolution switched to those.
    Signed-off-by: NDavid Howells <dhowells@redhat.com>
    Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
    b18825a7
namei.c 106.7 KB