[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 1bc7e5: exec: Reduce CONFIG_USER_ONLY ifdeffe
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] 1bc7e5: exec: Reduce CONFIG_USER_ONLY ifdeffenery |
Date: |
Thu, 28 Jul 2016 02:30:06 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 1bc7e522d9cf1b58f2de9c8f1737be0bb5129c35
https://github.com/qemu/qemu/commit/1bc7e522d9cf1b58f2de9c8f1737be0bb5129c35
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M bsd-user/qemu.h
M exec.c
M include/exec/exec-all.h
M linux-user/qemu.h
Log Message:
-----------
exec: Reduce CONFIG_USER_ONLY ifdeffenery
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 8b1b835035fda831b405c1947210efcf758a7ca8
https://github.com/qemu/qemu/commit/8b1b835035fda831b405c1947210efcf758a7ca8
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M exec.c
Log Message:
-----------
exec: Don't use cpu_index to detect if cpu_exec_init()'s been called
Instead use QTAIL's tqe_prev field to detect if cpu's been
placed in list by cpu_exec_init() which is always set if
QTAIL element is in list.
Fixes SIGSEGV on failure path in case cpu_index is assigned
by board and cpu.relalize() fails before cpu_exec_init() is called.
In follow up patches, cpu_index will be assigned by boards that
support cpu hot(un)plug and need stable cpu_index that doesn't
depend on order cpus are created/removed.
Signed-off-by: Igor Mammedov <address@hidden>
Reported-by: David Gibson <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: a07f953ef4ef48058c24fb50b49e6fa28bf5f5f4
https://github.com/qemu/qemu/commit/a07f953ef4ef48058c24fb50b49e6fa28bf5f5f4
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M exec.c
M include/qom/cpu.h
M qom/cpu.c
Log Message:
-----------
exec: Set cpu_index only if it's not been explictly set
It keeps the legacy behavior for all users that doesn't care
about stable cpu_index value, but would allow boards that
would support device_add/device_del to set stable cpu_index
that won't depend on order in which cpus are created/destroyed.
While at that simplify cpu_get_free_index() as cpu_index
generated by USER_ONLY and softmmu variants is the same
since none of the users support cpu-remove so far, except
of not yet released spapr/x86 device_add/delr, which
will be altered by follow up patches to set stable
cpu_index manually.
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 69382d8b3e8600b349c191394d761dcb480502cf
https://github.com/qemu/qemu/commit/69382d8b3e8600b349c191394d761dcb480502cf
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M hw/core/qdev.c
Log Message:
-----------
qdev: Fix object reference leak in case device.realize() fails
If device doesn't have parent assined before its realize
is called, device_set_realized() will implicitly set parent
to '/machine/unattached'.
However device_set_realized() may fail after that point at
several other points leaving not realized object dangling
in '/machine/unattached' and as result caller of
obj = object_new()
obj->ref == 1
object_property_set_bool(obj,..., true, "realized",...)
obj->ref == 2
if (fail)
object_unref(obj);
obj->ref == 1
will get object leak instead of expected object destruction.
Fix it by making device_set_realized() to cleanup after itself
in case of failure.
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: a15d2728a9aadeb801370adf5bf0b411a774a2d2
https://github.com/qemu/qemu/commit/a15d2728a9aadeb801370adf5bf0b411a774a2d2
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M hw/i386/pc.c
Log Message:
-----------
pc: Init CPUState->cpu_index with index in possible_cpus[]
It will enshure that cpu_index for a given cpu stays the same
regardless of the order cpus has been created/deleted.
No compat code is needed as for initial cpus index in
possible_cpus[] matches cpu_index that's been auto-allocated
in cpu_exec_init().
Tha same applies for hotplug with cpu-add command if cpus are
added sequentially in increasing order as 'id' matches cpu_index.
If cpu-add had been used for creating out-of-order cpus,
that created unmigratable instance since it were not possible
to start target with the same cpu_index using old way
of migrating instance with hotplugged cpus:
* source QEMU with CLI (-smp 1,maxcpus=3 and cpu-add id=2)
following set of cpu_index is allocated [0, 1] with
apics set [0, 2] respectivelly
* target QEMU is started with CLI -smp 2,maxcpus=3
resulting in set of cpu_index [0, 1] but with
set of apics [0, 1] wich doesn't match source.
So we don't need compat code in this case as it's never worked
and newelly added device_add support would use stable cpu_index
set by machine to begin with, so it won't have above limitation
and source QEMU could be migrated to destination regardless
of the order cpus were created.
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 9527e7bde5b59005ddb2d902973915b81b4c5b2c
https://github.com/qemu/qemu/commit/9527e7bde5b59005ddb2d902973915b81b4c5b2c
Author: Igor Mammedov <address@hidden>
Date: 2016-07-26 (Tue, 26 Jul 2016)
Changed paths:
M hw/i386/pc.c
Log Message:
-----------
Revert "pc: Enforce adding CPUs contiguously and removing them in opposite
order"
This reverts commit 4da7faaeb0c7dd3f7f233165d336c878f78fd1eb.
Since commit:
pc: init CPUState->cpu_index with index in possible_cpus[]
cpu_index is stable regardless of the order cpus were created
and QEMU instance stays migratable always so limitation added
by 4da7faaeb could be safely removed.
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 78a3930685c3159c4b8f953bd9f9e7a28655d823
https://github.com/qemu/qemu/commit/78a3930685c3159c4b8f953bd9f9e7a28655d823
Author: Greg Kurz <address@hidden>
Date: 2016-07-27 (Wed, 27 Jul 2016)
Changed paths:
M hw/core/machine.c
Log Message:
-----------
machine: Add comment to abort path in machine_set_kernel_irqchip
We're not supposed to abort when the user passes a bogus value.
Since the checking is done in visit_type_OnOffSplit(), the call
to abort() is legitimate. Let's add a comment to make it
explicit.
Signed-off-by: Greg Kurz <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: b3443f43f45e06971d87c985bb0316c1e40259c9
https://github.com/qemu/qemu/commit/b3443f43f45e06971d87c985bb0316c1e40259c9
Author: Greg Kurz <address@hidden>
Date: 2016-07-27 (Wed, 27 Jul 2016)
Changed paths:
M hw/core/qdev-properties.c
M include/hw/qdev-core.h
Log Message:
-----------
qdev: ignore GlobalProperty.errp for hotplugged devices
This patch ensures QEMU won't terminate while hotplugging a device if the
global property cannot be set and errp points to error_fatal or error_abort.
While here, it also fixes indentation of the typename argument.
Suggested-by: Eduardo Habkost <address@hidden>
Signed-off-by: Greg Kurz <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 03f28efbbb0ee521611e0eb28b45096b3598fb34
https://github.com/qemu/qemu/commit/03f28efbbb0ee521611e0eb28b45096b3598fb34
Author: Greg Kurz <address@hidden>
Date: 2016-07-27 (Wed, 27 Jul 2016)
Changed paths:
M vl.c
Log Message:
-----------
vl: exit if a bad property value is passed to -global
When passing '-global driver=host-powerpc64-cpu,property=compat,value=foo'
on the command line, without this patch, we get the following warning per
device (which means many lines if the guests has many cpus):
qemu-system-ppc64: Warning: can't apply global host-powerpc64-cpu.compat=foo:
Invalid compatibility mode "foo"
... and QEMU continues execution, ignoring the property.
With this patch, we get a single line:
qemu-system-ppc64: can't apply global host-powerpc64-cpu.compat=foo:
Invalid compatibility mode "foo"
... and QEMU exits.
The previous behavior is kept for hotplugged devices since we don't want
QEMU to exit when doing device_add.
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Greg Kurz <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Commit: 21a21b853a1bb606358af61e738abfb9aecbd720
https://github.com/qemu/qemu/commit/21a21b853a1bb606358af61e738abfb9aecbd720
Author: Peter Maydell <address@hidden>
Date: 2016-07-27 (Wed, 27 Jul 2016)
Changed paths:
M bsd-user/qemu.h
M exec.c
M hw/core/machine.c
M hw/core/qdev-properties.c
M hw/core/qdev.c
M hw/i386/pc.c
M include/exec/exec-all.h
M include/hw/qdev-core.h
M include/qom/cpu.h
M linux-user/qemu.h
M qom/cpu.c
M vl.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/ehabkost/tags/x86-pull-request' into
staging
x86 and machine queue, 2016-07-27
Highlights:
* Fixes to allow CPU hotplug/unplug in any order;
* Exit QEMU on invalid global properties.
# gpg: Signature made Wed 27 Jul 2016 15:28:53 BST
# gpg: using RSA key 0x2807936F984DC5A6
# gpg: Good signature from "Eduardo Habkost <address@hidden>"
# Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF D1AA 2807 936F 984D C5A6
* remotes/ehabkost/tags/x86-pull-request:
vl: exit if a bad property value is passed to -global
qdev: ignore GlobalProperty.errp for hotplugged devices
machine: Add comment to abort path in machine_set_kernel_irqchip
Revert "pc: Enforce adding CPUs contiguously and removing them in opposite
order"
pc: Init CPUState->cpu_index with index in possible_cpus[]
qdev: Fix object reference leak in case device.realize() fails
exec: Set cpu_index only if it's not been explictly set
exec: Don't use cpu_index to detect if cpu_exec_init()'s been called
exec: Reduce CONFIG_USER_ONLY ifdeffenery
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/51313fe4f4af...21a21b853a1b
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] 1bc7e5: exec: Reduce CONFIG_USER_ONLY ifdeffenery,
GitHub <=