diff options
author | Zheng Liu <gnehzuil.liu@gmail.com> | 2012-05-28 18:06:51 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2012-05-28 18:06:51 -0400 |
commit | 8563000d3bf3ccfccce335c092a7c43078be8ffd (patch) | |
tree | 393a35a5504527f0e98e8c82cbac259fd886c766 /fs | |
parent | 4a3c3a5120bff77cc8c3a70c7cb681f458f47bfd (diff) | |
download | lwn-8563000d3bf3ccfccce335c092a7c43078be8ffd.tar.gz lwn-8563000d3bf3ccfccce335c092a7c43078be8ffd.zip |
ext4: use consistent ssize_t type in ext4_file_write()
The generic_file_aio_write() function returns ssize_t, and
ext4_file_write() returns a ssize_t, so use a ssize_t to collect the
return value from generic_file_aio_write(). It shouldn't matter since
the VFS read/write paths shouldn't allow a read greater than MAX_INT,
but there was previously a bug in the AIO code paths, and it's best if
we use a consistent type so that the return value from
generic_file_aio_write() can't get truncated.
Reported-by: Jouni Siren <jouni.siren@iki.fi>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext4/file.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/file.c b/fs/ext4/file.c index cb70f1812a70..8c7642a00054 100644 --- a/fs/ext4/file.c +++ b/fs/ext4/file.c @@ -95,7 +95,7 @@ ext4_file_write(struct kiocb *iocb, const struct iovec *iov, { struct inode *inode = iocb->ki_filp->f_path.dentry->d_inode; int unaligned_aio = 0; - int ret; + ssize_t ret; /* * If we have encountered a bitmap-format file, the size limit |