Lines Matching refs:i_rwsem
136 * In addition to i_rwsem in the VFS inode, the xfs inode contains 2
145 * i_rwsem -> i_mmap_lock -> page_lock -> i_ilock
149 * i_rwsem -> page lock -> mmap_lock
156 * direct IO. Similarly the i_rwsem cannot be taken inside a page fault because
160 * take both the i_rwsem and the i_mmap_lock. These locks should *only* be both
186 down_write_nested(&VFS_I(ip)->i_rwsem,
189 down_read_nested(&VFS_I(ip)->i_rwsem,
237 if (!down_write_trylock(&VFS_I(ip)->i_rwsem))
240 if (!down_read_trylock(&VFS_I(ip)->i_rwsem))
268 up_write(&VFS_I(ip)->i_rwsem);
270 up_read(&VFS_I(ip)->i_rwsem);
307 up_write(&VFS_I(ip)->i_rwsem);
309 up_read(&VFS_I(ip)->i_rwsem);
342 downgrade_write(&VFS_I(ip)->i_rwsem);
368 lockdep_is_held_type(&VFS_I(ip)->i_rwsem, 0);
369 return rwsem_is_locked(&VFS_I(ip)->i_rwsem);
541 * we use i_rwsem for that. We now support taking one lock EXCL and the other