Apparently the BIOS on Gigabyte motherboards kind of sucks, and it doesn't handle boot partitions that aren't in some extremely Windows-specific format, so if you have a Gigabyte motherboard and you're getting "Boot Error", here's what to do. Stick the USB stick in a GNU/Linux computer and use fdisk to delete all the partitions (yes, you can't use Disk Manager in Windows 7 to do this, although other better partitioning programs probably can).
Then stick it in a Windows computer and use Disk Manager to create a new FAT partition 1 GiB in size. Then remove the flash stick from the Windows computer, stick it back in your Linux computer, and create a new partition in the remaining space for your persistence volume and format that as ext4.
After doing this, and creating a USB stick that boots fine on a laptop I have, I am still unable to boot it from my mining rig that has a Gigabyte (GA-EP35C) motherboard. The only difference is where before it said "Boot error" when trying to boot from the USB stick (when it was created from Linux), now it says nothing, and just stops after "Verifying DMI pool data..." (or something similar. it's the text that is on the line before the line where the "Boot error" message used to appear). I can see that the USB stick is detected, "Corsair Flash Voyager" is displayed at the top of the screen where the "DMI pool data..."-message is displayed. But it's not detected by the BIOS as a bootable device. When entering the BIOS to change boot priorities, it isn't listed here either.
If I completely erase the USB stick and put it in my Windows machine, Windows only wants to fill the whole disk up with a FAT partition. In other words it wants to create a whole disk FAT partition, which means I am unable to create another partition on the rest of the disk, to be used for persistence.
If I let fdisk "create a new empty DOS partition table" then Disk Manager in Windows is willing to create a 1 GiB FAT partition on the USB stick, but it's not bootable on the rig with the Gigabyte motherboard (not even a "Boot error" message).
Any ideas guys?