Merge branch 'for-2.6.37/barrier' of git://git.kernel.dk/linux-2.6-block
[linux-2.6.git] / fs / nilfs2 / super.c
index 9f4913f..f3b7520 100644 (file)
@@ -177,17 +177,9 @@ static int nilfs_sync_super(struct nilfs_sb_info *sbi, int flag)
 
  retry:
        set_buffer_dirty(nilfs->ns_sbh[0]);
-
        if (nilfs_test_opt(sbi, BARRIER)) {
                err = __sync_dirty_buffer(nilfs->ns_sbh[0],
-                                         WRITE_SYNC | WRITE_BARRIER);
-               if (err == -EOPNOTSUPP) {
-                       nilfs_warning(sbi->s_super, __func__,
-                                     "barrier-based sync failed. "
-                                     "disabling barriers\n");
-                       nilfs_clear_opt(sbi, BARRIER);
-                       goto retry;
-               }
+                                         WRITE_SYNC | WRITE_FLUSH_FUA);
        } else {
                err = sync_dirty_buffer(nilfs->ns_sbh[0]);
        }