From: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
To: Artem Bityutskiy <dedekind@infradead.org>
Cc: viro@zeniv.linux.org.uk, Artem.Bityutskiy@nokia.com,
konishi.ryusuke@lab.ntt.co.jp, linux-kernel@vger.kernel.org,
hch@infradead.org, linux-fsdevel@vger.kernel.org,
users@nilfs.org
Subject: Re: [PATCH v2.1 11/17] NILFS: do not manipulate s_dirt directly
Date: Fri, 05 Jun 2009 21:04:10 +0900 (JST) [thread overview]
Message-ID: <20090605.210410.112169966.ryusuke@osrg.net> (raw)
In-Reply-To: <1244207155-2092-12-git-send-email-dedekind@infradead.org>
On Fri, 5 Jun 2009 16:05:49 +0300, Artem Bityutskiy wrote:
> From: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
>
> ... use new VFS helpers instead.
>
> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
> Cc: users@nilfs.org
> Cc: KONISHI Ryusuke <konishi.ryusuke@lab.ntt.co.jp>
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 fb70ec3..0dcac79 100644
> --- a/fs/nilfs2/segment.c
> +++ b/fs/nilfs2/segment.c
> @@ -2069,7 +2069,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 7262e84..6f3707b 100644
> --- a/fs/nilfs2/super.c
> +++ b/fs/nilfs2/super.c
> @@ -307,7 +307,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);
> }
>
> @@ -318,7 +318,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);
> @@ -344,17 +344,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
> @@ -383,7 +383,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 7f65b3b..5b02f50 100644
> --- a/fs/nilfs2/the_nilfs.c
> +++ b/fs/nilfs2/the_nilfs.c
> @@ -278,7 +278,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-06-05 12:14 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-05 13:05 [PATCH v2.1 00/17] abstract out the super block clean/dirty state Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 01/17] VFS: introduce helpers for manipulation s_dirty flag Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 02/17] AFFS: do not manipulate s_dirt directly Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 03/17] BFS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 04/17] EXOFS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 05/17] EXT2: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 06/17] EXT4: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 07/17] FAT: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 08/17] HFS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 09/17] HFSPLUS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 10/17] JFFS2: " Artem Bityutskiy
2009-06-06 7:25 ` David Woodhouse
2009-06-07 9:21 ` Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 11/17] NILFS: " Artem Bityutskiy
2009-06-05 12:04 ` Ryusuke Konishi [this message]
2009-06-05 13:05 ` [PATCH v2.1 12/17] reiserfs: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 13/17] SYSV: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 14/17] UDF: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 15/17] UFS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 16/17] XFS: " Artem Bityutskiy
2009-06-05 13:05 ` [PATCH v2.1 17/17] VFS: use is_sb_dirty helper 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=20090605.210410.112169966.ryusuke@osrg.net \
--to=konishi.ryusuke@lab.ntt.co.jp \
--cc=Artem.Bityutskiy@nokia.com \
--cc=dedekind@infradead.org \
--cc=hch@infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=users@nilfs.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
all inboxes | Powered by JetHome®