• Al Viro's avatar
    omfs: merge unlink() and rmdir(), close leak in rename() · d932805b
    Al Viro authored
    In case of directory-overwriting rename(), omfs forgot to mark the
    victim doomed, so omfs_evict_inode() didn't free it.
    
    We could fix that by calling omfs_rmdir() for directory victims
    instead of doing omfs_unlink(), but it's easier to merge omfs_unlink()
    and omfs_rmdir() instead.  Note that we have no hardlinks here.
    
    It also makes the checks in omfs_rename() go away - they fold into
    what omfs_remove() does when it runs into a directory.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarBob Copeland <me@bobcopeland.com>
    d932805b
dir.c 10 KB