Hi Paul,
If another opinion helps, I've done some funky disk layouts at various times, and I also think that if you need partitioning above the LUKS layer, you'd do better to use LVM than GPT. GPT is intended to be used at the lowest level of the stack, whereas LVM is well-supported at pretty much any level. If you do go ahead with it, double-check that you won't get block alignment issues in that stack that could affect IO performance.
Thanks for your input. (I already checked alignment of my setup.)
However, if you say that you don't need the flexibility of LVM, I'd certainly first try btrfs directly on top of LUKS.
If I did not want to have a swap partition, I'd to that for sure. Another possible layout which just comes to mind is GPT +-LUKS | +-Btrfs +-LUKS +-SWAP I think that should work with hibernation, too, and GPT would be on the right place + still no LVM :) Maye I'll just try different layouts over time, haven't experimented much yet.
Final consideration: if you want GRUB to open a LUKS container and then load stage 2 from btrfs, you'll need a decent amount of storage for the GRUB 1st stage, which on a traditional setup goes in free space you need to account for after the MBR (or on the EFI partition for UEFI setups). In your case, as the whole disk is LUKS and you have no partition table, have you considered where the GRUB 1st stage will be stored? I use a USB stick to boot GRUB stage 1 on my encrypted machines, and that may work for you too.
As mentioned in my initial post, I have GRUB2 along with (deblobbed) coreboot stored in the SPI flash chip (so no BIOS here). It's very convenient :) Regards, Merlin -- Merlin Büge <toni@bluenox07.de>