* [PATCH AUTOSEL 5.4 2/8] fs/9p: translate O_TRUNC into OTRUNC
2024-04-23 11:02 [PATCH AUTOSEL 5.4 1/8] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
@ 2024-04-23 11:02 ` Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 5.4 3/8] 9p: explicitly deny setlease attempts Sasha Levin
2024-04-23 11:03 ` [PATCH AUTOSEL 5.4 7/8] fs/9p: drop inodes immediately on non-.L too Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Joakim Sindholt, Eric Van Hensbergen, Sasha Levin, lucho,
asmadeus, v9fs
From: Joakim Sindholt <opensource@zhasha.com>
[ Upstream commit 87de39e70503e04ddb58965520b15eb9efa7eef3 ]
This one hits both 9P2000 and .u as it appears v9fs has never translated
the O_TRUNC flag.
Signed-off-by: Joakim Sindholt <opensource@zhasha.com>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_inode.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index b1107b424bf64..ffce168296bd3 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -177,6 +177,9 @@ int v9fs_uflags2omode(int uflags, int extended)
break;
}
+ if (uflags & O_TRUNC)
+ ret |= P9_OTRUNC;
+
if (extended) {
if (uflags & O_EXCL)
ret |= P9_OEXCL;
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH AUTOSEL 5.4 3/8] 9p: explicitly deny setlease attempts
2024-04-23 11:02 [PATCH AUTOSEL 5.4 1/8] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 5.4 2/8] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
@ 2024-04-23 11:02 ` Sasha Levin
2024-04-23 11:03 ` [PATCH AUTOSEL 5.4 7/8] fs/9p: drop inodes immediately on non-.L too Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:02 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Jeff Layton, Eric Van Hensbergen, Sasha Levin, lucho, asmadeus,
v9fs
From: Jeff Layton <jlayton@kernel.org>
[ Upstream commit 7a84602297d36617dbdadeba55a2567031e5165b ]
9p is a remote network protocol, and it doesn't support asynchronous
notifications from the server. Ensure that we don't hand out any leases
since we can't guarantee they'll be broken when a file's contents
change.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_file.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c
index ee9cabac12041..14d6cb0316212 100644
--- a/fs/9p/vfs_file.c
+++ b/fs/9p/vfs_file.c
@@ -676,6 +676,7 @@ const struct file_operations v9fs_file_operations = {
.lock = v9fs_file_lock,
.mmap = generic_file_readonly_mmap,
.fsync = v9fs_file_fsync,
+ .setlease = simple_nosetlease,
};
const struct file_operations v9fs_file_operations_dotl = {
@@ -711,4 +712,5 @@ const struct file_operations v9fs_mmap_file_operations_dotl = {
.flock = v9fs_file_flock_dotl,
.mmap = v9fs_mmap_file_mmap,
.fsync = v9fs_file_fsync_dotl,
+ .setlease = simple_nosetlease,
};
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH AUTOSEL 5.4 7/8] fs/9p: drop inodes immediately on non-.L too
2024-04-23 11:02 [PATCH AUTOSEL 5.4 1/8] fs/9p: only translate RWX permissions for plain 9P2000 Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 5.4 2/8] fs/9p: translate O_TRUNC into OTRUNC Sasha Levin
2024-04-23 11:02 ` [PATCH AUTOSEL 5.4 3/8] 9p: explicitly deny setlease attempts Sasha Levin
@ 2024-04-23 11:03 ` Sasha Levin
2 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2024-04-23 11:03 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Joakim Sindholt, Eric Van Hensbergen, Sasha Levin, lucho,
asmadeus, v9fs
From: Joakim Sindholt <opensource@zhasha.com>
[ Upstream commit 7fd524b9bd1be210fe79035800f4bd78a41b349f ]
Signed-off-by: Joakim Sindholt <opensource@zhasha.com>
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/9p/vfs_super.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index 74df32be4c6a5..46e58fdf9ba54 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -335,6 +335,7 @@ static const struct super_operations v9fs_super_ops = {
.alloc_inode = v9fs_alloc_inode,
.free_inode = v9fs_free_inode,
.statfs = simple_statfs,
+ .drop_inode = v9fs_drop_inode,
.evict_inode = v9fs_evict_inode,
.show_options = v9fs_show_options,
.umount_begin = v9fs_umount_begin,
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread