A check for O_APPEND in determining 'sync' or not was
accidentally introduced. This forces O_APPEND writes to
all be synchronous, which is of course wrong.
Fixes:
dad7079dfd ("LU-16695 llite: switch to ki_flags from f_flags")
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Iafae63ebda527834bd45d6fcbfb0cebb0340f4e4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/54128
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
if (iot == CIT_WRITE) {
io->u.ci_wr.wr_append = iocb_ki_flags_check(flags, APPEND);
io->u.ci_wr.wr_sync = !!(iocb_ki_flags_check(flags, SYNC) ||
- iocb_ki_flags_check(flags, APPEND) ||
iocb_ki_flags_check(flags, DSYNC) ||
IS_SYNC(inode));
}