virtiofs: simplify sb setup
authorMiklos Szeredi <mszeredi@redhat.com>
Wed, 11 Nov 2020 16:22:31 +0000 (17:22 +0100)
committerMiklos Szeredi <mszeredi@redhat.com>
Wed, 11 Nov 2020 16:22:31 +0000 (17:22 +0100)
commitb19d3d00d662cfb8bfdc809ec90344ec58b0bf31
tree2fe986c5dd9b1e29120a3fcbe1333222754a4002
parent66ab33bf6d4341574f88b511e856a73f6f2a921e
virtiofs: simplify sb setup

Currently when acquiring an sb for virtiofs fuse_mount_get() is being
called from virtio_fs_set_super() if a new sb is being filled and
fuse_mount_put() is called unconditionally after sget_fc() returns.

The exact same result can be obtained by checking whether
fs_contex->s_fs_info was set to NULL (ref trasferred to sb->s_fs_info) and
only calling fuse_mount_put() if the ref wasn't transferred (error or
matching sb found).

This allows getting rid of virtio_fs_set_super() and fuse_mount_get().

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/fuse/fuse_i.h
fs/fuse/inode.c
fs/fuse/virtio_fs.c