On 6/15/16, 10:41, "Christoph Hellwig" <hch@xxxxxxxxxxxxx> wrote: >On Wed, Jun 15, 2016 at 02:36:04PM +0000, Trond Myklebust wrote: >> On 6/15/16, 03:16, "Christoph Hellwig" <hch@xxxxxxxxxxxxx> wrote: >> >> >Explanation of why reads are more special than writes here or in >> >general why they are safe? >> > >> >> With the new locking, we already have exclusion between buffered I/O and direct I/O, and so the only remaining use case for inode_dio_wait() is to wait for writes to complete in operations like fsync(). > >There is no need to wait for pending dio in fsync - fsync is only >guarantee to flush out I/O that's alreayd been completed. > >inode_dio_wait and friends were introduces to protect aio that doesn't >hold i_mutex against truncate. Fair enough. So it sounds as if you are suggesting we can just drop using inode_dio_*() altogether? ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥