New comment by emacsomancer on void-packages repository https://github.com/void-linux/void-packages/issues/12519#issuecomment-503410468 Comment: Ok, so debugging this was a bit tricky. The gist is this: the recentness of the kernels was a red herring, the crucial factor was whether the kernel was installed before or after the zvol swap file was created. All kernels created after swap was created end up with a dracut configuration which (apparently by default) assumes that swap will be used for resume, and when booting any of these kernel results in dracut waiting about 2 minutes trying to finding the swap partition (so these kernels do *eventually* boot). So I'll close this issue (which wasn't what it appeared) but document a possible resolution: One Potential Fix ========== I don't really use resume, so at least one easy fix for this issue is to create a dracut conf file, e.g.: /etc/dracut.conf.d/omit-resume-for-zvol-swap.conf containing: `omit_dracutmodules+=" resume "` and call `xbps-reconfigure -f` on the relevant kernels. I'm not sure if a zvol swap can be used for resume/seen at the appropriate time by dracut or not. Using Swap on ZFS root? ============== It's possible that the location of the swap partition could be specified in a way that dracut could locate it (though, again, resume not being something I typically use, I'm not sure about swap size requirements for using resume). zvol-type swap ends up being mounted on `/dev/zvol//swap`. I think dracut looks for the resume/swap to be located at `/dev/zd0`. I'll investigate further. But for now there's at least a clear fix for this issue, which turns out not to be at all what it first appeared.