On 03/24/2015 06:26 PM, Igor Mammedov wrote:
On Tue, 24 Mar 2015 17:34:29 +0800
Zhu Guihua wrote:
On 03/23/2015 08:47 PM, Igor Mammedov wrote:
On Mon, 23 Mar 2015 18:59:28 +0800
Zhu Guihua wrote:
On 03/16/2015 10:59 PM, Igor Mammedov wrote:
[...]
diff --git a/hw/i386/acpi-dsdt-mem-ho
Stefan Hajnoczi writes:
> On Wed, Dec 10, 2014 at 11:23:45PM -0600, Richard Tollerton wrote:
>> The 8254x driver in certain versions of Phar Lap ETS hasn't been
>> initializing the e1000 device properly in qemu. It looks like the driver
>> is relying on two specific pieces of behavior which (anec
On Tue, Mar 24, 2015 at 06:14:44PM -0400, Cole Robinson wrote:
> I'm hitting an error migrating from stock v2.2.0 to git master:
>
> 2015-03-24T21:42:07.731317Z qemu-system-x86_64: error while loading state for
> instance 0x0 of device ':00:05.0/virtio-console'
> 2015-03-24T21:42:07.731392Z qe
On Wed, Mar 25, 2015 at 11:07:10AM +1100, David Gibson wrote:
> On Mon, Mar 23, 2015 at 07:05:43PM +0530, Bharata B Rao wrote:
> > Advertise CPU DR-capability to the guest via device tree.
> >
> > Signed-off-by: Bharata B Rao
> > Signed-off-by: Michael Roth
> >[spapr_drc_reset im
On Mon, Mar 23, 2015 at 07:05:56PM +0530, Bharata B Rao wrote:
> Move cpu_exec_init() call from instance_init to realize. This allows
> any failures from cpu_exec_init() to be handled appropriately.
>
> Also add cpu_exec_exit() call from unrealize.
This still leaves all non-ppc archs not ever cal
On Mon, Mar 23, 2015 at 07:05:54PM +0530, Bharata B Rao wrote:
> Add an Error argument to cpu_exec_init() to let users collect the
> error. Change all callers to currently pass NULL error argument. This change
> is needed for the following reasons:
>
> - A subsequent commit changes the CPU enumera
On Mon, Mar 23, 2015 at 07:05:55PM +0530, Bharata B Rao wrote:
> Currently CPUState.cpu_index is monotonically increasing and a newly
> created CPU always gets the next higher index. The next available
> index is calculated by counting the existing number of CPUs. This is
> fine as long as we only
On 03/25/2015 10:41 AM, Alex Williamson wrote:
On Wed, 2015-03-25 at 09:53 +0800, Chen Fan wrote:
On 03/16/2015 10:09 PM, Alex Williamson wrote:
On Mon, 2015-03-16 at 15:35 +0800, Chen Fan wrote:
On 03/16/2015 11:52 AM, Alex Williamson wrote:
On Mon, 2015-03-16 at 11:05 +0800, Chen Fan wrote
On Mon, Mar 23, 2015 at 07:05:53PM +0530, Bharata B Rao wrote:
> Support CPU hotplug via device-add command. Set up device tree
> entries for the hotplugged CPU core and use the exising EPOW event
> infrastructure to send CPU hotplug notification to the guest.
>
> Signed-off-by: Bharata B Rao
> -
Currently, throttle timers won't make any progress when VCPU is not
running, which would stall the request queue in utils, qtest, vm
suspending, and live migration without special handling.
Block jobs are confusingly inconsistent between with and without
throttling: if user sets a bps limit, start
On Wed, 2015-03-25 at 09:53 +0800, Chen Fan wrote:
> On 03/16/2015 10:09 PM, Alex Williamson wrote:
> > On Mon, 2015-03-16 at 15:35 +0800, Chen Fan wrote:
> >> On 03/16/2015 11:52 AM, Alex Williamson wrote:
> >>> On Mon, 2015-03-16 at 11:05 +0800, Chen Fan wrote:
> On 03/14/2015 06:34 AM, Alex
On Mon, Mar 23, 2015 at 07:05:49PM +0530, Bharata B Rao wrote:
Again, this needs a commit message explaining why the new abstraction
is valuable.
> Signed-off-by: Bharata B Rao
> Signed-off-by: Andreas Färber
> ---
> hw/ppc/Makefile.objs| 1 +
> hw/ppc/cpu-core.c | 46 ++
On Mon, Mar 23, 2015 at 07:05:51PM +0530, Bharata B Rao wrote:
> Keep cpu_model field in MachineState uptodate so that it can be used
> from the CPU hotplug path.
>
> Signed-off-by: Bharata B Rao
Reviewed-by: David Gibson
--
David Gibson| I'll have my music baroque, and my
On Mon, Mar 23, 2015 at 07:05:50PM +0530, Bharata B Rao wrote:
> Add CPU hotplug handler to spapr machine class and let the plug handler
> initialize spapr CPU specific initialization bits for a realized CPU.
> This lets CPU boot path and hotplug path to share as much code as possible.
>
> Signed-
On Mon, Mar 23, 2015 at 07:05:48PM +0530, Bharata B Rao wrote:
> From: Andreas Färber
This really wants a commit message explaining the function of this new
abstraction.
>
> Signed-off-by: Andreas Färber
> Signed-off-by: Bharata B Rao
> ---
> hw/cpu/Makefile.objs| 2 +-
> hw/cpu/socket.
On Mon, Mar 23, 2015 at 07:05:52PM +0530, Bharata B Rao wrote:
> ppc machine init functions create individual CPU threads. Change this
> for sPAPR by switching to socket creation. CPUs are created recursively
> by socket and core instance init routines.
>
> TODO: Switching to socket level CPU crea
On Wed, 2015-03-25 at 09:33 +0800, Chen Fan wrote:
> On 03/16/2015 10:09 PM, Alex Williamson wrote:
> > On Mon, 2015-03-16 at 15:35 +0800, Chen Fan wrote:
> >> On 03/16/2015 11:52 AM, Alex Williamson wrote:
> >>> On Mon, 2015-03-16 at 11:05 +0800, Chen Fan wrote:
> On 03/14/2015 06:34 AM, Alex
On 03/16/2015 10:09 PM, Alex Williamson wrote:
On Mon, 2015-03-16 at 15:35 +0800, Chen Fan wrote:
On 03/16/2015 11:52 AM, Alex Williamson wrote:
On Mon, 2015-03-16 at 11:05 +0800, Chen Fan wrote:
On 03/14/2015 06:34 AM, Alex Williamson wrote:
On Thu, 2015-03-12 at 18:23 +0800, Chen Fan wrote
On Mon, Mar 23, 2015 at 07:05:47PM +0530, Bharata B Rao wrote:
> Factor out bits of sPAPR specific CPU initialization code into
> a separate routine so that it can be called from CPU hotplug
> path too.
>
> Signed-off-by: Bharata B Rao
Reviewed-by: David Gibson
--
David Gibson
On Mon, Mar 23, 2015 at 07:05:46PM +0530, Bharata B Rao wrote:
> Reorganize CPU device tree generation code so that it be reused from
> hotplug path. CPU dt entries are now generated from spapr_finalize_fdt()
> instead of spapr_create_fdt_skel().
>
> Signed-off-by: Bharata B Rao
> ---
> hw/ppc/s
> -Original Message-
> From: Stefan Berger [mailto:stef...@linux.vnet.ibm.com]
> Sent: Tuesday, March 24, 2015 11:22 PM
> To: Xu, Quan; Ian Campbell
> Cc: ke...@koconnor.net; qemu-devel@nongnu.org;
> stefano.stabell...@eu.citrix.com; xen-de...@lists.xen.org; Jan Beulich;
> wei.l...@citrix
On 24.03.2015 18:30, Sergey Fedorov wrote:
> On 24.03.2015 17:48, Peter Maydell wrote:
>> On 25 March 2015 at 00:31, Sergey Fedorov wrote:
>>> On 24.03.2015 17:23, Peter Maydell wrote:
On 25 March 2015 at 00:18, Sergey Fedorov wrote:
> This model uses spin table boot method.
Yes,
On 03/16/2015 10:09 PM, Alex Williamson wrote:
On Mon, 2015-03-16 at 15:35 +0800, Chen Fan wrote:
On 03/16/2015 11:52 AM, Alex Williamson wrote:
On Mon, 2015-03-16 at 11:05 +0800, Chen Fan wrote:
On 03/14/2015 06:34 AM, Alex Williamson wrote:
On Thu, 2015-03-12 at 18:23 +0800, Chen Fan wrote
On 24.03.2015 17:48, Peter Maydell wrote:
> On 25 March 2015 at 00:31, Sergey Fedorov wrote:
>> On 24.03.2015 17:23, Peter Maydell wrote:
>>> On 25 March 2015 at 00:18, Sergey Fedorov wrote:
This model uses spin table boot method.
>>> Yes, I noticed, that's a strong reason why I don't want t
On 2015/3/24 18:40, Ian Campbell wrote:
On Tue, 2015-03-24 at 18:31 +0800, Chen, Tiejun wrote:
NB, the libxl ones are broken and not even compiled right now, you can
ignore them.
Looks this is still compiled now.
xc is, xl is not, I am sure of that.
Indeed, you're right :)
I don't know
On 2015/3/24 22:50, Ian Campbell wrote:
On Mon, 2015-03-23 at 09:17 +0800, Tiejun Chen wrote:
Although we already have 'gfx_passthru' in b_info, this doesn' suffice
Fixed.
^t
after we want to handle IGD specifically. Now we
On 25 March 2015 at 00:31, Sergey Fedorov wrote:
> On 24.03.2015 17:23, Peter Maydell wrote:
>> On 25 March 2015 at 00:18, Sergey Fedorov wrote:
>>> This model uses spin table boot method.
>> Yes, I noticed, that's a strong reason why I don't want to
>> add it if we can avoid it :-)
>
> Why not?
On 24.03.2015 17:23, Peter Maydell wrote:
> On 25 March 2015 at 00:18, Sergey Fedorov wrote:
>> This model uses spin table boot method.
> Yes, I noticed, that's a strong reason why I don't want to
> add it if we can avoid it :-)
Why not? :-)
>
>> So it enables SMP on AArch64 in TCG mode.
> We al
On Mon, Mar 23, 2015 at 07:05:43PM +0530, Bharata B Rao wrote:
> Advertise CPU DR-capability to the guest via device tree.
>
> Signed-off-by: Bharata B Rao
> Signed-off-by: Michael Roth
>[spapr_drc_reset implementation]
> Reviewed-by: David Gibson
> ---
> hw/ppc/spapr.c | 29 ++
On Mon, Mar 23, 2015 at 07:05:45PM +0530, Bharata B Rao wrote:
> Add support for ibm,lrdr-capacity since this is needed by the guest
> kernel to know about the possible hot-pluggable CPUs and Memory. With
> this, pseries kernels will start reporting correct maxcpus in
> /sys/devices/system/cpu/poss
On Mon, Mar 23, 2015 at 07:05:42PM +0530, Bharata B Rao wrote:
> From: Michael Roth
>
> Introduce an sPAPRMachineClass sub-class of MachineClass to
> handle sPAPR-specific machine configuration properties.
>
> The 'dr_phb[cpu,lmb]_enabled' field of that class can be set as
> part of machine-spec
On 25 March 2015 at 00:18, Sergey Fedorov wrote:
> This model uses spin table boot method.
Yes, I noticed, that's a strong reason why I don't want to
add it if we can avoid it :-)
> So it enables SMP on AArch64 in TCG mode.
We already support SMP on AArch64 in TCG mode using PSCI.
-- PMM
On 24.03.2015 17:13, Peter Maydell wrote:
> On 24 March 2015 at 23:55, Sergey Fedorov wrote:
>> These patches add support for ARM Fixed Virtual Platform Versatile Express
>> board. ARM VFP VE is similar to hardware Versatile Express boards. So these
>> changes rely largely on existing QEMU VE su
On 25 March 2015 at 00:10, Peter Maydell wrote:
> So why do only the ARM boards get fixes here?
...ah, I see you've submitted patches for other boards too,
you just didn't put them together into a single series. Sorry.
-- PMM
On 24 March 2015 at 23:55, Sergey Fedorov wrote:
> These patches add support for ARM Fixed Virtual Platform Versatile Express
> board. ARM VFP VE is similar to hardware Versatile Express boards. So these
> changes rely largely on existing QEMU VE support code. First two patches are
> prerequisites
On 24 March 2015 at 21:24, Dirk Müller wrote:
> Commit 0b183fc871:"memory: move mem_path handling to
> memory_region_allocate_system_memory" split memory_region_init_ram and
> memory_region_init_ram_from_file. Also it moved mem-path handling a step
> up from memory_region_init_ram to memory_region
This patch allows to boot AA64 linux kernel in SMP mode with DTB
generated from 'arch/arm64/boot/dts/rtsm_ve-aemv8a.dts' of Linux kernel
source code.
CPU and GIC creation parts are adaptation of code from "hw/arm/virt.c".
Signed-off-by: Sergey Fedorov
---
hw/arm/vexpress.c | 137 +++
These patches add support for ARM Fixed Virtual Platform Versatile Express
board. ARM VFP VE is similar to hardware Versatile Express boards. So these
changes rely largely on existing QEMU VE support code. First two patches are
prerequisites for the final patch which adds FVP VE board support itsel
Require secondary CPU release address to be specified explicitly in each
daughterboard info structure.
Signed-off-by: Sergey Fedorov
---
hw/arm/vexpress.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c
index 8496c16..97ccf15 100644
-
This default secondary loader is used to bring up secondary CPUs using
spin table boot method.
Signed-off-by: Sergey Fedorov
---
hw/arm/boot.c | 26 --
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index a48d1b2..2bff2f2 1006
On 25/03/2015 00:40, Andreas Färber wrote:
> Am 25.03.2015 um 00:11 schrieb Max Filippov:
>> On Wed, Mar 25, 2015 at 2:03 AM, François Revol wrote:
>>> On 24/03/2015 23:56, Max Filippov wrote:
On Wed, Mar 25, 2015 at 1:26 AM, Andreas Färber wrote:
> Am 24.03.2015 um 00:36 schrieb Alexand
On 24 March 2015 at 20:00, Paolo Bonzini wrote:
> On 24/03/2015 19:06, Peter Maydell wrote:
>> I think this is where we disagree. I see ld/st*_phys as being
>> really generic -- they take an AddressSpace, after all, and
>> part of the same family with address_space_read &c. If you
>> don't leave t
Am 25.03.2015 um 00:11 schrieb Max Filippov:
> On Wed, Mar 25, 2015 at 2:03 AM, François Revol wrote:
>> On 24/03/2015 23:56, Max Filippov wrote:
>>> On Wed, Mar 25, 2015 at 1:26 AM, Andreas Färber wrote:
Am 24.03.2015 um 00:36 schrieb Alexander von Gluck IV:
>
Why convert from
On 03/24/2015 07:20 PM, Andreas Färber wrote:
Am 25.03.2015 um 00:09 schrieb John Snow:
On 03/24/2015 06:45 PM, Andreas Färber wrote:
Replace g_test_add_func() with new qtest_add_func() and modify the path
passed to g_test_add() macro.
Signed-off-by: Andreas Färber
---
tests/i440fx-test.
Am 25.03.2015 um 00:09 schrieb John Snow:
> On 03/24/2015 06:45 PM, Andreas Färber wrote:
>> Replace g_test_add_func() with new qtest_add_func() and modify the path
>> passed to g_test_add() macro.
>>
>> Signed-off-by: Andreas Färber
>> ---
>> tests/i440fx-test.c | 8 +---
>> 1 file changed
On Wed, Mar 25, 2015 at 2:03 AM, François Revol wrote:
> On 24/03/2015 23:56, Max Filippov wrote:
>> On Wed, Mar 25, 2015 at 1:26 AM, Andreas Färber wrote:
>>> Am 24.03.2015 um 00:36 schrieb Alexander von Gluck IV:
>>>
>>> Why convert from array to switch statement? It looks like a very
>>>
On 03/24/2015 06:45 PM, Andreas Färber wrote:
Replace g_test_add_func() with new qtest_add_func() and modify the path
passed to g_test_add() macro.
Signed-off-by: Andreas Färber
---
tests/i440fx-test.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tests/i440fx
Am 24.03.2015 um 22:30 schrieb Dirk Müller:
> Commit 0b183fc871:"memory: move mem_path handling to
> memory_region_allocate_system_memory" split memory_region_init_ram and
> memory_region_init_ram_from_file. Also it moved mem-path handling a step
> up from memory_region_init_ram to memory_region_al
Am 24.03.2015 um 23:11 schrieb Dirk Müller:
> Commit 0b183fc871:"memory: move mem_path handling to
> memory_region_allocate_system_memory" split memory_region_init_ram and
> memory_region_init_ram_from_file. Also it moved mem-path handling a step
> up from memory_region_init_ram to memory_region_al
On 03/24/2015 06:45 PM, Andreas Färber wrote:
It calls g_test_add_data_func() with a path supplemented by the
architecture, like qtest_add_func() does.
Signed-off-by: Andreas Färber
---
tests/libqtest.c | 7 +++
tests/libqtest.h | 12
2 files changed, 19 insertions(+)
d
On 24/03/2015 23:56, Max Filippov wrote:
> On Wed, Mar 25, 2015 at 1:26 AM, Andreas Färber wrote:
>> Am 24.03.2015 um 00:36 schrieb Alexander von Gluck IV:
>>>
>>
>> Why convert from array to switch statement? It looks like a very
>> invasive change for no obvious reason.
>
> I'd be interested to
Am 24.03.2015 um 22:28 schrieb Dirk Müller:
> Commit 0b183fc871:"memory: move mem_path handling to
> memory_region_allocate_system_memory" split memory_region_init_ram and
> memory_region_init_ram_from_file. Also it moved mem-path handling a step
> up from memory_region_init_ram to memory_region_al
On Wed, Mar 25, 2015 at 1:26 AM, Andreas Färber wrote:
> Am 24.03.2015 um 00:36 schrieb Alexander von Gluck IV:
>>
>> diff --git a/target-xtensa/xtensa-semi.c b/target-xtensa/xtensa-semi.c
>> index 16e9d8c..d0ea12a 100644
>> --- a/target-xtensa/xtensa-semi.c
>> +++ b/target-xtensa/xtensa-semi.c
>>
Replace g_test_add_func() with new qtest_add_func() and modify the path
passed to g_test_add() macro.
Signed-off-by: Andreas Färber
---
tests/i440fx-test.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tests/i440fx-test.c b/tests/i440fx-test.c
index a3f7279..bc3f54c
On 03/23/2015 09:12 AM, Alberto Garcia wrote:
> Currently, block jobs can only be owned by root nodes. This patch
> allows block jobs to be in any arbitrary node, by making the following
> changes:
>
> - Block jobs can now be identified by the node name of their
> BlockDriverState in addition to
It calls g_test_add_data_func() with a path supplemented by the
architecture, like qtest_add_func() does.
Signed-off-by: Andreas Färber
---
tests/libqtest.c | 7 +++
tests/libqtest.h | 12
2 files changed, 19 insertions(+)
diff --git a/tests/libqtest.c b/tests/libqtest.c
index
Hello,
This mini-series is a follow-up, fixing the last remaining GTester paths
to indicate the architecture they are executed for (i386 vs. x86_64).
Unlike the previous patch, there is no libqtest wrapper function adding the
architecture yet; other tests manually constructed a correct path to pa
On Tue, Mar 24, 2015 at 08:04:14PM +, Dr. David Alan Gilbert wrote:
> * David Gibson (da...@gibson.dropbear.id.au) wrote:
> > On Fri, Mar 20, 2015 at 12:37:59PM +, Dr. David Alan Gilbert wrote:
> > > * David Gibson (da...@gibson.dropbear.id.au) wrote:
> > > > On Fri, Mar 13, 2015 at 10:19:5
Hi Alexander,
Am 24.03.2015 um 00:36 schrieb Alexander von Gluck IV:
> * skip syscall.h on Haiku
> * skip signal.h on Haiku
> * no daemon function
> * only attach SIGIO when it exists
> * use termios.h on Haiku
We cannot accept patches without Signed-off-by, indicating that this
code is either fr
I'm hitting an error migrating from stock v2.2.0 to git master:
2015-03-24T21:42:07.731317Z qemu-system-x86_64: error while loading state for
instance 0x0 of device ':00:05.0/virtio-console'
2015-03-24T21:42:07.731392Z qemu-system-x86_64: load of migration failed:
Invalid argument
I'm using l
Hello,
On behalf of the QEMU Team, I'd like to announce the availability of the
second release candidate for the QEMU 2.3 release. This release is meant
for testing purposes and should not be used in a production environment.
http://wiki.qemu.org/download/qemu-2.3.0-rc1.tar.bz2
We're currentl
Commit 0b183fc871:"memory: move mem_path handling to
memory_region_allocate_system_memory" split memory_region_init_ram and
memory_region_init_ram_from_file. Also it moved mem-path handling a step
up from memory_region_init_ram to memory_region_allocate_system_memory.
Therefore for any board that
Hi Paolo,
> You cannot call memory_region_allocate_system_memory twice. For cases
> like this one, the right thing to do is to create a region with
> memory_region_allocate_system_memory, and then replace
> memory_region_init_ram with memory_region_init_alias. This "slices" the
> region created
Hi Kevin, finally somebody that found a solution. Great, thank you very
much! It is working now.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1392504
Title:
USB Passthrough is not working anymore
Commit 0b183fc871:"memory: move mem_path handling to
memory_region_allocate_system_memory" split memory_region_init_ram and
memory_region_init_ram_from_file. Also it moved mem-path handling a step
up from memory_region_init_ram to memory_region_allocate_system_memory.
Therefore for any board that
On 24/03/2015 22:26, Dirk Müller wrote:
> Commit 0b183fc871:"memory: move mem_path handling to
> memory_region_allocate_system_memory" split memory_region_init_ram and
> memory_region_init_ram_from_file. Also it moved mem-path handling a step
> up from memory_region_init_ram to memory_region_allo
On 24/03/2015 22:24, Dirk Müller wrote:
> +++ b/hw/arm/exynos4210.c
> @@ -283,16 +283,16 @@ Exynos4210State *exynos4210_init(MemoryRegion
> *system_mem,
> /* DRAM */
> mem_size = ram_size;
> if (mem_size > EXYNOS4210_DRAM_MAX_SIZE) {
> -memory_region_init_ram(&s->dram1_mem
Commit 0b183fc871:"memory: move mem_path handling to
memory_region_allocate_system_memory" split memory_region_init_ram and
memory_region_init_ram_from_file. Also it moved mem-path handling a step
up from memory_region_init_ram to memory_region_allocate_system_memory.
Therefore for any board that
Commit 0b183fc871:"memory: move mem_path handling to
memory_region_allocate_system_memory" split memory_region_init_ram and
memory_region_init_ram_from_file. Also it moved mem-path handling a step
up from memory_region_init_ram to memory_region_allocate_system_memory.
Therefore for any board that
Commit 0b183fc871:"memory: move mem_path handling to
memory_region_allocate_system_memory" split memory_region_init_ram and
memory_region_init_ram_from_file. Also it moved mem-path handling a step
up from memory_region_init_ram to memory_region_allocate_system_memory.
Therefore for any board that
Public bug reported:
As of git revision 362ca922eea03240916287a8a6267801ab095d12, when guest
linux issues specifit scsi command, qemu crashes.
To reproduce.
1. launch qemu with scsi emulatoin
qemu-sysytem-i386.exe -kernel bzImage -drive file=rootfs.ext2,index=0,if=scsi
-append root=/dev/sda -dr
On 03/24/2015 02:03 PM, Eric Blake wrote:
> Rather than special-casing "'union':'foo','alternate':{}" as an
And continuing my belated proofreading:
s/alternate/discriminator/
> unusual union that can represent a non-dictionary, it is nicer
> to designate a separate meta-type "'alternate':'foo'"
On 03/24/2015 02:03 PM, Eric Blake wrote:
> Previous commits demonstrated that the generator had several
> flaws with less-than-perfect unions:
> - make the use of a base without discriminator a hard error,
> since the previous patch removed all remaining uses of it
> - a simple union that listed t
On 03/24/2015 02:03 PM, Eric Blake wrote:
> Python 2 and Python 3 have a wild history of whether strings
> default to ascii or unicode, where Python 3 requires checking
> instanceof(foo, basestr) to cover all strings, but where that
> code is not portable to Python 2. It's simpler to just state
>
The previous commit demonstrated that the generator overlooked some
fairly basic broken expressions:
- missing metataype
- metatype key has a non-string value
- unknown key in relation to the metatype
- conflicting metatype (this patch treats the second metatype as an
unknown key of the first key v
A future patch will be using a 'name':{dictionary} entry in the
QAPI schema to specify a default value for an optional argument;
but existing use of inline nested structs conflicts with that goal.
Now that all commands have been changed to avoid inline nested
structs, nuke support for them, and tur
Demonstrate that the qapi generator silently parses confusing
types, which may cause other errors later on. Later patches
will update the expected results as the generator is made stricter.
Signed-off-by: Eric Blake
---
tests/Makefile | 8 ++--
tests/qapi-schem
On 24/03/2015 17:49, Markus Armbruster wrote:
>> But what about migration from newer to older QEMU? Libvirt even
>> supports QEMU versions where the only way to specify disks is "-hda
>> XYZ", so it is _impossible_ to honor the format=raw specifier.
>
> If you migrate to a QEMU that doesn't und
A future patch will be using a 'name':{dictionary} entry in the
QAPI schema to specify a default value for an optional argument;
but existing use of inline nested structs conflicts with that goal.
This patch fixes one of only two commands relying on nested
types, by breaking the nesting into an exp
The previous commit demonstrated that the generator had several
flaws with less-than-perfect enums:
- an enum that listed the same string twice (or two variant
strings that map to the same C enumerator) ended up generating
an invalid C enum
- because the generator adds a _MAX terminator to each enu
Previous commits demonstrated that the generator overlooked various
bad naming situations:
- types, commands, and events need a valid name
- union and alternate branches cannot be marked optional
The set of valid names includes [a-zA-Z0-9._-] (where '.' is
useful only in downstream extensions).
S
From: Fam Zheng
In the near term, we will use it for a sensible-looking
'gen':false inside command declarations, instead of the
current ugly 'gen':'no'.
In the long term, it will allow conversion from shorthand
with defaults mentioned only in side-band documentation:
'data':{'*flag':'bool', '*s
On 24/03/2015 21:03, Markus Armbruster wrote:
> * Of the sysbus devices only "xlnx.xps-uartlite" seems to be available
> with the machines that support -device for sysbus devices (ppce500 and
> pseries-*). When I try to -device it there, I get "Device
> xlnx.xps-uartlite is not supported b
A future patch will be using a 'name':{dictionary} entry in the
QAPI schema to specify a default value for an optional argument;
but existing use of inline nested structs conflicts with that goal.
This patch fixes the testsuite to avoid inline nested types, by
breaking the nesting into explicit typ
* David Gibson (da...@gibson.dropbear.id.au) wrote:
> On Fri, Mar 20, 2015 at 12:37:59PM +, Dr. David Alan Gilbert wrote:
> > * David Gibson (da...@gibson.dropbear.id.au) wrote:
> > > On Fri, Mar 13, 2015 at 10:19:54AM +, Dr. David Alan Gilbert wrote:
> > > > * David Gibson (da...@gibson.dr
In the testsuite, UserDefTwo and UserDefNested were identical
types other than the member names. Reduce code duplication by
having just one type, and choose names that also favor reuse.
This will also make it easier for a later patch to get rid of
inline nested types in QAPI; it means that the typ
Reduce churn in the future patch that replaces anonymous unions
with a new metatype 'alternate' by changing 'AnonUnion' to
'Alternate'.
Signed-off-by: Eric Blake
---
tests/qapi-schema/qapi-schema-test.json | 2 +-
tests/qapi-schema/qapi-schema-test.out | 4 ++--
tests/test-qmp-input-strict.c
...or an array of dictionaries. Although we have to cater to
existing commands, returning a non-dictionary means the command
is not extensible (no new name/value pairs can be added if more
information must be returned in parallel). By making the
whitelist explicit, any new command that falls foul
Now that we have a way to validate every type, we can also be
stricter about enforcing that callers that want to bypass
type safety in generated code. Prior to this patch, it didn't
matter what value was associated with the key 'gen', but it
looked odd that 'gen':'yes' could result in bypassing th
Rather than special-casing "'union':'foo','alternate':{}" as an
unusual union that can represent a non-dictionary, it is nicer
to designate a separate meta-type "'alternate':'foo'" for the
purpose. This involves a lot of documentation tweaks and fallout
from .json files, but I already split as muc
Now that we know every expression is valid with regards to
its keys, we can add further tests that those keys refer to
valid types. With this patch, all uses of a type (the 'data':
of command, type, union, alternate, and event; the 'returns':
of command; the 'base': of type and union) must resolve
A future patch will be using a 'name':{dictionary} entry in the
QAPI schema to specify a default value for an optional argument;
but existing use of inline nested structs conflicts with that goal.
This patch fixes one of only two commands relying on nested
types, by breaking the nesting into an exp
Demonstrate that the qapi generator doesn't deal well with unions
that aren't up to par. Later patches will update the expected
reseults as the generator is made stricter.
Of particular note, we currently allow 'base' without 'discriminator'
as a way to create a simple union with a base class. Ho
None of the existing QMP or QGA interfaces uses a union with a
base type but no discriminator; it is easier to avoid this in
the generator to save room for other future extensions more likely
to be useful (the previous commit added the test
union-base-no-discriminator to ensure that we eventually g
The previous commit demonstrated that the generator overlooked
duplicate expressions:
- a complex type or command reusing a built-in type name
- redeclaration of a type name, whether by the same or different
metatype
- redeclaration of a command or event
- collision of a type with implicit 'Kind' e
Demonstrate that the qapi generator doesn't deal very well with
redefined expressions. At the parse level, they are silently
accepted; and while the testsuite just stops at parsing, I've
further tested that many of them cause generator crashes or
invalid C code if they were appended to qapi-schema
For a few QMP commands, we are forced to pass an arbitrary type
without tracking it properly in QAPI. Among the existing clients,
this unnamed type was spelled 'dict', 'visitor', and '**'; this
patch standardizes on '**'.
Meanwhile, for both 'gen' and 'success-response' keys, we have been
ignorin
Special-casing 'discriminator == {}' for handling anonymous unions
is getting awkward; since this particular type is not always a
dictionary on the wire, it is easier to treat it as a completely
different class of type, "alternate", so that if a type is listed
in the union_types array, we know it i
This patch widens the scope of a try block (with the attending
reindentation required by Python) in preparation for a future
patch adding more instances of QAPIExprError inside the block.
It's easier to separate indentation from semantic changes, so
this patch has no real behavior change.
Signed-o
Previous commits demonstrated that the generator had several
flaws with less-than-perfect unions:
- make the use of a base without discriminator a hard error,
since the previous patch removed all remaining uses of it
- a simple union that listed the same branch twice (or two variant
names that map
1 - 100 of 214 matches
Mail list logo