[Qemu-devel] [PATCH 0/3] cleanup cpu_exec 1/n

2010-01-15 Thread Paolo Bonzini
For now, just some removal of dead code (empty inline functions). Paolo Bonzini (3): remove dead code from target-i386/exec.h kill regs_to_env and env_to_regs fix wrong indentation cpu-exec.c | 13 +-- target-alpha/exec.h |8 -- target-arm/exec.h

[Qemu-devel] [PATCH 3/3] fix wrong indentation

2010-01-15 Thread Paolo Bonzini
Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/cpu-exec.c b/cpu-exec.c index a426db9..2f119a9 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -588,11 +588,9 @@ int cpu_exec(CPUState *env1) /*

[Qemu-devel] [PATCH 2/3] kill regs_to_env and env_to_regs

2010-01-15 Thread Paolo Bonzini
Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |9 - target-alpha/exec.h |8 target-arm/exec.h|8 target-cris/exec.h |8 target-i386/exec.h |8 target-m68k/exec.h |8

[Qemu-devel] Re: [PATCH] tcg-x86_64: Avoid unnecessary REX.B prefixes.

2010-01-15 Thread Aurelien Jarno
On Thu, Jan 14, 2010 at 02:59:51PM -0800, Richard Henderson wrote: The existing P_REXB internal opcode flag unconditionally emits the REX prefix. Technically it's not needed if the register in question is %al, %bl, %cl, %dl. Eliding the prefix requires splitting the P_REXB flag into two,

[Qemu-devel] [PATCH 0/4] Clean up cpu_exec part 2/n

2010-01-15 Thread Paolo Bonzini
The management of env-current_tb is quite complicated. In particular, a while loop that has it as a test condition is actually executed just once, and it is cleared long after it has ceased being meaningful. This patch set straightens things a bit. Patch 1 clears env-current_tb when it is not

[Qemu-devel] [PATCH 2/4] add assertions about env-current_tb

2010-01-15 Thread Paolo Bonzini
By virtue of the previous patch env-current_tb will always be NULL at the top of cpu_exec's outermost for loop, and at the end of the innermost while loop. Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git

[Qemu-devel] [PATCH 1/4] clean up env-current_tb

2010-01-15 Thread Paolo Bonzini
There are three paths from the innermost while loop of cpu_exec to the top of the outermost for loop. Two do not reset env-current_tb. Fix this. Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/cpu-exec.c

[Qemu-devel] [PATCH 3/4] change while to if

2010-01-15 Thread Paolo Bonzini
The while loop will be executed exactly 0 or 1 times, depending on env-exit_request. Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c | 10 +++--- 1 files changed, 3 insertions(+), 7 deletions(-) diff --git a/cpu-exec.c b/cpu-exec.c index d974141..f00151f 100644 ---

[Qemu-devel] [PATCH 4/4] remove assertions

2010-01-15 Thread Paolo Bonzini
Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |4 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/cpu-exec.c b/cpu-exec.c index f00151f..0256edf 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -22,8 +22,6 @@ #include tcg.h #include kvm.h -#include

[Qemu-devel] [PATCH 1/3] remove dead code from target-i386/exec.h

2010-01-15 Thread Paolo Bonzini
These are unused since edea5f0 (no need to define global registers in cpu-exec.c, 2008-05-10). Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- target-i386/exec.h | 48 1 files changed, 0 insertions(+), 48 deletions(-) diff --git

[Qemu-devel] [PATCH] avoid unreachable statement after break

2010-01-15 Thread Paolo Bonzini
Signed-off-by: Paolo Bonzini pbonz...@redhat.com --- cpu-exec.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/cpu-exec.c b/cpu-exec.c index 44d45fc..d974141 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -316,9 +316,9 @@ int cpu_exec(CPUState *env1) #elif

Re: [Qemu-devel] [PATCH 4/8] VNC: Add 'family' key

2010-01-15 Thread Luiz Capitulino
On Fri, 15 Jan 2010 08:54:56 +0100 Gerd Hoffmann kra...@redhat.com wrote: +static QString *get_sock_family(const struct sockaddr_storage *sa) +{ +const char *name; + +switch (sa-ss_family) +{ +case AF_INET: +name = ipv4; +break; +

[Qemu-devel] [PATCH] Fix QEMU_WARN_UNUSED_RESULT

2010-01-15 Thread Kevin Wolf
Since commit 747bbdf7 QEMU_WARN_UNUSED_RESULT is never defined as it is conditional on a define from config-host.h which is included only later. Include that file earlier to get the warnings back. Reactivating it unfortunately leads to some warnings about unused qdev_init results. These calls are

[Qemu-devel] Re: [PATCH] QMP: Save default control monitor for emitting async events

2010-01-15 Thread Luiz Capitulino
On Thu, 14 Jan 2010 15:20:10 -0600 Adam Litke a...@us.ibm.com wrote: When using a control/QMP monitor in tandem with a regular monitor, asynchronous messages can get lost depending on the order of the QEMU program arguments. QEMU events issued by monitor_protocol_event() always go to

[Qemu-devel] Re: [PATCH] QMP: Save default control monitor for emitting async events

2010-01-15 Thread Adam Litke
On Fri, 2010-01-15 at 11:38 -0200, Luiz Capitulino wrote: On Thu, 14 Jan 2010 15:20:10 -0600 Adam Litke a...@us.ibm.com wrote: When using a control/QMP monitor in tandem with a regular monitor, asynchronous messages can get lost depending on the order of the QEMU program arguments.

[Qemu-devel] [PATCH] QMP: Emit asynchronous events on all QMP monitors

2010-01-15 Thread Adam Litke
When using a control/QMP monitor in tandem with a regular monitor, asynchronous messages can get lost depending on the order of the QEMU program arguments. QEMU events issued by monitor_protocol_event() always go to cur_mon. If the user monitor was specified on the command line first (or it has

Re: [Qemu-devel] [PATCH 1/3] remove dead code from target-i386/exec.h

2010-01-15 Thread Tristan Gingold
On Jan 15, 2010, at 8:56 AM, Paolo Bonzini wrote: These are unused since edea5f0 (no need to define global registers in cpu-exec.c, 2008-05-10). Why not removing env_to_regs and regs_to_env ?

[Qemu-devel] Re: [PATCH] QMP: Emit asynchronous events on all QMP monitors

2010-01-15 Thread Luiz Capitulino
On Fri, 15 Jan 2010 08:34:02 -0600 Adam Litke a...@us.ibm.com wrote: When using a control/QMP monitor in tandem with a regular monitor, asynchronous messages can get lost depending on the order of the QEMU program arguments. QEMU events issued by monitor_protocol_event() always go to

Re: [Qemu-devel] [PATCH 1/3] remove dead code from target-i386/exec.h

2010-01-15 Thread Paolo Bonzini
On 01/15/2010 03:54 PM, Tristan Gingold wrote: On Jan 15, 2010, at 8:56 AM, Paolo Bonzini wrote: These are unused since edea5f0 (no need to define global registers in cpu-exec.c, 2008-05-10). Why not removing env_to_regs and regs_to_env ? That's 2/3 indeed. :-) Paolo

[Qemu-devel] Re: [PATCH][RESPIN] QMP: Emit asynchronous events on all QMP monitors

2010-01-15 Thread Adam Litke
On Fri, 2010-01-15 at 13:00 -0200, Luiz Capitulino wrote: The function will return on the first !QMP Monitor, the right QLIST_FOREACH() body is: if (monitor_ctrl_mode(mon)) { monitor_json_emitter(mon, QOBJECT(qmp)); } I'll ACK the respin. Ah right, of course. Thanks and here it is.

[Qemu-devel] Re: [PATCH][RESPIN] QMP: Emit asynchronous events on all QMP monitors

2010-01-15 Thread Luiz Capitulino
On Fri, 15 Jan 2010 09:16:03 -0600 Adam Litke a...@us.ibm.com wrote: On Fri, 2010-01-15 at 13:00 -0200, Luiz Capitulino wrote: The function will return on the first !QMP Monitor, the right QLIST_FOREACH() body is: if (monitor_ctrl_mode(mon)) { monitor_json_emitter(mon,

Re: [Qemu-devel] [PATCH] linux-user: Align mmap memory to the target page size.

2010-01-15 Thread Richard Henderson
On 01/14/2010 04:38 PM, Richard Henderson wrote: Previously, mmap_find_vma could return addresses not properly aligned to the target page size. This of course led to all sorts of odd problems down the road. The trivial fix, to simply reject the unaligned address and continue searching the

[Qemu-devel] [PATCH 0/6] Convert memsave, pmemsave, cpu to QObject+QError

2010-01-15 Thread Markus Armbruster
First patch is cleanup to get rid of an error that can't happen. Rest are straightforward conversions. Markus Armbruster (6): monitor: Don't check for mon_get_cpu() failure QError: New QERR_FOPEN_FAILED monitor: convert do_memory_save() to QError monitor: convert

[Qemu-devel] [PATCH 4/6] monitor: convert do_physical_memory_save() to QError

2010-01-15 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- monitor.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/monitor.c b/monitor.c index 2da3800..6664a04 100644 --- a/monitor.c +++ b/monitor.c @@ -1333,7 +1333,7 @@ static void do_physical_memory_save(Monitor *mon,

[Qemu-devel] [PATCH 5/6] QError: New QERR_INVALID_CPU_INDEX

2010-01-15 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- qerror.c |4 qerror.h |3 +++ 2 files changed, 7 insertions(+), 0 deletions(-) diff --git a/qerror.c b/qerror.c index e7b8ca7..1c0b35e 100644 --- a/qerror.c +++ b/qerror.c @@ -81,6 +81,10 @@ static const QErrorStringTable

[Qemu-devel] [PATCH 6/6] monitor: convert do_cpu_set() to QObject, QError

2010-01-15 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- monitor.c |4 ++-- qemu-monitor.hx |3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/monitor.c b/monitor.c index 6664a04..5f0a54c 100644 --- a/monitor.c +++ b/monitor.c @@ -797,11 +797,11 @@ static void

[Qemu-devel] [PATCH 1/6] monitor: Don't check for mon_get_cpu() failure

2010-01-15 Thread Markus Armbruster
mon_get_cpu() can't return null pointer, because it passes its return value to cpu_synchronize_state() first, which crashes if its argument is null. Remove the (pretty cheesy) handling of this non-existing error. Signed-off-by: Markus Armbruster arm...@redhat.com --- monitor.c | 39

[Qemu-devel] [PATCH 3/6] monitor: convert do_memory_save() to QError

2010-01-15 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- monitor.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/monitor.c b/monitor.c index 988de73..2da3800 100644 --- a/monitor.c +++ b/monitor.c @@ -1306,7 +1306,7 @@ static void do_memory_save(Monitor *mon, const

Re: [Qemu-devel] [PATCH] Fix QEMU_WARN_UNUSED_RESULT

2010-01-15 Thread Markus Armbruster
Kevin Wolf kw...@redhat.com writes: Since commit 747bbdf7 QEMU_WARN_UNUSED_RESULT is never defined as it is conditional on a define from config-host.h which is included only later. Include that file earlier to get the warnings back. Reactivating it unfortunately leads to some warnings about

[Qemu-devel] [PATCH 2/6] QError: New QERR_FOPEN_FAILED

2010-01-15 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- qerror.c |4 qerror.h |3 +++ 2 files changed, 7 insertions(+), 0 deletions(-) diff --git a/qerror.c b/qerror.c index 5f8fc5d..e7b8ca7 100644 --- a/qerror.c +++ b/qerror.c @@ -73,6 +73,10 @@ static const QErrorStringTable

Re: [Qemu-devel] [RFC,PATCH 04/11] qdev: pcibus_dev_info

2010-01-15 Thread Markus Armbruster
Nathan Baum nat...@parenthephobia.org.uk writes: This returns a QObject detailing the PCI-specific data about the device. Signed-off-by: Nathan Baum nat...@parenthephobia.org.uk --- hw/pci.c | 48 1 files changed, 48 insertions(+), 0

Re: [Qemu-devel] [RFC,PATCH 08/11] qdev: Add usb_bus_dev_info

2010-01-15 Thread Markus Armbruster
Nathan Baum nat...@parenthephobia.org.uk writes: Returns a QObject with information about a USB device. Signed-off-by: Nathan Baum nat...@parenthephobia.org.uk --- hw/usb-bus.c | 13 + 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/hw/usb-bus.c

Re: [Qemu-devel] [RFC,PATCH 06/11] qdev: sysbus_dev_info

2010-01-15 Thread Markus Armbruster
Nathan Baum nat...@parenthephobia.org.uk writes: Returns information about the system bus as a QObject. Signed-off-by: Nathan Baum nat...@parenthephobia.org.uk --- hw/sysbus.c | 18 ++ 1 files changed, 18 insertions(+), 0 deletions(-) diff --git a/hw/sysbus.c

Re: [Qemu-devel] [RFC, PATCH 10/11] qdev: Add do_info_qbus and friends.

2010-01-15 Thread Markus Armbruster
Nathan Baum nat...@parenthephobia.org.uk writes: Places information about a bus and the devices on into a QObject. Signed-off-by: Nathan Baum nat...@parenthephobia.org.uk --- hw/qdev.c | 73 + 1 files changed, 73

Re: [Qemu-devel] [RFC,PATCH 00/11] Half-convert info qtree to QMP.

2010-01-15 Thread Markus Armbruster
Nathan Baum nat...@parenthephobia.org.uk writes: Hullo. This series of patches partially converts info qtree to QMP. I've gone halfway: one can use query-qtree in QMP. I haven't converted the old monitor function other than to rename it; do_info_qtree_print just ignores the QObject it is

[Qemu-devel] sparc32 do_unassigned_access overhaul

2010-01-15 Thread Artyom Tarasenko
According to pages 9-31 - 9-34 of SuperSPARC MultiCache Controller User's Manual: 1. A lower priority fault may not overwrite the MFSR status of a higher priority fault. 2. The MFAR is overwritten according to the policy defined for the MFSR 3. The overwrite bit is asserted if the fault

[Qemu-devel] Re: sparc32 do_unassigned_access overhaul

2010-01-15 Thread Blue Swirl
On Fri, Jan 15, 2010 at 6:46 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: According to pages 9-31 - 9-34 of SuperSPARC MultiCache Controller User's Manual: 1. A lower priority fault may not overwrite the    MFSR status of a higher priority fault. 2. The MFAR is overwritten according

[Qemu-devel] virtio: Add memory statistics reporting to the balloon driver (V7)

2010-01-15 Thread Adam Litke
This version improves support for multiple monitors and has been ported up to HEAD as of 01/14. Changes since V6: - Integrated with virtio qdev feature bit changes (specifically: Use VirtIODevice 'guest_features' to check if memory stats is a negotiated feature) - Track which monitor

[Qemu-devel] [PATCH][STABLE] Fix corner case in chardev udp: parameter

2010-01-15 Thread Jan Kiszka
The missing '@' broke 'udp::port@:port' parsing. Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- qemu-char.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/qemu-char.c b/qemu-char.c index b13f8d4..a8a92f5 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -2314,7

[Qemu-devel] Re: sparc32 do_unassigned_access overhaul

2010-01-15 Thread Blue Swirl
On Fri, Jan 15, 2010 at 9:11 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: 2010/1/15 Blue Swirl blauwir...@gmail.com: On Fri, Jan 15, 2010 at 6:46 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: According to pages 9-31 - 9-34 of SuperSPARC MultiCache Controller User's Manual:

[Qemu-devel] sparc32 do_unassigned_access overhaul v2

2010-01-15 Thread Artyom Tarasenko
According to pages 9-31 - 9-34 of SuperSPARC MultiCache Controller User's Manual: 1. A lower priority fault may not overwrite the MFSR status of a higher priority fault. 2. The MFAR is overwritten according to the policy defined for the MFSR 3. The overwrite bit is asserted if the fault

[Qemu-devel] Re: sparc32 do_unassigned_access overhaul v2

2010-01-15 Thread Blue Swirl
Thanks, applied. On Fri, Jan 15, 2010 at 9:28 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: According to pages 9-31 - 9-34 of SuperSPARC MultiCache Controller User's Manual: 1. A lower priority fault may not overwrite the    MFSR status of a higher priority fault. 2. The MFAR is

[Qemu-devel] Re: sparc32 do_unassigned_access overhaul

2010-01-15 Thread Artyom Tarasenko
2010/1/15 Blue Swirl blauwir...@gmail.com: On Fri, Jan 15, 2010 at 9:11 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: 2010/1/15 Blue Swirl blauwir...@gmail.com: On Fri, Jan 15, 2010 at 6:46 PM, Artyom Tarasenko atar4q...@googlemail.com wrote: According to pages 9-31 - 9-34 of

Re: [Qemu-devel] Solaris 2.6 as a Guest O/S

2010-01-15 Thread Artyom Tarasenko
2009/12/19 Blue Swirl blauwir...@gmail.com: On Wed, Dec 16, 2009 at 2:10 PM,  ange...@ntlworld.com wrote: Hi, Sorry if I can already find this answer somwhere on the Qemu site, but I really would like to find out if QEMU support Solaris 2.6 as a Guest operating system but can't find the

[Qemu-devel] sparc32 do not clear interrupts when masking

2010-01-15 Thread Artyom Tarasenko
Don't clear interrupts on disabling, because * Sun4M_SystemArchitecture_edited2.pdf doesn't describe that masking or un-masking IRQ shall clear pending ones. * Field tests also show that SPARCstation-20 doesn't clear them. * The patch makes Solaris 2.5.1/2.6 boot ~1500 times faster (~20

Re: [Qemu-devel] Re: [PATCH] sparc32 irq clearing (guest Solaris performance+NetBSD) fix

2010-01-15 Thread Artyom Tarasenko
after running some OBP/forth tests on a real SS-20 I must say that most of our (especially my) speculations were wrong, as well as what is written in http://www.ibiblio.org/pub/historic-linux/early-ports/Sparc/NCR/NCR89C105.txt : 1. SS-20 may loose interrupts. At least if a timer interrupt was