mirror of https://gitee.com/openkylin/linux.git
ocfs2: Remove obscure error handling in direct_write.
In ocfs2, actually we don't allow any direct write pass i_size, see the function ocfs2_prepare_inode_for_write. So we don't need the bogus simple_setsize. Signed-off-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
This commit is contained in:
parent
3c3f20c981
commit
95fa859a26
|
@ -2312,17 +2312,6 @@ static ssize_t ocfs2_file_aio_write(struct kiocb *iocb,
|
||||||
written = generic_file_direct_write(iocb, iov, &nr_segs, *ppos,
|
written = generic_file_direct_write(iocb, iov, &nr_segs, *ppos,
|
||||||
ppos, count, ocount);
|
ppos, count, ocount);
|
||||||
if (written < 0) {
|
if (written < 0) {
|
||||||
/*
|
|
||||||
* direct write may have instantiated a few
|
|
||||||
* blocks outside i_size. Trim these off again.
|
|
||||||
* Don't need i_size_read because we hold i_mutex.
|
|
||||||
*
|
|
||||||
* XXX(truncate): this looks buggy because ocfs2 did not
|
|
||||||
* actually implement ->truncate. Take a look at
|
|
||||||
* the new truncate sequence and update this accordingly
|
|
||||||
*/
|
|
||||||
if (*ppos + count > inode->i_size)
|
|
||||||
truncate_setsize(inode, inode->i_size);
|
|
||||||
ret = written;
|
ret = written;
|
||||||
goto out_dio;
|
goto out_dio;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue