From: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
To: Al Viro <viro@ZenIV.linux.org.uk>, Jens Axboe <jens.axboe@oracle.com>
Cc: linux-fsdevel@vger.kernel.org,
Artem Bityutskiy <Artem.Bityutskiy@nokia.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH v3 11/18] NILFS: do not manipulate s_dirt directly
Date: Thu, 09 Jul 2009 11:49:39 +0300 [thread overview]
Message-ID: <20090709084939.12122.64791.sendpatchset@localhost.localdomain> (raw)
In-Reply-To: <20090709084822.12122.79749.sendpatchset@localhost.localdomain>
... use new VFS helpers instead.
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
---
fs/nilfs2/segment.c | 2 +-
fs/nilfs2/super.c | 18 +++++++++---------
fs/nilfs2/the_nilfs.c | 2 +-
3 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/fs/nilfs2/segment.c b/fs/nilfs2/segment.c
index aa97754..f857eaa 100644
--- a/fs/nilfs2/segment.c
+++ b/fs/nilfs2/segment.c
@@ -2052,7 +2052,7 @@ static void nilfs_segctor_complete_write(struct nilfs_sc_info *sci)
if (update_sr) {
nilfs_set_last_segment(nilfs, segbuf->sb_pseg_start,
segbuf->sb_sum.seg_seq, nilfs->ns_cno++);
- sbi->s_super->s_dirt = 1;
+ mark_sb_dirty(sbi->s_super);
clear_bit(NILFS_SC_HAVE_DELTA, &sci->sc_flags);
clear_bit(NILFS_SC_DIRTY, &sci->sc_flags);
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c
index 8e2ec43..4eb2576 100644
--- a/fs/nilfs2/super.c
+++ b/fs/nilfs2/super.c
@@ -300,7 +300,7 @@ int nilfs_commit_super(struct nilfs_sb_info *sbi, int dupsb)
memcpy(sbp[1], sbp[0], nilfs->ns_sbsize);
nilfs->ns_sbwtime[1] = t;
}
- sbi->s_super->s_dirt = 0;
+ mark_sb_clean(sbi->s_super);
return nilfs_sync_super(sbi, dupsb);
}
@@ -311,7 +311,7 @@ static void nilfs_put_super(struct super_block *sb)
lock_kernel();
- if (sb->s_dirt)
+ if (is_sb_dirty(sb))
nilfs_write_super(sb);
nilfs_detach_segment_constructor(sbi);
@@ -341,17 +341,17 @@ static void nilfs_put_super(struct super_block *sb)
* @sb: super_block
*
* nilfs_write_super() gets a fs-dependent lock, writes super block(s), and
- * clears s_dirt. This function is called in the section protected by
- * lock_super().
+ * clears the superblock. This function is called in the section protected
+ * by lock_super().
*
- * The s_dirt flag is managed by each filesystem and we protect it by ns_sem
- * of the struct the_nilfs. Lock order must be as follows:
+ * The super block s_dirt flag is managed by each filesystem and we protect
+ * it by ns_sem of the struct the_nilfs. Lock order must be as follows:
*
* 1. lock_super()
* 2. down_write(&nilfs->ns_sem)
*
- * Inside NILFS, locking ns_sem is enough to protect s_dirt and the buffer
- * of the super block (nilfs->ns_sbp[]).
+ * Inside NILFS, locking ns_sem is enough to protect the super block s_dirt
+ * and the buffer of the super block (nilfs->ns_sbp[]).
*
* In most cases, VFS functions call lock_super() before calling these
* methods. So we must be careful not to bring on deadlocks when using
@@ -380,7 +380,7 @@ static void nilfs_write_super(struct super_block *sb)
dupsb = sbp[1] && t > nilfs->ns_sbwtime[1] + NILFS_ALTSB_FREQ;
nilfs_commit_super(sbi, dupsb);
}
- sb->s_dirt = 0;
+ mark_sb_clean(sb);
up_write(&nilfs->ns_sem);
}
diff --git a/fs/nilfs2/the_nilfs.c b/fs/nilfs2/the_nilfs.c
index 8b88898..a275939 100644
--- a/fs/nilfs2/the_nilfs.c
+++ b/fs/nilfs2/the_nilfs.c
@@ -330,7 +330,7 @@ int load_nilfs(struct the_nilfs *nilfs, struct nilfs_sb_info *sbi)
goto failed;
}
if (ri.ri_need_recovery == NILFS_RECOVERY_SR_UPDATED)
- sbi->s_super->s_dirt = 1;
+ mark_sb_dirty(sbi->s_super);
}
set_nilfs_loaded(nilfs);
--
1.6.0.6
next prev parent reply other threads:[~2009-07-09 6:59 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-09 8:48 [PATCH v3 00/18] periodic write-back timer optimization Artem Bityutskiy
2009-07-09 8:48 ` [PATCH v3 01/18] VFS: introduce helpers for manipulation s_dirty flag Artem Bityutskiy
2009-07-09 8:48 ` [PATCH v3 02/18] AFFS: do not manipulate s_dirt directly Artem Bityutskiy
2009-07-09 8:48 ` [PATCH v3 03/18] BFS: " Artem Bityutskiy
2009-07-09 8:48 ` [PATCH v3 04/18] EXOFS: " Artem Bityutskiy
2009-07-12 9:53 ` Boaz Harrosh
2009-07-12 14:02 ` Artem Bityutskiy
2009-07-09 8:48 ` [PATCH v3 05/18] EXT2: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 06/18] EXT4: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 07/18] FAT: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 08/18] HFS: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 09/18] HFSPLUS: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 10/18] JFFS2: " Artem Bityutskiy
2009-07-09 8:49 ` Artem Bityutskiy [this message]
2009-07-09 8:49 ` [PATCH v3 12/18] reiserfs: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 13/18] SYSV: " Artem Bityutskiy
2009-07-09 8:49 ` [PATCH v3 14/18] UDF: " Artem Bityutskiy
2009-07-09 8:50 ` [PATCH v3 15/18] UFS: " Artem Bityutskiy
2009-07-09 8:50 ` [PATCH v3 16/18] VFS: use is_sb_dirty helper Artem Bityutskiy
2009-07-09 8:50 ` [PATCH v3 17/18] rename s_dirt to s_dirty Artem Bityutskiy
2009-07-09 8:50 ` [PATCH v3 18/18] writeback: optimize periodic sync_supers Artem Bityutskiy
2009-07-09 12:37 ` [PATCH v3 00/18] periodic write-back timer optimization Andi Kleen
2009-07-09 13:04 ` Artem Bityutskiy
2009-07-15 6:21 ` Artem Bityutskiy
2009-07-24 15:45 ` Artem Bityutskiy
2009-09-14 15:27 ` Artem Bityutskiy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090709084939.12122.64791.sendpatchset@localhost.localdomain \
--to=artem.bityutskiy@nokia.com \
--cc=jens.axboe@oracle.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=viro@ZenIV.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).