List Archive: gentoo-genkernel
Note: Due to technical difficulties, the Archives are currently not up to date.
provides an alternative service for most mailing lists.c.f. bug 424647
Alas, here I am self-replying a few hours later...
I figured out how to get everything running properly with the Dracut initramfs, though I'm afraid I'm stuck at the 6th stage of debugging  on this one... My system didn't have udev set to start at any runlevel. Adding it to boot made everything work properly with both the Dracut and classic initramfs. I haven't the slightest idea how it worked with the classic Genkernel initramfs, but I guess I'll take it...
So all told, I have some genkernel patches and some ZFS patches (all for the Dracut module) to contribute. I'll pass along the ZFS changes upstream, though I'm not sure if that's something that Dracut would eventually want to pull in? I think for the time being given that ZFSonLinux is rather actively evolving, it might make sense to leave the modules over there until things quiet down a bit. As it is, if you install the Dracut branch of Genkernel, Dracut itself, and the git version of ZFS, all of the files end up in the right places so everything works together. Merging them into Dracut probably doesn't buy anything right now.
Patches are attached, and everything's in a public git repo if some other format is desired. For the record, this is all released under GPL-2 or any later version at your option.
As far as a summary of changes, here's what I ended up doing:
https://github.com/pendor/gentoo-zfs-overlay/, branch master
ebuild: (Versus the stock -9999 ebuild in portage)
* Change git to dracut branch of forked repo
* Add dep for Dracut
* Add use flag based dep for ZFS (explicit on -9999 version for now as there's been no release with the necessary changes)
https://github.com/pendor/genkernel-zfs, branch dracut
genkernel: (Versus dracut branch from git.overlays.gentoo.org)
* Remove -nonet flag from xsltproc call (couldn't build with it set)
* Add 'zfs' to list of Dracut modules in gen_dracut.sh
* Add '--zfs' flag to command line & ZFS setting to conf file, update docs to match.
* Pass log level to Dracut based on Genkernel's log level
* Try to catch Dracut failures and die rather than reporting success after broken initramfs.
I also made some minor changes to the zfs-9999 ebuild originally taken from the Science overlay. The most important is the creation of /etc/hostid if it doesn't exist as Gentoo's hostid binary doesn't appear to write that file if it doesn't exist.
On Jul 3, 2011, at 12:33 PM, Zachary Bedell wrote:
> I've managed to make a bit of progress with getting Genkernel/Dracut/ZFS to all play nicely together. I'm running into some trouble with devices after the initramfs is actually done, and I'm not sure if I'm just hitting the current limitations of the Genkernel/Dracut branch or if there's something silly I might be doing. My first suspicion is that Dracut's using udev while the rest of my system is setup for mdev is probably the source of my issues, but my knowledge of the various device manager packages is pretty limited at this point.
PGP.sig (This is a digitally signed message part)