diff mbox series

vboxsf: explicitly deny setlease attempts

Message ID 20240319-setlease-v1-1-5997d67e04b3@kernel.org (mailing list archive)
State New
Headers show
Series vboxsf: explicitly deny setlease attempts | expand

Commit Message

Jeffrey Layton March 19, 2024, 4:32 p.m. UTC
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 <jlayton@kernel.org>
---
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(+)


---
base-commit: 0a7b0acecea273c8816f4f5b0e189989470404cf
change-id: 20240319-setlease-ce31fb8777b0

Best regards,

Comments

Hans de Goede April 3, 2024, 2:10 p.m. UTC | #1
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 <jlayton@kernel.org>

Thanks, patch looks good to me:

Reviewed-by: Hans de Goede <hdegoede@redhat.com>

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,
diff mbox series

Patch

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 = {