• Ryusuke Konishi's avatar
    nilfs2: do not allocate multiple super block instances for a device · f11459ad
    Ryusuke Konishi authored
    This stops allocating multiple super block instances for a device.
    
    All snapshots and a current mode mount (i.e. latest tree) will be
    controlled with nilfs_root objects that are kept within an sb
    instance.
    
    nilfs_get_sb() is rewritten so that it always has a root object for
    the latest tree and snapshots make additional root objects.
    
    The root dentry of the latest tree is binded to sb->s_root even if it
    isn't attached on a directory.  Root dentries of snapshots or the
    latest tree are binded to mnt->mnt_root on which they are mounted.
    
    With this patch, nilfs_find_sbinfo() function, nilfs->ns_supers list,
    and nilfs->ns_current back pointer, are deleted.  In addition,
    init_nilfs() and load_nilfs() are simplified since they will be called
    once for a device, not repeatedly called for mount points.
    Signed-off-by: default avatarRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
    f11459ad
the_nilfs.h 10.7 KB