Bug 1286546

Summary: udev bcache rules vanish
Product: [Fedora] Fedora Reporter: Pierre Juhen <pierre.juhen>
Component: bcache-toolsAssignee: Rolf Fokkens <rolf>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: dracut-maint-list, harald, ignatenko, jonathan, jreznik, rolf, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-30 19:13:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Pierre Juhen 2015-11-30 08:32:10 UTC
Description of problem:

I installed an ssd as a caching device. root file system is on the cache backend.
I installed bcache-tools and built a new initramfs.

It fails to boot, because the root filesystem is not found.

I found that the file /usr/lib/udev/rules.d/69-bcache.rules is not present during boot phase.

But lsinitrd shows it's present in the initramfs...

I reinstalled bcache-tools, rebuilt initarfms a lot...

Version-Release number of selected component (if applicable):
Latest release of Fedora 23 (all components up to date).

How reproducible:
Happens systematically.

Actual results:
Booting stops with dracut prompt
Loading module bcache, registering devices and activating lvm, everything goes fine after theis manual process.

Additional info:
Becoming crazy


Thanks,

Comment 1 Harald Hoyer 2015-11-30 10:00:57 UTC
bcache-tools provides the bcache support for dracut. Reassigning.

Comment 2 Rolf Fokkens 2015-11-30 12:52:34 UTC
If lsinitrd shows it's there, and it's not in the actual initrd I strongly suspect that not the right initrd is used.

Maybe dracut is run while /boot is not proper mounted?

Consider using dracut specifying a manual fabricated initramfs name (like adding a ".manual" extension". The during boot from the grub menu modify the requested boot entry so the fabricated initramfs name is used. Now boot, and see if grub actually finds the initramfs.

Comment 3 Pierre Juhen 2015-11-30 19:13:03 UTC
Shame on me !!!

To install the cache, I copied (using dd) logical volumes from one volume group to another.

I had two copies of the filesystem with the same uuid.

It was the old one, without bcache, that provided initramfs.

Thanks Rolf, for providing the clue§