Building ZFS into your kernel does not currently permit you to boot with a ZFS rootfs because there is no way to import the pool to permit the rootfs mount to work. For now, you will need to use an initramfs. I am developing a patch that should enable the rootfs mount to work, but it is not ready yet.

With that said, root=ZFS=rpool/ROOT/gentoo is a flag for the initramfs. When the patch is available, your kernel commandline would contain something like "root=/dev/sda1 rootfstype=zfs zfs.zfs_bootfs=rpool/ROOT/gentoo". My plan is to make setting zfs.zfs_bootfs optional, although I do not have that working yet. The patch itself is also not working yet because the kernel will panic during its initialization procedure. Hopefully, I will be able to solve that problem soon.

It sounds like the pool import was not done correctly. Type "shell" to get a debug shell. Then use the zpool command to fix things. That probably would involve zpool status, zpool export rpool and zpool import -f -N rpool. Then type control-d to continue the boot process. You might want to regenerate your initramfs afterward.

Installing genkernel-next-18 did not help, unfortunately. Besides that, the system is just giving kernel panics, and hence I don't get any shell when it's unable to properly import the pool. I also tried to re-create the zpool.cache file and initramfs again, still just kernel panic.

----
Finally
After adding --udev and --disklabel to my genkernel line (I think udev was the necessary one), the resulting initramfs gave me a successful boot. It feels really good to have made it work after all this tinkering and tons of reboots. _________________Dive into Gentoo Linux and emerge into a new world