diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2023-08-11 18:16:14 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-08-11 18:32:23 -0400 |
commit | ae23e4541f020f3096ede3ac62ba6ab9cd37af3b (patch) | |
tree | 5543354772b13083b26529bf11bc3c0ba38968e5 | |
parent | 0de1fb41b7bc97fabda78e5416a600a723a51c3d (diff) | |
download | bcachefs-tools-ae23e4541f020f3096ede3ac62ba6ab9cd37af3b.tar.gz |
fuse: Set fsname correctly
Also, add helpers for the fuse.bcachefs filesystem type; this means we
can now test the fuse version with fstests.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r-- | Makefile | 3 | ||||
-rw-r--r-- | cmd_fusemount.c | 11 | ||||
-rwxr-xr-x | mount.fuse.bcachefs | 3 | ||||
-rw-r--r-- | packaging/bcachefs-tools.spec | 5 |
4 files changed, 21 insertions, 1 deletions
@@ -155,6 +155,9 @@ install: bcachefs $(INSTALL) -m0755 fsck.bcachefs $(DESTDIR)$(ROOT_SBINDIR) $(INSTALL) -m0755 mkfs.bcachefs $(DESTDIR)$(ROOT_SBINDIR) $(INSTALL) -m0755 mount.bcachefs $(DESTDIR)$(ROOT_SBINDIR) + $(INSTALL) -m0755 fsck.bcachefs $(DESTDIR)$(ROOT_SBINDIR)/fsck.fuse.bcachefs + $(INSTALL) -m0755 mkfs.bcachefs $(DESTDIR)$(ROOT_SBINDIR)/mkfs.fuse.bcachefs + $(INSTALL) -m0755 mount.fuse.bcachefs $(DESTDIR)$(ROOT_SBINDIR) $(INSTALL) -m0644 -D bcachefs.8 -t $(DESTDIR)$(PREFIX)/share/man/man8/ $(INSTALL) -m0755 -D initramfs/script $(DESTDIR)$(INITRAMFS_SCRIPT) $(INSTALL) -m0755 -D initramfs/hook $(DESTDIR)$(INITRAMFS_HOOK) diff --git a/cmd_fusemount.c b/cmd_fusemount.c index f07edb5a..c5776dfe 100644 --- a/cmd_fusemount.c +++ b/cmd_fusemount.c @@ -1217,6 +1217,17 @@ int cmd_fusemount(int argc, char *argv[]) } tokenize_devices(&ctx); + struct printbuf fsname = PRINTBUF; + prt_printf(&fsname, "fsname="); + for (i = 0; i < ctx.nr_devices; ++i) { + if (i) + prt_str(&fsname, ":"); + prt_str(&fsname, ctx.devices[i]); + } + + fuse_opt_add_arg(&args, "-o"); + fuse_opt_add_arg(&args, fsname.buf); + /* Open bch */ printf("Opening bcachefs filesystem on:\n"); for (i = 0; i < ctx.nr_devices; ++i) diff --git a/mount.fuse.bcachefs b/mount.fuse.bcachefs new file mode 100755 index 00000000..115b3d02 --- /dev/null +++ b/mount.fuse.bcachefs @@ -0,0 +1,3 @@ +#!/bin/sh + +exec bcachefs fusemount "$@" diff --git a/packaging/bcachefs-tools.spec b/packaging/bcachefs-tools.spec index a8f023a8..24d93dee 100644 --- a/packaging/bcachefs-tools.spec +++ b/packaging/bcachefs-tools.spec @@ -45,10 +45,13 @@ rm -f %{buildroot}/%{_datadir}/initramfs-tools/scripts/local-premount/bcachefs rm -f %{buildroot}/usr/lib/libbcachefs.so %files -%{_sbindir}/mount.bcachefs %{_sbindir}/bcachefs +%{_sbindir}/mount.bcachefs %{_sbindir}/fsck.bcachefs %{_sbindir}/mkfs.bcachefs +%{_sbindir}/mount.fuse.bcachefs +%{_sbindir}/fsck.fuse.bcachefs +%{_sbindir}/mkfs.fuse.bcachefs %{_mandir}/man8/bcachefs.8.gz %changelog |