On Tue 10-01-17 16:48:08, Christoph Hellwig wrote: > Make sure all callers follow the same locking protocol, given that DAX > transparantly replaced the normal buffered I/O path. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Looks good. You can add: Reviewed-by: Jan Kara <jack@xxxxxxx> Probably also for Ted since it depends on the ext4 fix... Honza > --- > fs/dax.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/fs/dax.c b/fs/dax.c > index 5c74f60..04734da 100644 > --- a/fs/dax.c > +++ b/fs/dax.c > @@ -1061,8 +1061,12 @@ dax_iomap_rw(struct kiocb *iocb, struct iov_iter *iter, > loff_t pos = iocb->ki_pos, ret = 0, done = 0; > unsigned flags = 0; > > - if (iov_iter_rw(iter) == WRITE) > + if (iov_iter_rw(iter) == WRITE) { > + lockdep_assert_held_exclusive(&inode->i_rwsem); > flags |= IOMAP_WRITE; > + } else { > + lockdep_assert_held(&inode->i_rwsem); > + } > > while (iov_iter_count(iter)) { > ret = iomap_apply(inode, pos, iov_iter_count(iter), flags, ops, > -- > 2.1.4 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html