mirror of
https://github.com/torvalds/linux.git
synced 2026-06-08 06:25:52 +02:00
afs: Fix creation calls in the dynamic root to fail with EOPNOTSUPP
[ Upstream commit 1da4bd9f9d ]
Fix the lookup method on the dynamic root directory such that creation
calls, such as mkdir, open(O_CREAT), symlink, etc. fail with EOPNOTSUPP
rather than failing with some odd error (such as EEXIST).
lookup() itself tries to create automount directories when it is invoked.
These are cached locally in RAM and not committed to storage.
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Marc Dionne <marc.dionne@auristor.com>
Tested-by: Jonathan Billings <jsbillings@jsbillings.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
b280f0ea1c
commit
281c1b3052
|
|
@ -145,6 +145,9 @@ static struct dentry *afs_dynroot_lookup(struct inode *dir, struct dentry *dentr
|
|||
|
||||
ASSERTCMP(d_inode(dentry), ==, NULL);
|
||||
|
||||
if (flags & LOOKUP_CREATE)
|
||||
return ERR_PTR(-EOPNOTSUPP);
|
||||
|
||||
if (dentry->d_name.len >= AFSNAMEMAX) {
|
||||
_leave(" = -ENAMETOOLONG");
|
||||
return ERR_PTR(-ENAMETOOLONG);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user