Skip to content

Conversation

@leroycep
Copy link
Contributor

@leroycep leroycep commented Jan 6, 2026

Description

This PR updates bcachefs-tools to version 1.34.0 and adds a user/bcachefs-tools-ckms subpackage.

This is the same as #4863, but rebased on master and with a commit updating it to 1.34.0 (and also a commit updating to 1.31.12 that I never got around to submitting). I also changed the git branch name from bcachefs-1.31.7-ckms to user-bcachefs-tools-ckms.

I'm submitting this update because bcachefs-tools-ckms 1.31.12 doesn't compile for linux 6.18. After these changes I was able to compile the kernel module and reboot desktop computer. I will be testing it on my laptop shortly.

Currently there are two patches to the bcachefs-tools source code:

  1. A patch that fixes non-portable usage of sed and find in the Makefile.
  2. A patch to a header file replacing a macro's call to strlen with __builtin_strlen. Without the patch I get an error about compile-time constants:
libbcachefs/fs/check.c:113:36: error: initializer element is not a compile-time constant
  113 | static struct qstr lostfound_str = QSTR("lost+found");
      |                                    ^
include/linux/dcache.h:15:30: note: expanded from macro 'QSTR'
   15 | #define QSTR(n) (struct qstr)QSTR_INIT(n, strlen(n))
      |                              ^
include/linux/kernel.h:253:26: note: expanded from macro 'QSTR_INIT'
  253 | #define QSTR_INIT(n,l) { { { .len = l } }, .name = n }
      |                          ^
1 error generated.

I'm assuming that this comes down to a difference between how gcc and clang handle strlen.

Checklist

Before this pull request is reviewed, certain conditions must be met.

The following must be true for all changes:

  • I have read CONTRIBUTING.md
  • I acknowledge that overtly not following the above or the below will result in my pull request getting closed

The following must be true for template/package changes:

  • I have read Packaging.md
  • I have built and tested my changes on my machine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant