Como você usou btrfs subvolume create /foo , presumivelmente, o subvolume está localizado em @/foo no sistema de arquivos (já que subvolume @ é geralmente montado em / por convenção). Então sua montaria deveria ser:
mount -t btrfs -o subvol=@/foo /dev/sda2 /mnt/storage1/foo
E você fstab deve ler:
/dev/sda2 /mnt/storage1/foo btrfs defaults,subvol=@/foo 0 0
O Wiki btrfs tem mais informações sobre o layout do subvolume , o que pode ser útil para o entendimento.