Re: [RFC][PATCH 1/3][cr][v2]: Define do_setlease()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Sukadev Bhattiprolu (sukadev@xxxxxxxxxxxxxxxxxx):
> Move the core functionality of fcntl_setlease() into a new function,
> do_setlease(). do_setlease() is same as fcntl_setlease() except that
> it takes an extra 'rem_lease' parameter. do_setlease() will be used
> in a follow-on patch to checkpoint/restart file-leases.
> 
> Signed-off-by: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxxxxxxx>
> ---
>  fs/locks.c         |   27 ++++++++++++++++-----------
>  include/linux/fs.h |    1 +
>  2 files changed, 17 insertions(+), 11 deletions(-)
> 
> diff --git a/fs/locks.c b/fs/locks.c
> index c62ab7f..4107295 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -1471,17 +1471,7 @@ int vfs_setlease(struct file *filp, long arg, struct file_lock **lease)
>  }
>  EXPORT_SYMBOL_GPL(vfs_setlease);
> 
> -/**
> - *	fcntl_setlease	-	sets a lease on an open file
> - *	@fd: open file descriptor
> - *	@filp: file pointer
> - *	@arg: type of lease to obtain
> - *
> - *	Call this fcntl to establish a lease on the file.
> - *	Note that you also need to call %F_SETSIG to
> - *	receive a signal when the lease is broken.
> - */
> -int fcntl_setlease(unsigned int fd, struct file *filp, long arg)
> +int do_setlease(unsigned int fd, struct file *filp, long arg, int rem_lease)
>  {

Note that rem_lease arg here is int, but the value you're checkpointing
and passing in is unsigned long.  So userspace on 64-bit could easily
overflow that, though not sure to what end.  Also putting 'unsigned long'
in the checkpoint_hdr.h is not in keeping with the rest of that file.

thanks,
-serge
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux