I'm also very sorry, but I have a slightly different opinion...

>  accel/tcg/user-exec-stub.c |  4 +++
>  hw/core/cpu-common.c       |  2 +-
>  include/hw/core/cpu.h      |  8 +++++
>  system/cpus.c              |  6 +++-
>  target/alpha/cpu.c         |  2 ++
>  target/arm/cpu.c           |  2 ++
>  target/avr/cpu.c           |  2 ++
>  target/hexagon/cpu.c       |  2 ++
>  target/hppa/cpu.c          |  2 ++
>  target/i386/cpu.c          | 61 +++++++++++++++++++-------------------
>  target/loongarch/cpu.c     |  2 ++
>  target/m68k/cpu.c          |  2 ++
>  target/microblaze/cpu.c    |  2 ++
>  target/mips/cpu.c          |  2 ++
>  target/openrisc/cpu.c      |  2 ++
>  target/ppc/cpu_init.c      |  2 ++
>  target/riscv/cpu.c         |  2 ++
>  target/rx/cpu.c            |  2 ++
>  target/s390x/cpu.c         |  2 ++
>  target/sh4/cpu.c           |  2 ++
>  target/sparc/cpu.c         |  2 ++
>  target/tricore/cpu.c       |  2 ++
>  target/xtensa/cpu.c        |  2 ++
>  23 files changed, 85 insertions(+), 32 deletions(-)
> 
I have some doubts about the necessity of changing the initialization of
nr_cores/nr_threads, because you can access the machine's topology info
via machine_topo_get_threads_per_socket(), which gives the same result as
`nr_cores * nr_threads`.

Especially, the TDX feature check hook is also within the context of
`current_machine`, so why not check if TDX's HT is consistent with QEMU's
emulation in the TDX hook?

For this reason, and based on my comment on patch 2, I think checking HT
in the TDX hook or even ignoring HT, would be a more straightforward and
less impactful solution.

-Zhao


Reply via email to