The htid property defaults to 0 and hexagon_dsp.c never set it, so every CPU on the DSP machines came up as hardware thread 0.
This bug was causing h2 test failures. Signed-off-by: Brian Cain <[email protected]> --- hw/hexagon/hexagon_dsp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/hexagon/hexagon_dsp.c b/hw/hexagon/hexagon_dsp.c index 20306c28e72..81f8fbef362 100644 --- a/hw/hexagon/hexagon_dsp.c +++ b/hw/hexagon/hexagon_dsp.c @@ -124,6 +124,8 @@ static void hexagon_common_init(MachineState *machine, Rev_t rev, HexagonCPU *cpu = HEXAGON_CPU(object_new(machine->cpu_type)); qemu_register_reset(do_cpu_reset, cpu); + qdev_prop_set_uint32(DEVICE(cpu), "htid", i); + /* * CPU #0 is the only CPU running at boot, others must be * explicitly enabled via start instruction. -- 2.34.1
