Attached is a copy of the 99-btrfs.rules file that I created, as discussed in this bug
The version of the package released in wheezy was 0.19+20120328-7.1 - without the bug fix The bug fix installs the file as /lib/udev/rules.d/80-btrfs-lvm.rules - not the same filename that was discussed in this bug report This was included in version 3.17-1.1 in jessie Anybody who created the file manually may have had two copies of it on their system after upgrading to jessie Running jessie, I observed intermittent problems with non-Btrfs filesystems failing to mount on every boot on the system where this udev file was created manually[1] In some later version of the btrfs-tools package (or its successor, btrfs-progs), the udev files were removed from the package (see debian/changelog). After upgrading to one of these newer versions of the package, either from jessie-backports or stretch, the manually created 99-btrfs.rules file was left on the system even after the 80-btrfs-lvm.rules was removed by the package upgrade. The existence of this file as a potential source of the mount problem only became apparent after upgrading the system to stretch. Running stretch, the journalctl logs appear to be more verbose than jessie and they show the 'btrfs scan' commands between attempted and failing around the same time that the ext4 mounts are attempted and failing with EBUSY. 1. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=829180
SUBSYSTEM!="block", GOTO="btrfs_lvm_end" ENV{DM_UUID}!="LVM-?*", GOTO="btrfs_lvm_end" RUN+="/sbin/modprobe btrfs" RUN+="/sbin/btrfs device scan $env{DEVNAME}" LABEL="btrfs_lvm_end"