This is a revised series of the ("cleanups on nilfs_get_sb()") which I
posted last month.

The purpose of this series is to simpify sget() use in nilfs and
improve exclusion control of mount state in mount/remount/umount
procedures.

In the previous version, I cut by two of three sget() calls and
reduced some bd_mount_sem use.  This version will add the following
changes:

 * Simplify test callback function passed to the remaining sget()
   call.  The confusing down_write_trylock for sb->s_umount in the
   test function was removed.

 * Introduce a new semaphore to protect mount state. Previously, lock
   order reversal between sb->s_umount and bdev->bd_mount_sem was
   arising in nilfs_remount(), and protection for the mount state was
   imperfect in nilfs_remount(). The new semaphore corrects both
   problems.

 * Delete every bd_mount_sem use from nilfs including the pair left
   around sget() call in the previous version.

 * The way for detecting exclusive mount was simplified. This series
   uses a back pointer to a current mount from nilfs object instead of
   scanning list of super block instances.

 * Rebased to the latest kernel version.

I will queue this for 2.6.31.

--
Ryusuke Konishi (6):
      nilfs2: remove meaningless EBUSY case from nilfs_get_sb function
      nilfs2: get rid of sget use for acquiring nilfs object
      nilfs2: get rid of sget use for checking if current mount is present
      nilfs2: simplify remaining sget() use
      nilfs2: correct exclusion control in nilfs_remount function
      nilfs2: get rid of bd_mount_sem use from nilfs

 fs/nilfs2/cpfile.c    |    6 +-
 fs/nilfs2/sb.h        |    1 +
 fs/nilfs2/super.c     |  242 ++++++++++++++++---------------------------------
 fs/nilfs2/the_nilfs.c |  113 ++++++++++++++++++++++-
 fs/nilfs2/the_nilfs.h |   23 ++++-
 5 files changed, 212 insertions(+), 173 deletions(-)

Thanks,
Ryusuke Konishi


_______________________________________________
users mailing list
[email protected]
https://www.nilfs.org/mailman/listinfo/users

Reply via email to