Whamcloud - gitweb
LU-12536 llite: release active extent on sync write commit 72/35472/5
authorAnn Koehler <amk@cray.com>
Thu, 11 Jul 2019 20:35:18 +0000 (15:35 -0500)
committerOleg Drokin <green@whamcloud.com>
Sat, 27 Jul 2019 00:22:09 +0000 (00:22 +0000)
commita9af7100ce72ece9c7a37c4d2c28b54fcf68b562
treee7bd213c43dac93b044fb2574fa6ec5727ef7997
parente4b53945ddb2f218f8ecd195e479e861b71c5153
LU-12536 llite: release active extent on sync write commit

Processes can wait forever in osc_extent_wait() for the extent state
to change because the extent write is not started before the wait
begins. A 4.7 kernel change to generic_write_sync() modified it to
check IOCB_DSYNC instead of O_SYNC. Thus an active extent is not
released (written) in osc_io_commit_async() in the synchronous case.

Linux commit: dde0c2e79848298cc25621ad080d47f94dbd7cce

Cray-bug-id: LUS-7435
Signed-off-by: Ann Koehler <amk@cray.com>
Change-Id: I03fd3f17c0c21bcb176730a0edf449d2e5e0c108
Reviewed-on: https://review.whamcloud.com/35472
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/autoconf/lustre-core.m4
lustre/llite/file.c
lustre/llite/llite_internal.h
lustre/llite/rw.c