Nathan Scott wrote:
I think its always valid to do this (after auditing the callers),
but doesn't seem to do "general speedup" - the "usual suspects"
benchmarks don't show any improvements anyway. Alex, what was
your workload? (you didn't get back to me yet).
I missed the i_sem in nfs, did not look high enough up the stack.
Possibly the double flush in there was catching some extra data,
which considering we do this under the i_sem is somewhat unlikely.
The change would however allow reads to proceed across flushes
as the fsync_datawait which matters is now the one in the
fsync caller which is not holding any lock a read cares about.