[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 7237c7: qapi/machine: Fix an incorrect commen
From: |
Richard Henderson |
Subject: |
[Qemu-commits] [qemu/qemu] 7237c7: qapi/machine: Fix an incorrect comment of SMPConfi... |
Date: |
Fri, 01 Oct 2021 10:45:09 -0700 |
Branch: refs/heads/staging
Home: https://github.com/qemu/qemu
Commit: 7237c7ce772794d6be10b8b987fe4d02dfd76562
https://github.com/qemu/qemu/commit/7237c7ce772794d6be10b8b987fe4d02dfd76562
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M qapi/machine.json
Log Message:
-----------
qapi/machine: Fix an incorrect comment of SMPConfiguration
The explanation of @cores should be "number of cores per die" but
not "number of cores per thread". Let's fix it.
Fixes: 1e63fe685804 ("machine: pass QAPI struct to mc->smp_parse")
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-2-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: c2511b1632e109130df524121dfb7d2413216d3c
https://github.com/qemu/qemu/commit/c2511b1632e109130df524121dfb7d2413216d3c
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/about/deprecated.rst
M hw/core/machine.c
M qemu-options.hx
Log Message:
-----------
machine: Deprecate "parameter=0" SMP configurations
In the SMP configuration, we should either provide a topology
parameter with a reasonable value (greater than zero) or just
omit it and QEMU will compute the missing value.
The users shouldn't provide a configuration with any parameter
of it specified as zero (e.g. -smp 8,sockets=0) which could
possibly cause unexpected results in the -smp parsing. So we
deprecate this kind of configurations since 6.2 by adding the
explicit sanity check.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-3-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 5d8b5a505571b7927095015c805646f78fc56578
https://github.com/qemu/qemu/commit/5d8b5a505571b7927095015c805646f78fc56578
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M hw/i386/pc.c
Log Message:
-----------
machine: Minor refactor/fix for the smp parsers
To pave the way for the functional improvement in later patches,
make some refactor/cleanup for the smp parsers, including using
local maxcpus instead of ms->smp.max_cpus in the calculation,
defaulting dies to 0 initially like other members, cleanup the
sanity check for dies.
We actually also fix a hidden defect by avoiding directly using
the provided *zero value* in the calculation, which could cause
a segment fault (e.g. using dies=0 in the calculation).
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-4-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 9a52b508061163df4dae05e708cd2a9cd790ad04
https://github.com/qemu/qemu/commit/9a52b508061163df4dae05e708cd2a9cd790ad04
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M hw/i386/pc.c
Log Message:
-----------
machine: Uniformly use maxcpus to calculate the omitted parameters
We are currently using maxcpus to calculate the omitted sockets
but using cpus to calculate the omitted cores/threads. This makes
cmdlines like:
-smp cpus=8,maxcpus=16
-smp cpus=8,cores=4,maxcpus=16
-smp cpus=8,threads=2,maxcpus=16
work fine but the ones like:
-smp cpus=8,sockets=2,maxcpus=16
-smp cpus=8,sockets=2,cores=4,maxcpus=16
-smp cpus=8,sockets=2,threads=2,maxcpus=16
break the sanity check.
Since we require for a valid config that the product of "sockets * cores
* threads" should equal to the maxcpus, we should uniformly use maxcpus
to calculate their omitted values.
Also the if-branch of "cpus == 0 || sockets == 0" was split into two
branches of "cpus == 0" and "sockets == 0" so that we can clearly read
that we are parsing the configuration with a preference on cpus over
sockets over cores over threads.
Note: change in this patch won't affect any existing working cmdlines
but improves consistency and allows more incomplete configs to be valid.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-5-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 7d8c5a39628820f6927b8b70c8f54872f5d1a196
https://github.com/qemu/qemu/commit/7d8c5a39628820f6927b8b70c8f54872f5d1a196
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M hw/i386/pc.c
M qemu-options.hx
Log Message:
-----------
machine: Set the value of cpus to match maxcpus if it's omitted
Currently we directly calculate the omitted cpus based on the given
incomplete collection of parameters. This makes some cmdlines like:
-smp maxcpus=16
-smp sockets=2,maxcpus=16
-smp sockets=2,dies=2,maxcpus=16
-smp sockets=2,cores=4,maxcpus=16
not work. We should probably set the value of cpus to match maxcpus
if it's omitted, which will make above configs start to work.
So the calculation logic of cpus/maxcpus after this patch will be:
When both maxcpus and cpus are omitted, maxcpus will be calculated
from the given parameters and cpus will be set equal to maxcpus.
When only one of maxcpus and cpus is given then the omitted one
will be set to its counterpart's value. Both maxcpus and cpus may
be specified, but maxcpus must be equal to or greater than cpus.
Note: change in this patch won't affect any existing working cmdlines
but allows more incomplete configs to be valid.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-6-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 52082d3ba4e81bf9df23d3cd5ddfb2a620e9b267
https://github.com/qemu/qemu/commit/52082d3ba4e81bf9df23d3cd5ddfb2a620e9b267
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M hw/i386/pc.c
Log Message:
-----------
machine: Improve the error reporting of smp parsing
We have two requirements for a valid SMP configuration:
the product of "sockets * cores * threads" must represent all the
possible cpus, i.e., max_cpus, and then must include the initially
present cpus, i.e., smp_cpus.
So we only need to ensure 1) "sockets * cores * threads == maxcpus"
at first and then ensure 2) "maxcpus >= cpus". With a reasonable
order of the sanity check, we can simplify the error reporting code.
When reporting an error message we also report the exact value of
each topology member to make users easily see what's going on.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210929025816.21076-7-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: afc8e9aaa7915ebfe1af8eba6994a38b3e556ba9
https://github.com/qemu/qemu/commit/afc8e9aaa7915ebfe1af8eba6994a38b3e556ba9
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M tests/qtest/numa-test.c
Log Message:
-----------
qtest/numa-test: Use detailed -smp CLIs in pc_dynamic_cpu_cfg
Since commit 80d7835749 (qemu-options: rewrite help for -smp options),
the preference of sockets/cores in -smp parsing is considered liable
to change, and actually we are going to change it in a coming commit.
So it'll be more stable to use detailed -smp CLIs in testing if we
have strong dependency on the parsing results.
pc_dynamic_cpu_cfg currently assumes/needs that there will be 2 CPU
sockets with "-smp 2". To avoid breaking the test because of parsing
logic change, now explicitly use "-smp 2,sockets=2".
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210929025816.21076-8-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: bbb0c0ec6da8a739b02fbff941b44afc5513d6e4
https://github.com/qemu/qemu/commit/bbb0c0ec6da8a739b02fbff941b44afc5513d6e4
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M tests/qtest/numa-test.c
Log Message:
-----------
qtest/numa-test: Use detailed -smp CLIs in test_def_cpu_split
Since commit 80d7835749 (qemu-options: rewrite help for -smp options),
the preference of sockets/cores in -smp parsing is considered liable
to change, and actually we are going to change it in a coming commit.
So it'll be more stable to use detailed -smp CLIs in the testcases
that have strong dependency on the parsing results.
Currently, test_def_cpu_split use "-smp 8" and will get 8 CPU sockets
based on current parsing rule. But if we change to prefer cores over
sockets we will get one CPU socket with 8 cores, and this testcase
will not get expected numa set by default on x86_64 (Ok on aarch64).
So now explicitly use "-smp 8,sockets=8" to avoid affect from parsing
logic change.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210929025816.21076-9-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 4a0af2930a4e4f64ce551152fdb4b9e7be106408
https://github.com/qemu/qemu/commit/4a0af2930a4e4f64ce551152fdb4b9e7be106408
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/arm/virt.c
M hw/core/machine.c
M hw/i386/pc.c
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
M hw/ppc/spapr.c
M hw/s390x/s390-virtio-ccw.c
M include/hw/boards.h
M qemu-options.hx
Log Message:
-----------
machine: Prefer cores over sockets in smp parsing since 6.2
In the real SMP hardware topology world, it's much more likely that
we have high cores-per-socket counts and few sockets totally. While
the current preference of sockets over cores in smp parsing results
in a virtual cpu topology with low cores-per-sockets counts and a
large number of sockets, which is just contrary to the real world.
Given that it is better to make the virtual cpu topology be more
reflective of the real world and also for the sake of compatibility,
we start to prefer cores over sockets over threads in smp parsing
since machine type 6.2 for different arches.
In this patch, a boolean "smp_prefer_sockets" is added, and we only
enable the old preference on older machines and enable the new one
since type 6.2 for all arches by using the machine compat mechanism.
Suggested-by: Daniel P. Berrange <berrange@redhat.com>
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-10-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 69fc28a78dbff2d3414bbafce38320b4433ed583
https://github.com/qemu/qemu/commit/69fc28a78dbff2d3414bbafce38320b4433ed583
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
Log Message:
-----------
machine: Use ms instead of global current_machine in sanity-check
In the sanity-check of smp_cpus and max_cpus against mc in function
machine_set_smp(), we are now using ms->smp.max_cpus for the check
but using current_machine->smp.max_cpus in the error message.
Tweak this by uniformly using the local ms.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210929025816.21076-11-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 003f230e37d724ac52004d7f8270159da105780f
https://github.com/qemu/qemu/commit/003f230e37d724ac52004d7f8270159da105780f
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M include/hw/boards.h
Log Message:
-----------
machine: Tweak the order of topology members in struct CpuTopology
Now that all the possible topology parameters are integrated in struct
CpuTopology, tweak the order of topology members to be "cpus/sockets/
dies/cores/threads/maxcpus" for readability and consistency. We also
tweak the comment by adding explanation of dies parameter.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210929025816.21076-12-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: e4a97a893bcd7511aba812969d1fa6fe42dc1931
https://github.com/qemu/qemu/commit/e4a97a893bcd7511aba812969d1fa6fe42dc1931
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M hw/i386/pc.c
M include/hw/boards.h
Log Message:
-----------
machine: Make smp_parse generic enough for all arches
Currently the only difference between smp_parse and pc_smp_parse
is the support of dies parameter and the related error reporting.
With some arch compat variables like "bool dies_supported", we can
make smp_parse generic enough for all arches and the PC specific
one can be removed.
Making smp_parse() generic enough can reduce code duplication and
ease the code maintenance, and also allows extending the topology
with more arch specific members (e.g., clusters) in the future.
Suggested-by: Andrew Jones <drjones@redhat.com>
Suggested-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-13-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 7687b2b3edc3f29ad58e8d6593d5c10dde406c34
https://github.com/qemu/qemu/commit/7687b2b3edc3f29ad58e8d6593d5c10dde406c34
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
M include/hw/boards.h
Log Message:
-----------
machine: Remove smp_parse callback from MachineClass
Now we have a generic smp parser for all arches, and there will
not be any other arch specific ones, so let's remove the callback
from MachineClass and call the parser directly.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-14-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 2b52619994ab48504c5fc0d32a1af24159405ce0
https://github.com/qemu/qemu/commit/2b52619994ab48504c5fc0d32a1af24159405ce0
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/arm/virt.c
M hw/core/machine.c
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
M hw/ppc/spapr.c
M hw/s390x/s390-virtio-ccw.c
M include/hw/boards.h
Log Message:
-----------
machine: Move smp_prefer_sockets to struct SMPCompatProps
Now we have a common structure SMPCompatProps used to store information
about SMP compatibility stuff, so we can also move smp_prefer_sockets
there for cleaner code.
No functional change intended.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-15-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: e7f944bb94a375e8ee7469ffa535ea6e11ce59e1
https://github.com/qemu/qemu/commit/e7f944bb94a375e8ee7469ffa535ea6e11ce59e1
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
Log Message:
-----------
machine: Use g_autoptr in machine_set_smp
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 8bdfec393a2ac67df9cecc0983d130db4a6bba58
https://github.com/qemu/qemu/commit/8bdfec393a2ac67df9cecc0983d130db4a6bba58
Author: Yanan Wang <wangyanan55@huawei.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M hw/core/machine.c
Log Message:
-----------
machine: Put all sanity-check in the generic SMP parser
Put both sanity-check of the input SMP configuration and sanity-check
of the output SMP configuration uniformly in the generic parser. Then
machine_set_smp() will become cleaner, also all the invalid scenarios
can be tested only by calling the parser.
Signed-off-by: Yanan Wang <wangyanan55@huawei.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Pankaj Gupta <pankaj.gupta@ionos.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20210929025816.21076-16-wangyanan55@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 988f7b8bfeffbf521814d1e48c321f7674277512
https://github.com/qemu/qemu/commit/988f7b8bfeffbf521814d1e48c321f7674277512
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/kvm.c
Log Message:
-----------
i386: Support KVM_CAP_ENFORCE_PV_FEATURE_CPUID
By default, KVM allows the guest to use all currently supported PV features
even when they were not announced in guest visible CPUIDs. Introduce a new
"kvm-pv-enforce-cpuid" flag to limit the supported feature set to the
exposed features. The feature is supported by Linux >= 5.10 and is not
enabled by default in QEMU.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-4-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 70367f091777419f42e5f68f4206deb641335877
https://github.com/qemu/qemu/commit/70367f091777419f42e5f68f4206deb641335877
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/hyperv.txt
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/kvm.c
Log Message:
-----------
i386: Support KVM_CAP_HYPERV_ENFORCE_CPUID
By default, KVM allows the guest to use all currently supported Hyper-V
enlightenments when Hyper-V CPUID interface was exposed, regardless of if
some features were not announced in guest visible CPUIDs. hv-enforce-cpuid
feature alters this behavior and only allows the guest to use exposed
Hyper-V enlightenments. The feature is supported by Linux >= 5.14 and is
not enabled by default in QEMU.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-5-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 050716292a63f4969b32cac32b85774521738ef5
https://github.com/qemu/qemu/commit/050716292a63f4969b32cac32b85774521738ef5
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M target/i386/kvm/kvm.c
Log Message:
-----------
i386: Move HV_APIC_ACCESS_RECOMMENDED bit setting to hyperv_fill_cpuids()
In preparation to enabling Hyper-V + APICv/AVIC move
HV_APIC_ACCESS_RECOMMENDED setting out of kvm_hyperv_properties[]: the
'real' feature bit for the vAPIC features is HV_APIC_ACCESS_AVAILABLE,
HV_APIC_ACCESS_RECOMMENDED is a recommendation to use the feature which
we may not always want to give.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-6-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: e1f9a8e8c90ae54387922e33e5ac4fd759747d01
https://github.com/qemu/qemu/commit/e1f9a8e8c90ae54387922e33e5ac4fd759747d01
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/hyperv.txt
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/hyperv-proto.h
M target/i386/kvm/kvm.c
Log Message:
-----------
i386: Implement pseudo 'hv-avic' ('hv-apicv') enlightenment
The enlightenment allows to use Hyper-V SynIC with hardware APICv/AVIC
enabled. Normally, Hyper-V SynIC disables these hardware features and
suggests the guest to use paravirtualized AutoEOI feature. Linux-4.15
gains support for conditional APICv/AVIC disablement, the feature
stays on until the guest tries to use AutoEOI feature with SynIC. With
'HV_DEPRECATING_AEOI_RECOMMENDED' bit exposed, modern enough Windows/
Hyper-V versions should follow the recommendation and not use the
(unwanted) feature.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-7-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: af7228b88dbe80ed5d5258b49be8b48ab351a476
https://github.com/qemu/qemu/commit/af7228b88dbe80ed5d5258b49be8b48ab351a476
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/hyperv.txt
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/kvm.c
Log Message:
-----------
i386: Make Hyper-V version id configurable
Currently, we hardcode Hyper-V version id (CPUID 0x40000002) to
WS2008R2 and it is known that certain tools in Windows check this. It
seems useful to provide some flexibility by making it possible to change
this info at will. CPUID information is defined in TLFS as:
EAX: Build Number
EBX Bits 31-16: Major Version
Bits 15-0: Minor Version
ECX Service Pack
EDX Bits 31-24: Service Branch
Bits 23-0: Service Number
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-8-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: f701ecec2bbaae2d04985eba87924a7329534e9a
https://github.com/qemu/qemu/commit/f701ecec2bbaae2d04985eba87924a7329534e9a
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/hyperv.txt
M hw/i386/pc.c
M target/i386/cpu.c
Log Message:
-----------
i386: Change the default Hyper-V version to match WS2016
KVM implements some Hyper-V 2016 functions so providing WS2008R2 version
is somewhat incorrect. While generally guests shouldn't care about it
and always check feature bits, it is known that some tools in Windows
actually check version info.
For compatibility reasons make the change for 6.2 machine types only.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210902093530.345756-9-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: bcfdfae78f111fa3c0f81b2708098a545201bb68
https://github.com/qemu/qemu/commit/bcfdfae78f111fa3c0f81b2708098a545201bb68
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
R docs/devel/ci-definitions.rst
A docs/devel/ci-definitions.rst.inc
R docs/devel/ci-jobs.rst
A docs/devel/ci-jobs.rst.inc
R docs/devel/ci-runners.rst
A docs/devel/ci-runners.rst.inc
M docs/devel/ci.rst
Log Message:
-----------
docs: name included files ".rst.inc"
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: f9df7aac758fed5cc2fb9210ad0edba79434aeed
https://github.com/qemu/qemu/commit/f9df7aac758fed5cc2fb9210ad0edba79434aeed
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/multi-process.rst
Log Message:
-----------
docs: move notes inside the body of the document
Make all documents start with a heading.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 8b8939e44fc8315885598a9e1ee8deeea3b68a96
https://github.com/qemu/qemu/commit/8b8939e44fc8315885598a9e1ee8deeea3b68a96
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/build-system.rst
Log Message:
-----------
docs: put "make" information together in build-system.rst
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 768f14f94ec50fe57a3964fff75d8b3456b588b5
https://github.com/qemu/qemu/commit/768f14f94ec50fe57a3964fff75d8b3456b588b5
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/qgraph.rst
Log Message:
-----------
docs: reorganize qgraph.rst
Clean up the heading levels to use === --- ~~~, and move the command line
building near to the other execution steps.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: e9adb4ace229dfa742176e9ddb629dbb6a6081bc
https://github.com/qemu/qemu/commit/e9adb4ace229dfa742176e9ddb629dbb6a6081bc
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/tcg-plugins.rst
Log Message:
-----------
docs: reorganize tcg-plugins.rst
Clean up the heading levels to use === --- ~~~, and create a new "writing
plugins" section.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 9fce3601761779f14d8d1ea32e2b6abf2f704edb
https://github.com/qemu/qemu/commit/9fce3601761779f14d8d1ea32e2b6abf2f704edb
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/testing.rst
Log Message:
-----------
docs: move gcov section at the end of testing.rst
gcov testing applies to all tests, not just make check. Move it
out of the make check section.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 16e79e1b01a698908e14eda3078d4a8e7b1b9c2b
https://github.com/qemu/qemu/commit/16e79e1b01a698908e14eda3078d4a8e7b1b9c2b
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/devel/testing.rst
Log Message:
-----------
docs: reorganize testing.rst
Clean up the heading levels to use === --- ~~~ ^^^ '''. Reorganize the
outline for the Avocado part, and always include headings for the
class names.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Commit: 5f992102383ed8ed97076548e1c897c7034ed8a4
https://github.com/qemu/qemu/commit/5f992102383ed8ed97076548e1c897c7034ed8a4
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2021-10-01 (Fri, 01 Oct 2021)
Changed paths:
M docs/about/deprecated.rst
M docs/devel/build-system.rst
R docs/devel/ci-definitions.rst
A docs/devel/ci-definitions.rst.inc
R docs/devel/ci-jobs.rst
A docs/devel/ci-jobs.rst.inc
R docs/devel/ci-runners.rst
A docs/devel/ci-runners.rst.inc
M docs/devel/ci.rst
M docs/devel/multi-process.rst
M docs/devel/qgraph.rst
M docs/devel/tcg-plugins.rst
M docs/devel/testing.rst
M docs/hyperv.txt
M hw/arm/virt.c
M hw/core/machine.c
M hw/i386/pc.c
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
M hw/ppc/spapr.c
M hw/s390x/s390-virtio-ccw.c
M include/hw/boards.h
M qapi/machine.json
M qemu-options.hx
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/hyperv-proto.h
M target/i386/kvm/kvm.c
M tests/qtest/numa-test.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging
* -smp cleanpus
* Hyper-V englightenment functionality
* Documentation cleanups
# gpg: Signature made Fri 01 Oct 2021 01:11:00 PM EDT
# gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg: issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
* remotes/bonzini/tags/for-upstream: (29 commits)
docs: reorganize testing.rst
docs: move gcov section at the end of testing.rst
docs: reorganize tcg-plugins.rst
docs: reorganize qgraph.rst
docs: put "make" information together in build-system.rst
docs: move notes inside the body of the document
docs: name included files ".rst.inc"
i386: Change the default Hyper-V version to match WS2016
i386: Make Hyper-V version id configurable
i386: Implement pseudo 'hv-avic' ('hv-apicv') enlightenment
i386: Move HV_APIC_ACCESS_RECOMMENDED bit setting to hyperv_fill_cpuids()
i386: Support KVM_CAP_HYPERV_ENFORCE_CPUID
i386: Support KVM_CAP_ENFORCE_PV_FEATURE_CPUID
machine: Put all sanity-check in the generic SMP parser
machine: Use g_autoptr in machine_set_smp
machine: Move smp_prefer_sockets to struct SMPCompatProps
machine: Remove smp_parse callback from MachineClass
machine: Make smp_parse generic enough for all arches
machine: Tweak the order of topology members in struct CpuTopology
machine: Use ms instead of global current_machine in sanity-check
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Compare: https://github.com/qemu/qemu/compare/bb4aa8f59e18...5f992102383e
- [Qemu-commits] [qemu/qemu] 7237c7: qapi/machine: Fix an incorrect comment of SMPConfi...,
Richard Henderson <=