Skip to content

Commit

Permalink
Remove ancient 64-btrfs.rules so systemd provided rule is used
Browse files Browse the repository at this point in the history
This solves the failure to boot when the root fs is on a btrfs handled
raid set-up. The reason it fails is typically because one or both disks
failure are not initialised before the kernel wants to mount root.

This generally affects only disks that are mounted during boot.

Solves issues #1329 and #1980
  • Loading branch information
Luke Jones committed Nov 1, 2018
1 parent ccbd952 commit 0b17763
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion conf/64-btrfs.rules
Original file line number Diff line number Diff line change
@@ -1 +1,17 @@
RUN+="/bin/mknod /dev/btrfs-control c 10 234"
# do not edit this file, it will be overwritten on update

SUBSYSTEM!="block", GOTO="btrfs_end"
ACTION=="remove", GOTO="btrfs_end"
ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end"
ENV{SYSTEMD_READY}=="0", GOTO="btrfs_end"

# let the kernel know about this btrfs filesystem, and check if it is complete
IMPORT{builtin}="btrfs ready $devnode"

# mark the device as not ready to be used by the system
ENV{ID_BTRFS_READY}=="0", ENV{SYSTEMD_READY}="0"

# reconsider pending devices in case when multidevice volume awaits
ENV{ID_BTRFS_READY}=="1", RUN+="@rootbindir@/udevadm trigger -s block -p ID_BTRFS_READY=0"

LABEL="btrfs_end"

0 comments on commit 0b17763

Please sign in to comment.