vboxsf does not break leases on its own, so it can't properly handle the
case where the hypervisor changes the data. Don't allow file leases on
vboxsf.
Signed-off-by: Jeff Layton <[email protected]>
---
Looking over the comments in the code around cache coherency, it seems
like it ought to deny file locks as well? We could add a stub ->lock
routine that just returns -ENOLCK or something.
---
fs/vboxsf/file.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/vboxsf/file.c b/fs/vboxsf/file.c
index 2307f8037efc..118dedef8ebe 100644
--- a/fs/vboxsf/file.c
+++ b/fs/vboxsf/file.c
@@ -218,6 +218,7 @@ const struct file_operations vboxsf_reg_fops = {
.release = vboxsf_file_release,
.fsync = noop_fsync,
.splice_read = filemap_splice_read,
+ .setlease = simple_nosetlease,
};
const struct inode_operations vboxsf_reg_iops = {
---
base-commit: 0a7b0acecea273c8816f4f5b0e189989470404cf
change-id: 20240319-setlease-ce31fb8777b0
Best regards,
--
Jeff Layton <[email protected]>
Hi,
On 3/19/24 5:32 PM, Jeff Layton wrote:
> vboxsf does not break leases on its own, so it can't properly handle the
> case where the hypervisor changes the data. Don't allow file leases on
> vboxsf.
>
> Signed-off-by: Jeff Layton <[email protected]>
Thanks, patch looks good to me:
Reviewed-by: Hans de Goede <[email protected]>
I have added this to my local vboxsf branch now and I'll send
out a pull-request with this and a couple of other vboxsf fixes
soon.
Regards,
Hans
> ---
> Looking over the comments in the code around cache coherency, it seems
> like it ought to deny file locks as well? We could add a stub ->lock
> routine that just returns -ENOLCK or something.
> ---
> fs/vboxsf/file.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/fs/vboxsf/file.c b/fs/vboxsf/file.c
> index 2307f8037efc..118dedef8ebe 100644
> --- a/fs/vboxsf/file.c
> +++ b/fs/vboxsf/file.c
> @@ -218,6 +218,7 @@ const struct file_operations vboxsf_reg_fops = {
> .release = vboxsf_file_release,
> .fsync = noop_fsync,
> .splice_read = filemap_splice_read,
> + .setlease = simple_nosetlease,
> };
>
> const struct inode_operations vboxsf_reg_iops = {
>
> ---
> base-commit: 0a7b0acecea273c8816f4f5b0e189989470404cf
> change-id: 20240319-setlease-ce31fb8777b0
>
> Best regards,