On 05/14/12 15:34, Ben Myers wrote:
Protect xfs_sync_worker by using the s_umount semaphore at the read level to provide exclusion with unmount while work is progressing.
- xfs_log_force(mp, 0); + if (down_read_trylock(&mp->m_super->s_umount)) {
Okay, the s_umount has down_write() performed upon it when it is created and does not do a up_write until the filesystem mount is complete. This test is just like the one in grab_super_passive(). The if statements have to be separated to know to do the corresponding up_read().
+ if (!(mp->m_flags& XFS_MOUNT_RDONLY)) {
...
+ up_read(&mp->m_super->s_umount);
Looks good. Reveiewed-by: Mark Tinguely <tinguely@xxxxxxx> _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs