afs: Implement sillyrename for unlink and rename
authorDavid Howells <dhowells@redhat.com>
Thu, 25 Apr 2019 13:26:51 +0000 (14:26 +0100)
committerDavid Howells <dhowells@redhat.com>
Thu, 25 Apr 2019 13:26:51 +0000 (14:26 +0100)
commit79ddbfa500b37a94fa7501e65ebdd5c0e4c7592d
tree1521d6e9276078aaf142ea40ab0f1e156c0fc276
parent99987c560046ea178eb5aea793043deea255f185
afs: Implement sillyrename for unlink and rename

Implement sillyrename for AFS unlink and rename, using the NFS variant
implementation as a basis.

Note that the asynchronous file locking extender/releaser has to be
notified with a state change to stop it complaining if there's a race
between that and the actual file deletion.

A tracepoint, afs_silly_rename, is also added to note the silly rename and
the cleanup.  The afs_edit_dir tracepoint is given some extra reason
indicators and the afs_flock_ev tracepoint is given a silly-delete file
lock cancellation indicator.

Signed-off-by: David Howells <dhowells@redhat.com>
fs/afs/Makefile
fs/afs/dir.c
fs/afs/dir_silly.c [new file with mode: 0644]
fs/afs/flock.c
fs/afs/inode.c
fs/afs/internal.h
fs/afs/super.c
include/trace/events/afs.h