On Sun, 2015-09-06 at 17:48 -0700, Peter Crosthwaite wrote:
> On Sun, Sep 6, 2015 at 4:26 PM, Richard Purdie
> wrote:
> > On Sun, 2015-09-06 at 11:37 -0700, Peter Crosthwaite wrote:
> > It seems can_receive isn't enough, we'd need to put some checks into
> > receive itself since once can_receive s
Eric Blake writes:
> On 09/03/2015 08:29 AM, Markus Armbruster wrote:
>> The old code prints the result of parsing (list of expression
>> dictionaries), and partial results of semantic analysis (list of enum
>> dictionaries, list of struct dictionaries).
>>
>> The new code prints a trace of a sc
On Mon, 08/03 20:45, Max Reitz wrote:
> >+static void test_single_job(int expected)
> >+{
> >+BlockJob *job;
> >+BlockJobTxn *txn;
> >+int result = -EINPROGRESS;
> >+
> >+txn = block_job_txn_new();
> >+job = test_block_job_start(1, true, expected, &result);
>
> I think I'd like
On Sun, 2015-09-06 at 17:48 -0700, Peter Crosthwaite wrote:
> On Sun, Sep 6, 2015 at 4:26 PM, Richard Purdie
> wrote:
> > On Sun, 2015-09-06 at 11:37 -0700, Peter Crosthwaite wrote:
> > I tested an assert in _recieve() which confirms it can be called when
> > can_receive() says it isn't ready.
> >
On Thu, Sep 03, 2015 at 06:47:55PM +0100, Peter Maydell wrote:
> Our changelog for QEMU 2.4 (http://wiki.qemu.org/ChangeLog/2.4)
> currently has a line in it saying
>" * FIXME: virtio 1"
>
> Could somebody familiar with the level of our virtio-1 support
> in 2.4 please fix this, before everybo
v5: Address comments from Max Reitz:
2.4 -> 2.5 in qapi docs.
Don't leak txn object.
English syntax fixes.
Really leave the "cancelled" status of failed job.
Remove a superfluous added line.
v4: Address comments from John and Stefan, including:
Rename function: backup_clean
From: John Snow
These structures are misnomers, somewhat.
(1) BlockTransactionState is not state for a transaction,
but is rather state for a single transaction action.
Rename it "BlkActionState" to be more accurate.
(2) The BdrvActionOps describes operations for the BlkActionState,
So that block_job_complete_sync can be simplified.
Signed-off-by: Fam Zheng
---
block/mirror.c | 2 +-
blockjob.c | 22 ++
include/block/blockjob.h | 18 +++---
3 files changed, 30 insertions(+), 12 deletions(-)
diff --git a/block/mirror.
This will be reused by the coming new transactional completion code.
Signed-off-by: Fam Zheng
Reviewed-by: John Snow
---
block/backup.c | 26 --
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/block/backup.c b/block/backup.c
index 965654d..9776d9c 100644
With job->completed and job->ret to replace BlockFinishData.
Signed-off-by: Fam Zheng
---
blockjob.c | 27 ++-
1 file changed, 6 insertions(+), 21 deletions(-)
diff --git a/blockjob.c b/blockjob.c
index 293b62a..36c18e0 100644
--- a/blockjob.c
+++ b/blockjob.c
@@ -185,43
From: John Snow
This adds two qmp commands to transactions.
block-dirty-bitmap-add allows you to create a bitmap simultaneously
alongside a new full backup to accomplish a clean synchronization
point.
block-dirty-bitmap-clear allows you to reset a bitmap back to as-if
it were new, which can als
Signed-off-by: Fam Zheng
---
include/block/blockjob.h | 18 ++
1 file changed, 18 insertions(+)
diff --git a/include/block/blockjob.h b/include/block/blockjob.h
index 3e7ad21..a7b497c 100644
--- a/include/block/blockjob.h
+++ b/include/block/blockjob.h
@@ -50,6 +50,24 @@ typedef
They are set when block_job_completed is called.
Signed-off-by: Fam Zheng
Reviewed-by: John Snow
---
blockjob.c | 3 +++
include/block/blockjob.h | 9 +
2 files changed, 12 insertions(+)
diff --git a/blockjob.c b/blockjob.c
index ec12887..293b62a 100644
--- a/blockjob.c
+
From: John Snow
Test simple usage cases for using transactions to create
and synchronize incremental backups.
Signed-off-by: John Snow
Reviewed-by: Max Reitz
Reviewed-by: Stefan Hajnoczi
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Fam Zheng
Signed-off-by: Fam Zheng
---
tests/qemu-iotests/
From: John Snow
Use a transaction to request an incremental backup across two drives.
Coerce one of the jobs to fail, and then re-run the transaction.
Verify that no bitmap data was lost due to the partial transaction
failure.
To support the 'transactional-cancel' QMP argument name it's necessa
From: Stefan Hajnoczi
Join the transaction when the 'transactional-cancel' QMP argument is
true.
This ensures that the sync bitmap is not thrown away if another block
job in the transaction is cancelled or fails. This is critical so
incremental backup with multiple disks can be retried in case
Sai Pavan Boddu writes:
> Conditionaly compilation hides few type mismatch warnings, fix it to
> compile unconditioinal.
>
> Signed-off-by: Sai Pavan Boddu
> Suggested-by: Eric Blake
No objection to this patch, but have you considered tracepoints?
See docs/tracing.txt.
On 09/02/2015 07:06 PM, Cornelia Huck wrote:
> On Wed, 2 Sep 2015 11:25:21 +0800
> Jason Wang wrote:
>
>> We don't migrate the followings fields for virtio-pci:
>>
>> uint32_t dfselect;
>> uint32_t gfselect;
>> uint32_t guest_features[2];
>> struct {
>> uint16_t num;
>> bool enabled;
>>
Hi Stefan,
On 09/04/2015 06:32 PM, Stefan Hajnoczi wrote:
[...]
net/queue.c has logic to send/queue/flush packets but a
qemu_deliver_packet() call is hardcoded.
Maybe you can extend qemu_new_net_queue() like this:
/* Returns:
* >0 - success
*0 - queue packet for future redelivery
From: Stefan Hajnoczi
The BlockJobTxn unit test verifies that both single jobs and pairs of
jobs behave as a transaction group. Either all jobs complete
successfully or the group is cancelled.
Signed-off-by: Stefan Hajnoczi
Signed-off-by: Fam Zheng
Reviewed-by: Max Reitz
---
tests/Makefile
Sometimes block jobs must execute as a transaction group. Finishing
jobs wait until all other jobs are ready to complete successfully.
Failure or cancellation of one job cancels the other jobs in the group.
Signed-off-by: Stefan Hajnoczi
[Rewrite the implementation which is now contained in bloc
From: Stefan Hajnoczi
Provide a BlockJobTxn to actions executed in a qmp 'transaction'
command. This allows actions to make their block jobs either complete
as a group or fail/cancel together.
The next patch adds the first user.
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Fam Zheng
Reviewed-
From: Kashyap Chamarthy
Although the canonical source of reference for QMP commands is
qapi-schema.json, for consistency's sake, update qmp-commands.hx to
state the list of supported transactionable operations, namely:
drive-backup
blockdev-backup
blockdev-snapshot-internal-sync
> -Original Message-
> From: Markus Armbruster [mailto:arm...@redhat.com]
> Sent: Monday, September 07, 2015 1:05 PM
> To: Sai Pavan Boddu
> Cc: qemu-devel@nongnu.org; crosthwaitepe...@gmail.com;
> ebl...@redhat.com; peter.mayd...@linaro.org; Sai Pavan Boddu; Edgar
> Iglesias; Alistair Fr
On Sun, 2015-09-06 at 17:48 -0700, Peter Crosthwaite wrote:
> This doesn't sound right. There are other network controllers that
> rely of can_receive catching all cases properly. Is this a regression?
> Looking at logs, I see some refactoring of QEMU net framework around
> June timeframe, if you r
Coccinelle chokes on some idioms from compiler.h and queue.h.
Extract those in a macro file, to be used with "--macro-file
scripts/cocci-macro-file.h".
Signed-off-by: Paolo Bonzini
---
scripts/cocci-macro-file.h | 110 +
1 file changed, 110 insertions(
On Fri 04 Sep 2015 04:42:17 PM CEST, Eric Blake wrote:
>> @@ -1183,6 +1183,18 @@ void qmp_blockdev_snapshot_sync(bool has_device,
>> const char *device,
>> &snapshot, errp);
>> }
>>
>> +void qmp_blockdev_snapshot(const char *device, const char *snapshot,
>
> Is 'node' a
On Mon, 7 Sep 2015 15:39:59 +0800
Jason Wang wrote:
> On 09/02/2015 07:06 PM, Cornelia Huck wrote:
> > On Wed, 2 Sep 2015 11:25:21 +0800
> > Jason Wang wrote:
> >> +static int get_extra_state(QEMUFile *f, void *pv, size_t size)
> >> +{
> >> +VirtIODevice *vdev = pv;
> >> +BusState *qbu
This patch is required for deterministic replay to generate an exception
by trying executing an instruction without changing icount.
It adds new flag to TB for disabling icount while translating it.
Signed-off-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
cpu-exec.c |7
This set of patches is related to the reverse execution and deterministic
replay of qemu execution. This implementation of deterministic replay can
be used for deterministic debugging of guest code through gdb remote
interface.
Core set of patches does not include support for reverse debugging c
Processing CPU_INTERRUPT_POLL requests in cpu_has_work functions
break the determinism of cpu_exec. This patch is required to make
interrupts processing deterministic.
Signed-off-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
cpu-exec.c|9 +
target-i386/cpu.c | 10 +
This patch updates x86_cpu_exec_interrupt function.
It can process two interrupt request at a time (poll and another one).
This makes its execution non-deterministic. Determinism is requred
for recorded icount execution.
Signed-off-by: Pavel Dovgalyuk
---
target-i386/seg_helper.c |3 +++
1 f
This patch adds functions to perform read and write operations
with replay log.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
replay/Makefile.objs |1
replay/replay-internal.c | 155 ++
replay/replay-internal.h | 46 ++
This patch adds global variables, defines, function declarations,
and function stubs for deterministic VM replay used by external modules.
Reviewed-by: Paolo Bonzini
Reviewed-by: Eric Blake
Signed-off-by: Pavel Dovgalyuk
---
Makefile.target |1
docs/replay.txt | 168 ++
This patch introduces checkpoints that synchronize cpu thread and iothread.
When checkpoint is met in the code all asynchronous events from the queue
are executed.
Signed-off-by: Pavel Dovgalyuk
---
cpus.c |5 +
qemu-timer.c | 40 ++
Clock ticks are considered as the sources of non-deterministic data for
virtual machine. This patch implements saving the clock values when they
are acquired (virtual, host clock).
When replaying the execution corresponding values are read from log and
transfered to the module, which wants to read
This mutex will protect read/write operations for replay log.
Using mutex is necessary because most of the events consist of
several fields stored in the log. The mutex will help to avoid races.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
replay/replay-internal.c | 27 +
This patch adds icount event to the replay subsystem. This event corresponds
to execution of several instructions and used to synchronize input events
in the replay phase.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
replay/replay-internal.c | 24
re
This patch introduces aio_bh_call function. It is used to execute
bottom halves as callbacks without adding them to the queue.
Signed-off-by: Pavel Dovgalyuk
---
async.c |7 ++-
include/block/aio.h |5 +
2 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/
This patch records and replays simulator shutdown event.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
replay/replay-internal.h |2 ++
replay/replay.c | 14 ++
replay/replay.h |5 +
vl.c |1 +
4 files changed,
This patch adds calls to replay functions into the icount setup block.
In record mode number of executed instructions is written to the log.
In replay mode number of istructions to execute is taken from the replay log.
When replayed instructions counter is expired qemu_notify_event()
function is ca
icount_warp_rt function is called by qemu_clock_warp and as
callback of icount_warp timer. This patch adds call to qemu_clock_warp
into main_loop_wait function, because icount warp may be missed
in record/replay mode, when CPU is sleeping.
This patch also disables of calling this function by timer,
On Fri, Sep 04, 2015 at 11:38:06PM +0200, Marc-André Lureau wrote:
> Hi
>
> On Wed, Aug 26, 2015 at 2:03 PM, Daniel P. Berrange
> wrote:
> > +ObjectProperty *
> > +object_class_property_add(ObjectClass *klass,
> > + const char *name,
> > + const
This records user input (keyboard and mouse events) in record mode and replays
these input events in replay mode.
Signed-off-by: Pavel Dovgalyuk
---
include/ui/input.h |2 +
replay/Makefile.objs |1
replay/replay-events.c | 33 +
replay/replay-input.c| 160 +++
This patch includes modifications of common cpu files. All interrupts and
exceptions occured during recording are written into the replay log.
These events allow correct replaying the execution by kicking cpu thread
when one of these events is found in the log.
Signed-off-by: Pavel Dovgalyuk
---
This patch adds deterministic replay for hardware periodic countdown timers.
ptimer uses bottom halves layer to execute such an asynchronous callback.
We put this callback into the replay queue instead of bottom halves one.
When checkpoint is met by main loop thread, the replay queue is processed
a
This patch introduces the functions for enabling the record/replay and for
freeing the resources when simulator closes.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
exec.c |2 +
replay/replay-internal.h |2 +
replay/replay.c | 129 ++
This patch moves typedefs for QemuOpts and related types
to qemu/typedefs.h file.
Reviewed-by: Paolo Bonzini
Signed-off-by: Pavel Dovgalyuk
---
include/qemu/option.h |5 +
include/qemu/typedefs.h |3 +++
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/include/qemu/
This patch adds module for saving and replaying asynchronous events.
These events include network packets, keyboard and mouse input,
USB packets, thread pool and bottom halves callbacks.
All events are stored in the queue to be processed at synchronization points
such as beginning of TB execution,
Some devices are not supported by record/replay subsystem.
This patch introduces replay blocker which denies starting record/replay
if such devices are included into the configuration.
Signed-off-by: Pavel Dovgalyuk
---
hw/bt/hci.c |7 +++
include/qapi/qmp/qerror.h |3 +
On Fri, Sep 04, 2015 at 09:53:03PM +0200, Markus Armbruster wrote:
> RHEL-6 and SLES-11 provide Python 2.6. It'll also work on OS X back
> to 10.6.
>
> Signed-off-by: Markus Armbruster
Reviewed-by: Daniel P. Berrange
Regards,
Daniel
--
|: http://berrange.com -o-http://www.flickr.co
This patch introduces command line options for enabling recording or replaying
virtual machine behavior. These options are added to icount command line
parameter. They include 'rr' which switches between record and replay
and 'rrfile' for specifying the filename for replay log.
Signed-off-by: Pave
On Fri, Sep 04, 2015 at 11:44:17PM +0100, Peter Maydell wrote:
> On 4 September 2015 at 20:53, Markus Armbruster wrote:
> > RHEL-6 and SLES-11 provide Python 2.6. It'll also work on OS X back
> > to 10.6.
> >
> > Signed-off-by: Markus Armbruster
>
> Reviewed-by: Peter Maydell
>
> I wonder if
On 04/09/15 18:21, Stefan Hajnoczi wrote:
> From: P J P
>
> While processing transmit descriptors, it could lead to an infinite
> loop if 'bytes' was to become zero; Add a check to avoid it.
>
> [The guest can force 'bytes' to 0 by setting the hdr_len and mss
> descriptor fields to 0.
> --Stefan
Sai Pavan Boddu writes:
>> -Original Message-
>> From: Markus Armbruster [mailto:arm...@redhat.com]
>> Sent: Monday, September 07, 2015 1:05 PM
>> To: Sai Pavan Boddu
>> Cc: qemu-devel@nongnu.org; crosthwaitepe...@gmail.com;
>> ebl...@redhat.com; peter.mayd...@linaro.org; Sai Pavan Boddu;
On 09/06/2015 10:25 PM, Andreas Färber wrote:
Am 02.09.2015 um 21:58 schrieb Eduardo Habkost:
Ping?
Andreas, should this go through your QOM tree?
Long-term I would prefer a separate machine maintainer (Marcel?)
Hi Andreas,
I can be the machine maintainer, sure.
I should start maintaining c
Yang Hongyang writes:
> Hi Stefan,
>
> On 09/04/2015 06:32 PM, Stefan Hajnoczi wrote:
> [...]
>>
>> net/queue.c has logic to send/queue/flush packets but a
>> qemu_deliver_packet() call is hardcoded.
>>
>> Maybe you can extend qemu_new_net_queue() like this:
>>
>> /* Returns:
>> * >0 - succes
On 7 September 2015 at 06:12, Peter Crosthwaite
wrote:
> Ping!
...you need to find somebody who thinks this should go via their tree.
Paolo?
thanks
-- PMM
On Mon, Sep 07, 2015 at 03:37:20PM +0800, Yang Hongyang wrote:
> Hi Stefan,
>
> On 09/04/2015 06:32 PM, Stefan Hajnoczi wrote:
> [...]
> >
> >net/queue.c has logic to send/queue/flush packets but a
> >qemu_deliver_packet() call is hardcoded.
> >
> >Maybe you can extend qemu_new_net_queue() like th
On 7 September 2015 at 08:30, Michael S. Tsirkin wrote:
> I seem to have lost the wiki login/password.
Looking at the userlist I suspect you didn't have an account.
Let me know what username you'd like and I'll create one for you.
thanks
-- PMM
CCing the net maintainers on this thread seems like it would
be a good idea...
On 7 September 2015 at 08:47, Richard Purdie
wrote:
> On Sun, 2015-09-06 at 17:48 -0700, Peter Crosthwaite wrote:
>> This doesn't sound right. There are other network controllers that
>> rely of can_receive catching al
On 09/07/2015 05:06 PM, Markus Armbruster wrote:
Yang Hongyang writes:
Hi Stefan,
On 09/04/2015 06:32 PM, Stefan Hajnoczi wrote:
[...]
net/queue.c has logic to send/queue/flush packets but a
qemu_deliver_packet() call is hardcoded.
Maybe you can extend qemu_new_net_queue() like this:
/* R
On 7 September 2015 at 08:51, Paolo Bonzini wrote:
> Coccinelle chokes on some idioms from compiler.h and queue.h.
> Extract those in a macro file, to be used with "--macro-file
> scripts/cocci-macro-file.h".
Can we put the "how to use this" instructions in the file
itself as well as in the commi
On 09/07/2015 05:11 PM, Stefan Hajnoczi wrote:
On Mon, Sep 07, 2015 at 03:37:20PM +0800, Yang Hongyang wrote:
Hi Stefan,
On 09/04/2015 06:32 PM, Stefan Hajnoczi wrote:
[...]
net/queue.c has logic to send/queue/flush packets but a
qemu_deliver_packet() call is hardcoded.
Maybe you can extend
On 07.09.15 07:04, Peter Crosthwaite wrote:
> On Tue, Aug 18, 2015 at 6:04 PM, Laurent Vivier wrote:
>> I'm wondering if the existing behavior is good:
>>
>> what I have understood is we define ppc32 guests in ppc64 target to be
>> able to run 32bit guest with 64bit qemu, but I don't think it me
On 4 September 2015 at 16:05, Peter Maydell wrote:
> Another target-arm queue flush. I expect there'll be another
> lot next week...
>
>
> The following changes since commit b041066421e8dcc7d080dfcfd83551c9c9f24ade:
>
> Merge remote-tracking branch 'remotes/stefanha/tags/tracing-pull-request'
>
x27;
into staging (2015-09-04 17:37:50 +0100)
are available in the git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git
tags/pull-target-arm-20150907
for you to fetch changes up to 8d45c54d4fd3612bd616afcc5c278394f312927b:
arm/virt: Add full-sized CPU affinity handling (2015-09-0
07.09.2015 09:34, Markus Armbruster wrote:
> Michael Tokarev writes:
>
>> Applied to -trivial-patches, unfortunately not for 2.4 but at least for 2.5
>> :)
>
> Should we add "Cc: qemu-sta...@nongnu.org" to the commit message?
I don't think it is worth applying to stable. YMMV ofcourse :)
/mj
The first two patches are a resend of a previous proposal sent to qemu-devel.
The last two are new.
Paolo
Paolo Bonzini (4):
CODING_STYLE: update mixed declaration rules
CODING_STYLE, checkpatch: update line length rules
checkpatch: adapt some tests to QEMU
checkpatch: remove tests that a
Mixed declarations also do exist at the top of #ifdef blocks.
Reluctantly allow this particular usage and suggest an alternative.
Signed-off-by: Paolo Bonzini
---
CODING_STYLE | 13 +
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/CODING_STYLE b/CODING_STYLE
index d46c
Mostly change severity levels, but some tests can also be adjusted to refer
to QEMU APIs or data structures.
Signed-off-by: Paolo Bonzini
---
scripts/checkpatch.pl | 141 +-
1 file changed, 60 insertions(+), 81 deletions(-)
diff --git a/scripts/ch
Line lengths above 80 characters do exist. They are rare, but
they happen from time to time. An ignored rule is worse than an
exception to the rule, so do the latter.
Based on remarks from the list, make the preferred line length
slightly lower than 80 characters, to account for extra characters
Fully removing Sparse support requires more invasive changes. Only
remove the really kernel-specific parts such as address space names.
Signed-off-by: Paolo Bonzini
---
scripts/checkpatch.pl | 396 ++
1 file changed, 10 insertions(+), 386 deletion
On 16/08/2015 01:28, Peter Crosthwaite wrote:
> Every arch defines ELF_MACHINE in cpu.h to an arch-specific value. This
> definition is rarely needed by core code (only in a few cases). It
> conflicts with the multi-arch effort where cpu.h cannot export cpu
> specifics via macros like this. So re
On 07/09/2015 11:22, Peter Maydell wrote:
> On 7 September 2015 at 08:51, Paolo Bonzini wrote:
>> Coccinelle chokes on some idioms from compiler.h and queue.h.
>> Extract those in a macro file, to be used with "--macro-file
>> scripts/cocci-macro-file.h".
>
> Can we put the "how to use this" in
On 07/09/2015 11:09, Peter Maydell wrote:
> On 7 September 2015 at 06:12, Peter Crosthwaite
> wrote:
>> Ping!
>
> ...you need to find somebody who thinks this should go via their tree.
> Paolo?
Paolo has only 1277 unread emails, but should still try to send a pull
request this week. Queuing t
Hi,
Here finaklly comes the ipxe update which makes things fly on efi.
Submodule update, two small build tweaks, binary update.
please review,
Gerd
Gerd Hoffmann (4):
ipxe: update from 35c53797 to 4e03af8
ipxe: don't override GITVERSION
ipxe: use upstream configuration
ipxe: update b
We had build problems due to the git version checking in the ipxe build
system in the past. Don't remember the details, but the problem seems
to be gone now, so lets remove the workaround.
Signed-off-by: Gerd Hoffmann
[ most likely ipxe commit 6153c09c41034250408f3596555fcaae715da46c:
[build]
Upstream supports named configurations now and ships with
settings for qemu. Use them, drop our config header copying.
Signed-off-by: Gerd Hoffmann
---
roms/Makefile | 11 ---
roms/config.ipxe.general.h | 4
2 files changed, 4 insertions(+), 11 deletions(-)
delete mo
git shortlog
Alex Williamson (1):
[dhcp] Extract timing parameters out to config/dhcp.h
Bernd Wiebelt (1):
[tg3] Add support for BCM57766
Christian Hesse (3):
[intel] Add PCI device IDs for Intel I218-LM and I218-V
[build] Add missing "const" qualifiers
On 29/08/2015 12:33, Peter Crosthwaite wrote:
> Every arch adds its disas configury to both its own config as well
> config_disas_all. Make a small function do to both at once.
>
> Signed-off-by: Peter Crosthwaite
> ---
> Changed since v1:
> Factor out everything except just the arch name.
>
>
Hi,
ipxe just got a EFI_PXE_BASE_CODE_PROTOCOL implementation. I've updated
ipxe and commented the EFI_DOWNGRADE_UX define in the qemu config. If
you want to test this you can fetch the qemu branch with the updated
roms here:
https://www.kraxel.org/cgit/qemu/log/?h=rebase/roms-next
Ran a qui
New methods c_name(), c_type(), c_null(), json_type(),
alternate_qtype().
Signed-off-by: Markus Armbruster
Reviewed-by: Eric Blake
Reviewed-by: Daniel P. Berrange
---
scripts/qapi.py | 93 -
1 file changed, 86 insertions(+), 7 deletions(-
Fixes flat unions to get the base's base members. Test case is from
commit 2fc0043, in qapi-schema-test.json:
{ 'union': 'UserDefFlatUnion',
'base': 'UserDefUnionBase',
'discriminator': 'enum1',
'data': { 'value1' : 'UserDefA',
'value2' : 'UserDefB',
Duplicated in commit 21cd70d. Yes, we can't import qapi-types, but
that's no excuse. Move the helpers from qapi-types.py to qapi.py, and
replace the duplicates in qapi-event.py.
The generated event enumeration type's lookup table becomes
const-correct (see commit 2e4450f), and uses explicit inde
Output unchanged apart from reordering and white-space.
Signed-off-by: Markus Armbruster
Reviewed-by: Eric Blake
---
scripts/qapi-commands.py | 159 +++
scripts/qapi.py | 2 +-
2 files changed, 91 insertions(+), 70 deletions(-)
diff --git
Fixes flat unions to visit the base's base members (the previous
commit merely added them to the struct). Same test case.
Patch's effect on visit_type_UserDefFlatUnion():
static void visit_type_UserDefFlatUnion_fields(Visitor *m,
UserDefFlatUnion **obj, Error **errp)
{
Error
Generated qapi-event.[ch] lose line breaks. No change otherwise.
Signed-off-by: Markus Armbruster
Reviewed-by: Eric Blake
---
scripts/qapi-commands.py | 11 ++-
scripts/qapi-event.py| 18 +++---
scripts/qapi.py | 16
3 files changed, 21 inserti
The QAPI code generators work with a syntax tree (nested dictionaries)
plus a few symbol tables (also dictionaries) on the side.
They have clearly outgrown these simple data structures. There's lots
of rummaging around in dictionaries, and information is recomputed on
the fly. For the work I'm g
This reverts commit 22ff4d4ac6cd553f328e400de6913dc879581c4c.
Signed-off-by: Markus Armbruster
---
scripts/qapi-commands.py | 7 ---
scripts/qapi-event.py| 12
scripts/qapi-types.py| 18 --
scripts/qapi-visit.py| 12
scripts/qapi.py
Still RFC, because we probably want to drop the "just to facilitate
review" patches, and squash PATCH 31 into PATCH 30.
I feel it's time to punt inessential improvements to follow-up
patches. So if nothing major comes up in review, I'll post a non-RFC
version that leads to the exact same end stat
The old code prints the result of parsing (list of expression
dictionaries), and partial results of semantic analysis (list of enum
dictionaries, list of struct dictionaries).
The new code prints a trace of a schema visit, i.e. what the back-ends
are going to use. Built-in and array types are omi
To eliminate the temptation for clients to look up types by name
(which are not ABI), replace all type names by meaningless strings.
Reduces output of query-schema by 13 out of 85KiB.
As a debugging aid, provide option -u to suppress the hiding.
Signed-off-by: Markus Armbruster
Reviewed-by: Eri
gen_marshal_output() uses its parameter name only for name of the
generated function. Name it after the type being marshaled instead of
its caller, and drop duplicates.
Saves 7 copies of qmp_marshal_output_int() in qemu-ga, and one copy of
qmp_marshal_output_str() in qemu-system-*.
Signed-off-by
Move gen_visit_decl() to a better place. Inline
generate_visit_struct_body().
Signed-off-by: Markus Armbruster
Reviewed-by: Eric Blake
---
scripts/qapi-visit.py | 50 --
1 file changed, 20 insertions(+), 30 deletions(-)
diff --git a/scripts/qapi
It doesn't take a 'props' argument, let alone one in the format
"NAME=VALUE,..."
The bogus arguments specification doesn't matter due to 'gen': false.
Clean it up to be incomplete rather than wrong, and document the
incompleteness.
While there, improve netdev_add usage example in the manual: add
How many bits we use internally is an implementation detail. It could
be pressed into external interface service as very approximate range
information, but that's probably a bad idea. If we need range
information, we better do it properly.
Reduces output of query-schema by a negligible 0.5 out o
On Wed, Sep 02, 2015 at 06:53:44PM +0200, Pierre Morel wrote:
> +addr = virtio_queue_get_desc_addr(vdev, n);
> +size = virtio_queue_get_desc_size(vdev, n);
> +ptr = vring_map(&vring->mr_desc, addr, size, true);
> +if (!ptr) {
> +error_report("Failed to map 0x%16lx byte for v
'gen': false needs to stay for now, because netdev_add is still using
it.
Signed-off-by: Markus Armbruster
Reviewed-by: Eric Blake
---
docs/qapi-code-gen.txt| 18 ++
scripts/qapi.py | 20
tests/Makefile
On 7 September 2015 at 10:43, Peter Maydell wrote:
> Version 2 of this pullreq, with a trivial fix squashed in to delete
> an unused function imx_i2c_direction_is_tx().
Applied, thanks.
-- PMM
1 - 100 of 373 matches
Mail list logo