From: Chengguang Xu Date: Thu, 19 Jul 2018 14:15:27 +0000 (+0800) Subject: ceph: compare fsc->max_file_size and inode->i_size for max file size limit X-Git-Tag: v4.19~346^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9da12e3a7de1665a14063653b60e872da0ee7810;p=platform%2Fkernel%2Flinux-rpi.git ceph: compare fsc->max_file_size and inode->i_size for max file size limit In ceph_llseek(), we compare fsc->max_file_size and inode->i_size to choose max file size limit. Signed-off-by: Chengguang Xu Reviewed-by: "Yan, Zheng" Signed-off-by: Ilya Dryomov --- diff --git a/fs/ceph/file.c b/fs/ceph/file.c index b9cd9d2..141a64c 100644 --- a/fs/ceph/file.c +++ b/fs/ceph/file.c @@ -1554,6 +1554,7 @@ out_unlocked: static loff_t ceph_llseek(struct file *file, loff_t offset, int whence) { struct inode *inode = file->f_mapping->host; + struct ceph_fs_client *fsc = ceph_inode_to_client(inode); loff_t i_size; loff_t ret; @@ -1598,7 +1599,7 @@ static loff_t ceph_llseek(struct file *file, loff_t offset, int whence) break; } - ret = vfs_setpos(file, offset, inode->i_sb->s_maxbytes); + ret = vfs_setpos(file, offset, max(i_size, fsc->max_file_size)); out: inode_unlock(inode);