Skip to content

Commit 89b9cad

Browse files
Matthew Wilcox (Oracle)gregkh
authored andcommitted
ceph: promote to unsigned long long before shifting
commit c403c3a upstream. On 32-bit systems, this shift will overflow for files larger than 4GB. Cc: stable@vger.kernel.org Fixes: 61f6881 ("ceph: check caps in filemap_fault and page_mkwrite") Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 4052ea4 commit 89b9cad

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

fs/ceph/addr.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1522,7 +1522,7 @@ static vm_fault_t ceph_filemap_fault(struct vm_fault *vmf)
15221522
struct ceph_inode_info *ci = ceph_inode(inode);
15231523
struct ceph_file_info *fi = vma->vm_file->private_data;
15241524
struct page *pinned_page = NULL;
1525-
loff_t off = vmf->pgoff << PAGE_SHIFT;
1525+
loff_t off = (loff_t)vmf->pgoff << PAGE_SHIFT;
15261526
int want, got, err;
15271527
sigset_t oldset;
15281528
vm_fault_t ret = VM_FAULT_SIGBUS;

0 commit comments

Comments
 (0)