udf_rename(): only access the child content on cross-directory rename
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 17 Oct 2023 18:44:23 +0000 (14:44 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 25 Nov 2023 07:53:20 +0000 (02:53 -0500)
commit9d35cebb794bb7be93db76c3383979c7deacfef9
tree078819c682c3d64981694e5ad4a42355b86c5c8b
parent9d618d19b29c2943527e3a43da0a35aea91062fc
udf_rename(): only access the child content on cross-directory rename

We can't really afford locking the source on same-directory rename;
currently vfs_rename() tries to do that, but it will have to be
changed.  The logics in udf_rename() is lazy and goes looking for
".." in source even in same-directory case.  It's not hard to get
rid of that, leaving that behaviour only for cross-directory case;
that VFS can get locks safely (and will keep doing that after the
coming changes).

Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/udf/namei.c