Hi!The simple solution (which I'm surprised nobody else has suggested yet) is to build everything but the driver for your root device as a module. This will prevent anything else from getting enumerated first, and works regardless of whether or not your using an initrd and independently of what root= format you use.
It seems that in v4.8-rc0, /dev/sdX got reordered, and now USB devices
are probed before SATA drivers. That is pretty anti-social. It
broke my boot on my primary machine, and unfortunately due to BIOS
problems (keyboard does not work when connected through a hub) it is
less fun than it should be.