Merge "Fix file offset overflow issue when file's size > 4G" am: 849299cdc8 am: 8c350c8f5b
am: b0012be05f

Change-Id: I2a21931a8194b3d75a811a589acc12a1dcea89aa
diff --git a/misc/create_inode.c b/misc/create_inode.c
index 05aa636..7b3a8ee 100644
--- a/misc/create_inode.c
+++ b/misc/create_inode.c
@@ -438,8 +438,8 @@
 				ptr += blen;
 				continue;
 			}
-			err = ext2fs_file_lseek(e2_file, off + bpos,
-						EXT2_SEEK_SET, NULL);
+			err = ext2fs_file_llseek(e2_file, off + bpos,
+						 EXT2_SEEK_SET, NULL);
 			if (err)
 				goto fail;
 			while (blen > 0) {
@@ -480,8 +480,8 @@
 		if (hole < 0)
 			return EXT2_ET_UNIMPLEMENTED;
 
-		data_blk = data & ~(fs->blocksize - 1);
-		hole_blk = (hole + (fs->blocksize - 1)) & ~(fs->blocksize - 1);
+		data_blk = data & ~(off_t)(fs->blocksize - 1);
+		hole_blk = (hole + (fs->blocksize - 1)) & ~(off_t)(fs->blocksize - 1);
 		err = copy_file_chunk(fs, fd, e2_file, data_blk, hole_blk, buf,
 				      zerobuf);
 		if (err)