freebsd-src/sys/gnu/ext2fs
Bruce Evans d3a7b5e70e vfs_syscalls.c:
Changed rename(2) to follow the letter of the POSIX spec.  POSIX
requires rename() to have no effect if its args "resolve to the same
existing file".  I think "file" can only reasonably be read as referring
to the inode, although the rationale and "resolve" seem to say that
sameness is at the level of (resolved) directory entries.

ext2fs_vnops.c, ufs_vnops.c:
Replaced code that gave the historical BSD behaviour of removing one
link name by checks that this code is now unreachable.  This fixes
some races.  All vnodes needed to be unlocked for the removal, and
locking at another level using something like IN_RENAME was not even
attempted, so it was possible for rename(x, y) to return with both x
and y removed even without any unlink(2) syscalls (one process can
remove x using rename(x, y) and another process can remove y using
rename(y, x)).

Prodded by:	alfred
MFC after:	8 weeks
PR:		42617
2002-09-10 11:09:13 +00:00
..
alpha-bitops.h Put the bits in place for Alpha support for ext2. Not tested. 2000-12-09 22:32:49 +00:00
COPYRIGHT.INFO Updated/corrected the list of GPL'ed files. 2000-01-01 11:27:50 +00:00
ext2_alloc.c Fix two off-by-one errors when sanity-checking inode numbers. In 2002-05-18 21:33:07 +00:00
ext2_balloc.c Use explicitly-sized types where necessary to make ext2fs work again 2002-05-18 19:12:38 +00:00
ext2_bmap.c Use explicitly-sized types where necessary to make ext2fs work again 2002-05-18 19:12:38 +00:00
ext2_extern.h Add an ext2_uninit() routine that undoes the actions performed by 2002-05-18 22:18:17 +00:00
ext2_fs.h Complete the separation of ext2fs from ufs by copying the remaining 2002-05-16 19:08:03 +00:00
ext2_fs_sb.h Import the Linux ext2fs files that our GPL'ed ext2fs files seem to be 2000-01-01 11:05:19 +00:00
ext2_ihash.c Use hashdestroy() now that it exists. 2002-06-30 03:01:44 +00:00
ext2_inode.c Use explicitly-sized types where necessary to make ext2fs work again 2002-05-18 19:12:38 +00:00
ext2_inode_cnv.c Complete the separation of ext2fs from ufs by copying the remaining 2002-05-16 19:08:03 +00:00
ext2_linux_balloc.c Complete the separation of ext2fs from ufs by copying the remaining 2002-05-16 19:08:03 +00:00
ext2_linux_ialloc.c Complete the separation of ext2fs from ufs by copying the remaining 2002-05-16 19:08:03 +00:00
ext2_lookup.c In order to better support flexible and extensible access control, 2002-08-15 20:55:08 +00:00
ext2_mount.h Convert ext2fs to nmount(2). 2002-05-24 17:38:01 +00:00
ext2_readwrite.c Remove register keyword. 2002-05-16 19:43:28 +00:00
ext2_subr.c Use explicitly-sized types where necessary to make ext2fs work again 2002-05-18 19:12:38 +00:00
ext2_vfsops.c Convert ext2fs to nmount(2). 2002-05-24 17:38:01 +00:00
ext2_vnops.c vfs_syscalls.c: 2002-09-10 11:09:13 +00:00
fs.h Complete the separation of ext2fs from ufs by copying the remaining 2002-05-16 19:08:03 +00:00
i386-bitops.h Fix __asm__ clobber list abuse. 1999-11-15 23:16:06 +00:00
inode.h Use explicitly-sized types where necessary to make ext2fs work again 2002-05-18 19:12:38 +00:00