On Tue, 24 Aug 2010 14:24:53 +0100, Al Viro wrote: > On Tue, Aug 24, 2010 at 09:19:31PM +0900, Ryusuke Konishi wrote: > > > It just needs some helper function to do the non-sb related init > > > stuff for you. > > > > I'm seeking the way to make that special type of inodes hold a valid > > sb. If it's not feasible, I think nilfs should not borrow inode > > object and should define just enough structure instead. > > For fsck sake, just grab an active reference to superblock for the > duration of GC and use _normal_ inodes... GC is only allowed while a read/write mount exists, and the "remove own inode hash table" patchset already solved the sb-less inode issue for GC. The remaining problem is that nilfs allocates different sb per snapshot instead of increasing reference count of one super block. (to be precise, identical snapshots or current mounts share the same sb like regular mount) Since snapshots or a current filesystem are mounted or unmounted independently sharing the three metadata files, these metadata files can live across the lifetime of a certain sb. All other inodes are binded to an sb. And, my thought is, in the first place, allocating different sb for a device is not sane. Thanks, Ryusuke Konishi -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html