[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20090507.010934.91933700.ryusuke@osrg.net>
Date: Thu, 07 May 2009 01:09:34 +0900 (JST)
From: Ryusuke Konishi <ryusuke@...g.net>
To: viro@...IV.linux.org.uk
Cc: konishi.ryusuke@....ntt.co.jp, linux-kernel@...r.kernel.org,
linux-fsdevel@...r.kernel.org
Subject: Re: sget() misuse in nilfs
Hi,
On Wed, 06 May 2009 15:28:59 +0900 (JST), Ryusuke Konishi wrote:
> If we treat read-only mount as the latest snapshot at the time (though
> we didn't take this interpretation), the transitions can be reduced
> to:
>
> * r/w -> r/w. Allowed.
> * r/w -> snapshot. Allowed if no checkpoint number was given (or the
> latest checkpoint was specified)
> * snapshot -> r/w. Allowed if it's the latest one and no r/w is there.
> * snapshot -> snapshot. Only if it's the same.
>
> Right?
Ah, I had forgotten garbage collection (GC).
GC can break checkpoints which are not marked as snapshot. ro-mount
cannot coexist with rw-mount because GC works while an rw-mount is
there.
Sorry, the above interpretation was not easily realized.
> But it still needs test_exclusive_mount().
>
> The test_exclusive_mount() may be eliminable by adding rw-mount-exists
> flag on the_nilfs struct. I'll take some thinking.
The elimination of test_exclusive_mount() was possible by this method
if we can treat ro-mount as the latest checkpoint at the time.
I'd like to consider if a similiar elimination is possible in case
that ro-mount and rw-mount cannot coexist.
Regards,
Ryusuke Konishi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists