summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-04-15fixup! Add support for FS_IOC_GETFSSYSFSPATHKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-15Fix bchu_fs_open_by_dev()Kent Overstreet
- we can now correctly open by parsing sysfs, instead of falling back to reading the superblock and grabbing the UUID - non-UUID filesystem names now work Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-15cmd_migrate: adjust space reserved for new fs metadataKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-14Merge pull request #375 from xarblu/user-rustflagskoverstreet
Preserve RUSTFLAGS from environment
2025-04-14Preserve RUSTFLAGS from environmentXarblu
Since commit 3666da87f249b23b2c1f506e0d4157fd56c543e2 the Makefile fully replaced RUSTFLAGS which users might want to modify e.g. to use other linkers via -Clinker=*
2025-04-13Add support for FS_IOC_GETFSSYSFSPATHKent Overstreet
With single device mode we won't always show up in sysfs by UUID, but the new VFS ioctl handles this nicely. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13Update bcachefs sources to 2f9361370129 bcachefs: Improve opts.degradedKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13cmd_migrate: use correct bucket sizeKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13xclose()Kent Overstreet
Add a helper to check for close errrors - especially bad file descriptors, that can be a fun source of heisenbugs. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13reshuffle device_cmds(), data_cmds()Kent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13cmd_format: --source, --no_initialize are incompatibleKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13cmd_format: Don't initialize in verbose modeKent Overstreet
Verbose is excessive here. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13cmd_format: make build_fs() staticKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13Merge pull request #372 from iav/set_deb_versionkoverstreet
Add changelog record into debian package to set .deb v1.25.1
2025-04-13Fix build with gcc 11Kent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-13Add changelog record into debian package to set .deb v1.25.1Igor Velkov
Signed-off-by: Igor Velkov <iav@iav.lv>
2025-04-13posix_to_bcachefs: Process dirents in sorted orderKent Overstreet
This improves reproducability when producing images. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-05bcachefs-tools: add missing "fs top" command to manualIntegral
This patch adds the missing "fs top" command to manual. Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-04-01v1.25.1v1.25.1Kent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31refactor: make bch_bindgen pass clippyThomas Mühlbacher
Do only what is minimally necessary for these checks to pass, I guess. Signed-off-by: Thomas Mühlbacher <tmuehlbacher@posteo.net> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31fix(nix): allow msrv test to have warningsThomas Mühlbacher
It is otherwise inconvenient or maybe in other cases even impossible to have clippy pass with both the current Rust version as well as the MSRV Rust version. (e.g. `clippy::missing_transmute_annotations` is not yet known to our current MSRV.) Signed-off-by: Thomas Mühlbacher <tmuehlbacher@posteo.net> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31format: Ensure bcachefs module is loaded before checking versionKent Overstreet
this prevents accidentally formatting with a version unsupported by the running kernel Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31fix: use cargo workspaceThomas Mühlbacher
This way bch_bindgen actually gets used by various cargo subcommands, like clippy. Signed-off-by: Thomas Mühlbacher <tmuehlbacher@posteo.net> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31chore(nix): structure github CI nix flake checksThomas Mühlbacher
Makes it way easier to identify CI failures for people who try to use github for contributions. Signed-off-by: Thomas Mühlbacher <tmuehlbacher@posteo.net> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-31bcachefs-tools: add fs_usage & return -EINVAL when no matching subcommandIntegral
Add the missing usage function for "fs" subcommand; when no matching subcommand exists, print the usage and return -EINVAL. Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-30Update bcachefs sources to 7fdc3fa3cb5f bcachefs: Log original key being ↵Kent Overstreet
moved in data updates
2025-03-30list_journal: fix transaction filter extent matchingKent Overstreet
Giving a single pos for the transaction filter now correctly matches against extents. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-29Update bcachefs sources to 0a2abe7ce837 bcachefs: Don't use designated ↵Kent Overstreet
initializers for disk_accounting_pos Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-28cmd_fs_usage: Fix kernel version checkKent Overstreet
This needed an access() check, like the other uses, instead of exiting if it can't be read. Factor out a small common helper for this. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-28bcachefs-tools: hide FUSE in usage when BCACHEFS_FUSE disabledIntegral
When BCACHEFS_FUSE is disabled or not defined, FUSE section shouldn't be displayed in bcachefs usage (--help). Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-27bcachefs-tools: make targets of subvolume create/delete requiredIntegral
Currently, when no targets are provided for "bcachefs subvolume create" or "bcachefs subvolume delete", it will exit silently with code 0. Make targets (arguments) required to solve this problem. This patch solves issue https://github.com/koverstreet/bcachefs/issues/766. Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-26fsck: Kill -R, --reconstruct_allocKent Overstreet
We don't want users hitting this accidentally, and if needed for some strange reason (it shouldn't be), it can still be specified via -o. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-26bcachefs-tools: fix build failure by fixing of C header filenameIntegral
C header filename in `c_src/cmd_fusemount.c` hasn't been updated after renaming `libbcachefs/fs-common.h`. Updating the filename to fix build failure. Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-26migrate_superblock: make sure we remove old superblockKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-25format: fix minimum bucket nr checkKent Overstreet
2025-03-25mount: Parse bcachefs options, and pass them to mount helperKent Overstreet
This fixes the migrate test - we need to handle the sb=# option. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-25rust binding for parse_mount_opts()Kent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-25Update bcachefs sources to 1392e502d48b bcachefs: Add an "ignore unknown" ↵Kent Overstreet
option to bch2_parse_mount_opts() Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-24Migrate tool fixesKent Overstreet
Migrate now works: there is an inconsequential free space inconsistency after marking the new superblock (in migrate_superblock), which we're hacking around with a fsck. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-23format: kill min_size()Kent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-23format: Redo bucket size calculationsKent Overstreet
bucket size now takes into account system memory and amount of memory required to fsck: on very large filesystems it will automatically scale up bucket size to ensure we can fsck. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-23bch2_format() now takes a darray of dev_optsKent Overstreet
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21chore(nix): rm unused attr build inputThomas Mühlbacher
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21feat(nix): add a CI check that builds on 32-bitThomas Mühlbacher
Picked armv7l-linux but i686-linux would probably also work. Not sure which one is more important to check for. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21feat(nix): add an MSRV build to CIThomas Mühlbacher
Having a build that uses the actual version of Rust specified in Cargo.toml should allow us to catch issues with breaking MSRV compat more easily. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21feat(nix): enable cross compilationThomas Mühlbacher
Adds packages for every member of systems from any of the systems. Since rust-overlay is more or less basically like rustup, we get to just have all of those targets without having to build quite as much of the toolchain. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21fix(makefile): locate built bin with CARGO_BUILD_TARGET setThomas Mühlbacher
When this environment variable is set, e.g. for some cross compile setups, the target dir is nested a little further. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21fix(key): replace c_str macro with `c""` literalThomas Mühlbacher
According to the MSRV in Cargo.toml, we can use this now. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21feat(nix): replace fenix with rust-overlayThomas Mühlbacher
We're going to use rust-overlay for setting up an MSRV build. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2025-03-21feat(nix): open up support to more architecturesThomas Mühlbacher
This means that the flake can now be built for the following architectures: - aarch64-linux - armv6l-linux - armv7l-linux - i686-linux - powerpc64le-linux - riscv64-linux - x86_64-linux It doesn't mean that it's necessarily going to work perfectly on all of these architecture and binary cache support is not available for a lot of them either. But at least it let's you build for them if you want to. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>