[linux] [systemd] [mkinitcpio] failed boot with root on btrfs multi-device

after a recent kernel update (3.17.2 to 3.17.3) all my systems with root on btrfs multi-device setup fail too boot with:

BTRFS: open_ctree failed

...this turns out be a result of failure to read the device list. a simple "btrfs device scan" and mounting root by hand fixes things. after some googling, it seems to be the btrfs module is not being loaded at boot anymore. adding it to MODULES= in /etc/mkinitcpio.conf fixes things but that's just a workaround.

i'm not sure if this a kernel's, udev's or initcpio's (or the btrfs initcpio hook) fault but is used to work perfectly and is now broken.

unfortunately i can't pinpoint the exact versions by experiments as all my multi-device systems are production, sorry. see the linked threads in bbs for more info:

https://bbs.archlinux.org/viewtopic.php?id=189845
https://bbs.archlinux.org/viewtopic.php?id=189987

all in all, it would be nice to make an official notice because:
1) it breaks working systems
2) it takes quite some time to debug this
3) it's quite simple to ruin your filesystem while trying to "fix" it because the error is quite cryptic and fools you into thinking something went wrong with the filesystem itself

thanks!