Do you see 1,3,5,7 as not running/doing nothing, or they completely removed?
I don’t know if the topology is the same for all systems, it might be different for systems that can disable HT in the firmware. I can’t disable HT in the firmware, I can only use the Xen smt=off option, which might be why I see all the cores all the time, for me smt=off just seems to set the affinity to 0,2,4,6…
Xen will balance the load across the affinity set for the domain, you can use
xl vcpu-list to see which cores are current being used by which vcpu.