GEOM is supposed to be topology-agnostic, but the GPT and BSD partition code has arbitrary restrictions on nesting that are annoying in cases such as running VMs on raw partitions (since the VM's partitioning scheme is not visible to the host).
This patch (which is just what I'm running locally, it still needs some cleanup e.g. for comments) adds sysctls to disable the restrictions except in the case of BSD label partitions with offset 0 (where we need to avoid recursively recognizing the label).