diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2024-05-09 10:11:39 +0200 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2024-05-09 10:11:39 +0200 |
commit | 937e2cb759589105fb73f796c11fe7ae80b0d66e (patch) | |
tree | 68f50084cce77464b51b7f6916bfc777c4aa04f2 /hw | |
parent | a016dd50052924d0de255e31b9b9f6a188ebc08b (diff) | |
parent | 5872966db7abaa7f8753541b7a9f242df9752b50 (diff) | |
download | qemu-937e2cb759589105fb73f796c11fe7ae80b0d66e.zip qemu-937e2cb759589105fb73f796c11fe7ae80b0d66e.tar.gz qemu-937e2cb759589105fb73f796c11fe7ae80b0d66e.tar.bz2 |
Merge tag 'pull-loongarch-20240509' of https://gitlab.com/gaosong/qemu into staging
pull-loongarch-20240509
# -----BEGIN PGP SIGNATURE-----
#
# iLMEAAEKAB0WIQS4/x2g0v3LLaCcbCxAov/yOSY+3wUCZjyDAgAKCRBAov/yOSY+
# 33cfA/4jE0x+eLAT161caSwM3wBOfZRClfUhXdkxLP6GvWbACVQ8l0rEZiw2PuI8
# DFReU2gqs7wAfYKt7Yy62xXlCw1B3aSUzE45gS2TGIP1GqKBwigvpW4i1SgiOoMX
# 4TA+GG16KgR9zaxO48bjjyJ1epc7S3SxdAL09p2U08D9EdSwCA==
# =RLFu
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 09 May 2024 10:02:10 AM CEST
# gpg: using RSA key B8FF1DA0D2FDCB2DA09C6C2C40A2FFF239263EDF
# gpg: Good signature from "Song Gao <m17746591750@163.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: B8FF 1DA0 D2FD CB2D A09C 6C2C 40A2 FFF2 3926 3EDF
* tag 'pull-loongarch-20240509' of https://gitlab.com/gaosong/qemu:
target/loongarch: Put cpucfg operation before CSR register
target/loongarch: Add TCG macro in structure CPUArchState
hw/loongarch: Refine default numa id calculation
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/loongarch/virt.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c index 8520364..f0640d2 100644 --- a/hw/loongarch/virt.c +++ b/hw/loongarch/virt.c @@ -1182,15 +1182,14 @@ static CpuInstanceProperties virt_cpu_index_to_props(MachineState *ms, static int64_t virt_get_default_cpu_node_id(const MachineState *ms, int idx) { - int64_t nidx = 0; + int64_t socket_id; if (ms->numa_state->num_nodes) { - nidx = idx / (ms->smp.cpus / ms->numa_state->num_nodes); - if (ms->numa_state->num_nodes <= nidx) { - nidx = ms->numa_state->num_nodes - 1; - } + socket_id = ms->possible_cpus->cpus[idx].props.socket_id; + return socket_id % ms->numa_state->num_nodes; + } else { + return 0; } - return nidx; } static void virt_class_init(ObjectClass *oc, void *data) |