On Fri, Oct 09, 2015 at 09:24:50AM +1100, Dave Chinner wrote: > On Thu, Oct 08, 2015 at 03:58:01PM -0600, Ross Zwisler wrote: > > Replace "i_mmap_lock" with "mmap_lock" in the lock ordering comment above > > xfs_filemap_page_mkwrite(). The lock in question is actually the > > XFS_MMAPLOCK_SHARED rw_semaphore (no leading "i"), and this comment is > > struct xfs_inode { > .... > mrlock_t i_mmaplock; /* inode mmap IO lock */ > .... > > > easily confused with the "i_mmap_lock_[read|write]" functions that operate > > on struct address_space->i_mmap_rwsem. This clarification is especially > > important because address_space->i_mmap_rwsem is taken down in the DAX > > code as part of this fault path. > > > > Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx> > > --- > > fs/xfs/xfs_file.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/fs/xfs/xfs_file.c b/fs/xfs/xfs_file.c > > index f429662..b190033 100644 > > --- a/fs/xfs/xfs_file.c > > +++ b/fs/xfs/xfs_file.c > > @@ -1477,7 +1477,7 @@ xfs_file_llseek( > > * > > * mmap_sem (MM) > > * sb_start_pagefault(vfs, freeze) > > - * i_mmap_lock (XFS - truncate serialisation) > > + * mmap_lock (XFS - truncate serialisation) > > As per above, the XFS lock is "i_mmaplock"... > > The lock names are annotated with the subsystem the lock belongs to > to avoid this confusion. Along with the lock ordering (inside > sb_start_pagefault) this should indicate that it's not the > "i_mmap_lock (MM - vma serialisation)" lock... ;) Ah, that makes sense, thanks. :) _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs