[Qemu-devel] [Bug 595438] Re: KVM segmentation fault, using SCSI+writeback and linux 2.4 guest

2010-07-01 Thread Jes Sorensen
Could you try and run this in GDB and get the backtrace when it crashes? Just do: gdb /usr/bin/kvm (gdb) set args -M pc-0.12 -enable-kvm -m 256 -smp 1 -name spamsender -uuid b9cacd5e-08f7-41fd-78c8-89cec59af881 -chardev

Re: [Qemu-devel] [PATCH 2/3] blkdebug: Free QemuOpts after having read the config

2010-07-01 Thread Markus Armbruster
Kevin Wolf kw...@redhat.com writes: Forgetting to free them means that the next instance inherits all rules and gets its own rules only additionally. I also found a use for freeing a complete QemuOptsList, here's my solution. The code that needs it isn't ready, yet. If you'd like to use it,

Re: [Qemu-devel] [PATCH 0/3] blkdebug: Fix config with multiple states

2010-07-01 Thread Markus Armbruster
Kevin Wolf kw...@redhat.com writes: Turns out that using more than one state doesn't really work well. I'm trying to reproduce a bug for which I need states, so now is the time to fix it. I'm not familiar with blkdebug, but these look like obvious bug fixes.

[Qemu-devel] Re: [Bug 494500] Re: QEMU 0.12.0 does not support KVM with Kernel 2.6.29, bug in ./configure and kvm-all.c

2010-07-01 Thread Jan Kiszka
rowa wrote: Does the _lastest_ kvm-kmod's install the right headers for the used kernel, for example kernel 2.6.28-11? It installs the headers required to build kvm support into the qemu that allows full-featured kernel or kvm-kmod usage up to the version kvm-kmod carries. As I wrote in

[Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Jan Kiszka
Anthony Liguori wrote: -no-hpet works in every version of qemu/qemu-kvm that has included HPET support. RHEL disables HPET support by default unlike qemu and qemu- kvm. I've updated the bug priority and title to reflect what the issue is. We only support edge triggered interrupts with

[Qemu-devel] [PATCH v3 03/13] blockdev: Remove drive_get_serial()

2010-07-01 Thread Markus Armbruster
Unused since commit 6ced55a5. Signed-off-by: Markus Armbruster arm...@redhat.com --- blockdev.c | 12 blockdev.h |1 - 2 files changed, 0 insertions(+), 13 deletions(-) diff --git a/blockdev.c b/blockdev.c index 3b8c606..e0495e5 100644 --- a/blockdev.c +++ b/blockdev.c @@

[Qemu-devel] [PATCH v3 01/13] scsi: scsi_bus_legacy_handle_cmdline() can fail, fix callers

2010-07-01 Thread Markus Armbruster
None of its callers checks for failure. scsi_hot_add() can crash because of that: (qemu) drive_add 4 if=scsi,format=host_device,file=/dev/sg1 scsi-generic: scsi generic interface too old Segmentation fault (core dumped) Fix all callers, not just scsi_hot_add(). Signed-off-by: Markus Armbruster

[Qemu-devel] [PATCH v3 08/13] block: Catch attempt to attach multiple devices to a blockdev

2010-07-01 Thread Markus Armbruster
For instance, -device scsi-disk,drive=foo -device scsi-disk,drive=foo happily creates two SCSI disks connected to the same block device. It's all downhill from there. Device usb-storage deliberately attaches twice to the same blockdev, which fails with the fix in place. Detach before the second

Re: [Qemu-devel] [PATCH 2/3] blkdebug: Free QemuOpts after having read the config

2010-07-01 Thread Kevin Wolf
Am 01.07.2010 08:47, schrieb Markus Armbruster: Kevin Wolf kw...@redhat.com writes: Forgetting to free them means that the next instance inherits all rules and gets its own rules only additionally. I also found a use for freeing a complete QemuOptsList, here's my solution. The code that

[Qemu-devel] [PATCH v3 06/13] qdev: Decouple qdev_prop_drive from DriveInfo

2010-07-01 Thread Markus Armbruster
Make the property point to BlockDriverState, cutting out the DriveInfo middleman. This prepares the ground for block devices that don't have a DriveInfo. Currently all user-defined ones have a DriveInfo, because the only way to define one is -drive friends (they go through drive_init()).

[Qemu-devel] [PATCH v3 02/13] ide: Make it explicit that ide_create_drive() can't fail

2010-07-01 Thread Markus Armbruster
All callers of ide_create_drive() ignore its value. Currently harmless, because it fails only when qdev_init() fails, which fails only when ide_drive_initfn() fails, which never fails. Brittle. Change it to die instead of silently ignoring failure. Signed-off-by: Markus Armbruster

[Qemu-devel] [PATCH v3 00/13] More block-related fixes and cleanups

2010-07-01 Thread Markus Armbruster
I'm working on cleanly separating block device host and guest parts. I'd like to route all this work through Kevin's block tree. This is still just preliminaries. There will be at least one more round of cleanup fixes before blockdev_add proper. I intend to start with a minimal QMP-only

[Qemu-devel] [PATCH v3 04/13] blockdev: New drive_get_by_blockdev()

2010-07-01 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- blockdev.c | 12 blockdev.h |1 + 2 files changed, 13 insertions(+), 0 deletions(-) diff --git a/blockdev.c b/blockdev.c index e0495e5..ba4f66f 100644 --- a/blockdev.c +++ b/blockdev.c @@ -78,6 +78,18 @@ int

[Qemu-devel] [PATCH v3 09/13] savevm: Survive hot-unplug of snapshot device

2010-07-01 Thread Markus Armbruster
savevm.c keeps a pointer to the snapshot block device. If you manage to get that device deleted, the pointer dangles, and the next snapshot operation will crash burn. Unplugging a guest device that uses it does the trick: $ MALLOC_PERTURB_=234 qemu-system-x86_64 [...] QEMU 0.12.50

[Qemu-devel] [PATCH v3 05/13] blockdev: Clean up automatic drive deletion

2010-07-01 Thread Markus Armbruster
We automatically delete blockdev host parts on unplug of the guest device. Too much magic, but we can't change that now. The delete happens early in the guest device teardown, before the connection to the host part is severed. Thus, the guest part's pointer to the host part dangles for a brief

[Qemu-devel] [PATCH v3 07/13] blockdev: drive_get_by_id() is no longer used, remove

2010-07-01 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- blockdev.c | 12 blockdev.h |1 - 2 files changed, 0 insertions(+), 13 deletions(-) diff --git a/blockdev.c b/blockdev.c index 4848112..cecde2b 100644 --- a/blockdev.c +++ b/blockdev.c @@ -75,18 +75,6 @@ DriveInfo

[Qemu-devel] [PATCH v3 12/13] ide: Make PIIX and ISA IDE init functions return the qdev

2010-07-01 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- hw/ide.h | 11 ++- hw/ide/isa.c |8 hw/ide/piix.c |6 -- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/hw/ide.h b/hw/ide.h index 0e7d540..f0cb320 100644 --- a/hw/ide.h +++ b/hw/ide.h @@

[Qemu-devel] [PATCH] Fix broken --kerneldir

2010-07-01 Thread Prerna Saxena
Set up host kernel include paths specified by --kerneldir When host kernel headers are placed in non-standard paths, the KVM_CFLAGS are presently invoked only for a few .c files (kvm*.c,vhost*.c) and not for other files like machine.c, cpus.c ..etc which also depend on linux/kvm.h

[Qemu-devel] [PATCH v3 10/13] block: Clean up bdrv_snapshots()

2010-07-01 Thread Markus Armbruster
Signed-off-by: Markus Armbruster arm...@redhat.com --- block.c |9 - 1 files changed, 4 insertions(+), 5 deletions(-) diff --git a/block.c b/block.c index acb4182..603874d 100644 --- a/block.c +++ b/block.c @@ -1783,19 +1783,18 @@ BlockDriverState *bdrv_snapshots(void) {

[Qemu-devel] [PATCH v3 13/13] pc: Fix CMOS info for drives defined with -device

2010-07-01 Thread Markus Armbruster
Drives defined with -drive if=ide get get created along with the IDE controller, inside machine-init(). That's before cmos_init(). Drives defined with -device get created during generic device init. That's after cmos_init(). Because of that, CMOS has no information on them (type, geometry,

[Qemu-devel] [PATCH v3 11/13] block: Fix virtual media change for if=none

2010-07-01 Thread Markus Armbruster
BlockDriverState member removable controls whether virtual media change (monitor commands change, eject) is allowed. It is set when the type hint is BDRV_TYPE_CDROM or BDRV_TYPE_FLOPPY. The type hint is only set by drive_init(). It sets BDRV_TYPE_FLOPPY for if=floppy. It sets BDRV_TYPE_CDROM

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Gleb Natapov
On Thu, Jul 01, 2010 at 09:13:48AM +0200, Jan Kiszka wrote: We could potentially use the reset_irq_delivered/get_irq_delivered APIC functions to implement interrupt catch-up but I think it would be better to try to merge Jan's generic IRQ delivered API first. Which one? I'm a bit tired

[Qemu-devel] Re: [PATCH v3 00/13] More block-related fixes and cleanups

2010-07-01 Thread Kevin Wolf
Am 01.07.2010 09:30, schrieb Markus Armbruster: I'm working on cleanly separating block device host and guest parts. I'd like to route all this work through Kevin's block tree. This is still just preliminaries. There will be at least one more round of cleanup fixes before blockdev_add

Re: [Qemu-devel] Re: [V9fs-developer] [PATCH] virtio-9p: getattr server implementation for 9P2000.L protocol.

2010-07-01 Thread Sripathi Kodi
On Thu, 01 Jul 2010 11:01:15 +0530 Aneesh Kumar K. V aneesh.ku...@linux.vnet.ibm.com wrote: On Fri, 28 May 2010 16:08:43 +0530, Sripathi Kodi sripat...@in.ibm.com wrote: From: M. Mohan Kumar mo...@in.ibm.com SYNOPSIS size[4] Tgetattr tag[2] fid[4] size[4] Rgetattr

Re: [Qemu-devel] [PATCH 01/14] Add new data type for fprintf like function pointers

2010-07-01 Thread Stefan Weil
Am 09.04.2010 13:20, schrieb Stefan Weil: Aurelien Jarno schrieb: On Mon, Mar 29, 2010 at 09:16:52PM +0200, Stefan Weil wrote: The compiler should check the arguments for these functions. gcc can do this, but only if the function pointer's prototype includes the __attribute__ flag. As the

[Qemu-devel] Re: [PATCH][Tracing] Fix build errors for target i386-linux-user

2010-07-01 Thread Stefan Hajnoczi
On Wed, Jun 30, 2010 at 09:11:45PM +0530, Prerna Saxena wrote: [PATCH 1/1] Move definitions of monitor command handlers (do_info_trace, do_info_all_trace_events) to monitor.c. This removes build errors for user targets such as i386-linux-user, which are not linked with monitor. The export

[Qemu-devel] [PATCH 1/2] virtio-serial: Check if virtio queue is ready before consuming data

2010-07-01 Thread Amit Shah
If a virtio-serial port is removed before the guest comes up and initialises the virtqueues, qemu exits with the message Guest moved used index from 0 to 61440 This happens because we try to clear any pending buffers from the virtqueue. Ensure the virtqueue is initialised before calling any

[Qemu-devel] Re: [PATCH] qemu-img: avoid calling exit(1) to release resources properly

2010-07-01 Thread Kevin Wolf
Am 20.06.2010 21:26, schrieb MORITA Kazutaka: This patch removes exit(1) from error(), and properly releases resources such as a block driver and an allocated memory. For testing the Sheepdog block driver with qemu-iotests, it is necessary to call bdrv_delete() before the program exits.

[Qemu-devel] [PATCH 2/2] virtio-serial: Assert for virtio queue ready before virtqueue operations

2010-07-01 Thread Amit Shah
In addition to the previous fix for calling do_flush_queued_data() only when the virtqueue is ready, ensure do_flush_queued_data() gets a vq that's suitably initialised. Signed-off-by: Amit Shah amit.s...@redhat.com --- hw/virtio-serial-bus.c |1 + 1 files changed, 1 insertions(+), 0

Re: [Qemu-devel] Re: [Bug 494500] Re: QEMU 0.12.0 does not support KVM with Kernel 2.6.29, bug in ./configure and kvm-all.c

2010-07-01 Thread Jes Sorensen
On 07/01/10 09:04, Jan Kiszka wrote: As I wrote in this bug I had problems with a kernel 2.6.28-11 and the _latest_ version of kvm-kmod. It works only with the right (not the latest) version of kvm-kmod. Once you properly installed the kernel headers that kvm-kmod delivers, qemu should

[Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Stefan Weil
Mingw32 does not provide a declaration and implementation of function setenv (which is used in sdl.c), so this patch adds both. Signed-off-by: Stefan Weil w...@mail.berlios.de --- os-win32.c | 15 +++ osdep.h|2 ++ 2 files changed, 17 insertions(+), 0 deletions(-) diff

[Qemu-devel] Add argument checking for a number of functions

2010-07-01 Thread Stefan Weil
gcc can check printf like variable arguments. These patches tell gcc to do so for several functions. [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments) [PATCH 2/4] darwin-user: Add GCC attribute (check format arguments) [PATCH 3/4] qemu-char.h: Add GCC attribute (check format

[Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments)

2010-07-01 Thread Stefan Weil
Signed-off-by: Stefan Weil w...@mail.berlios.de --- blockdev.h |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/blockdev.h b/blockdev.h index 23ea576..3c5c85d 100644 --- a/blockdev.h +++ b/blockdev.h @@ -42,7 +42,8 @@ extern int drive_get_max_bus(BlockInterfaceType

[Qemu-devel] [PATCH 2/4] darwin-user: Add GCC attribute (check format arguments)

2010-07-01 Thread Stefan Weil
Signed-off-by: Stefan Weil w...@mail.berlios.de --- darwin-user/qemu.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/darwin-user/qemu.h b/darwin-user/qemu.h index 462bbda..c8adce7 100644 --- a/darwin-user/qemu.h +++ b/darwin-user/qemu.h @@ -100,7 +100,7 @@ int

[Qemu-devel] [PATCH 4/4] slirp.h: Add GCC attribute (check format arguments)

2010-07-01 Thread Stefan Weil
Signed-off-by: Stefan Weil w...@mail.berlios.de --- slirp/slirp.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/slirp/slirp.h b/slirp/slirp.h index 98a2644..c30c19e 100644 --- a/slirp/slirp.h +++ b/slirp/slirp.h @@ -294,7 +294,7 @@ void if_start(struct ttys *); long

[Qemu-devel] [PATCH v2 0/4] blkdebug: Fix config with multiple states

2010-07-01 Thread Kevin Wolf
Turns out that using more than one state doesn't really work well. I'm trying to reproduce a bug for which I need states, so now is the time to fix it. v2: - Use Markus' qemu_opts_reset for freeing QemuOpts. Makes the code reusable and fixes a use-after-free bug. Kevin Wolf (3): blkdebug:

[Qemu-devel] [PATCH v2 1/4] qemu-option: New qemu_opts_reset()

2010-07-01 Thread Kevin Wolf
From: Markus Armbruster arm...@redhat.com Signed-off-by: Markus Armbruster arm...@redhat.com Signed-off-by: Kevin Wolf kw...@redhat.com --- qemu-option.c |9 + qemu-option.h |1 + 2 files changed, 10 insertions(+), 0 deletions(-) diff --git a/qemu-option.c b/qemu-option.c index

[Qemu-devel] [PATCH 3/4] qemu-char.h: Add GCC attribute (check format arguments)

2010-07-01 Thread Stefan Weil
Signed-off-by: Stefan Weil w...@mail.berlios.de --- qemu-char.h |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/qemu-char.h b/qemu-char.h index e3a0783..1bbac6e 100644 --- a/qemu-char.h +++ b/qemu-char.h @@ -76,7 +76,8 @@ CharDriverState *qemu_chr_open_opts(QemuOpts

[Qemu-devel] [PATCH v2 2/4] blkdebug: Fix set_state_opts definition

2010-07-01 Thread Kevin Wolf
The list head was initialized to point to the wrong list, so all actions ended up being handled as inject-error even if they were set-state in fact. Signed-off-by: Kevin Wolf kw...@redhat.com --- block/blkdebug.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git

[Qemu-devel] [PATCH v2 4/4] blkdebug: Initialize state as 1

2010-07-01 Thread Kevin Wolf
state = 0 in rules means that the rule is valid for any state. Therefore it's impossible to have a rule that works only in the initial state. This changes the initial state from 0 to 1 to make this possible. Signed-off-by: Kevin Wolf kw...@redhat.com --- block/blkdebug.c |3 +++ 1 files

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Jes Sorensen
On 07/01/10 12:47, Stefan Weil wrote: Mingw32 does not provide a declaration and implementation of function setenv (which is used in sdl.c), so this patch adds both. Signed-off-by: Stefan Weil w...@mail.berlios.de [snip] diff --git a/osdep.h b/osdep.h index 75b5816..1cdc7e2 100644 ---

Re: [Qemu-devel] [PATCH] make qemu.log name unique

2010-07-01 Thread Christophe LYON
Maybe adding a -logfile option would allow what you're trying to achieve without affecting other use cases? I've always thought that it's strange that you can only change the logfile location in the monitor and not on the command line. Kevin Here is patch that does what you suggest.

Re: [Qemu-devel] [PATCH v2 0/4] blkdebug: Fix config with multiple states

2010-07-01 Thread Markus Armbruster
Looks good to me.

[Qemu-devel] [Bug 600589] [NEW] xchg r8,rax treated as nop

2010-07-01 Thread Vic3Dexe
Public bug reported: xchg r8,rax (49h 90h) executed as nop (90h) in long mode, in other words REX not used. qemu 0.12.4, host Win 7 x64, running qemu-system-x86_64.exe. ** Affects: qemu Importance: Undecided Status: New -- xchg r8,rax treated as nop

Re: [Qemu-devel] Re: [V9fs-developer] [PATCH] virtio-9p: getattr server implementation for 9P2000.L protocol.

2010-07-01 Thread Aneesh Kumar K. V
On Thu, 1 Jul 2010 14:26:13 +0530, Sripathi Kodi sripat...@in.ibm.com wrote: On Thu, 01 Jul 2010 11:01:15 +0530 Aneesh Kumar K. V aneesh.ku...@linux.vnet.ibm.com wrote: On Fri, 28 May 2010 16:08:43 +0530, Sripathi Kodi sripat...@in.ibm.com wrote: From: M. Mohan Kumar mo...@in.ibm.com

Re: [Qemu-devel] [PATCH] make qemu.log name unique

2010-07-01 Thread Stefan Weil
Am 01.07.2010 13:53, schrieb Christophe LYON: Maybe adding a -logfile option would allow what you're trying to achieve without affecting other use cases? I've always thought that it's strange that you can only change the logfile location in the monitor and not on the command line. Kevin

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Stefan Weil
Am 01.07.2010 13:50, schrieb Jes Sorensen: On 07/01/10 12:47, Stefan Weil wrote: Mingw32 does not provide a declaration and implementation of function setenv (which is used in sdl.c), so this patch adds both. Signed-off-by: Stefan Weilw...@mail.berlios.de [snip] diff --git

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Jes Sorensen
On 07/01/10 15:22, Stefan Weil wrote: It won't fail for two reasons: * It is not redefined (at least for linux systems) because I used the POSIX declaration. This still fails with strict compiler flags. * It is compiled only for _WIN32 (see line 95). True, but we need to move stuff out of

[Qemu-devel] [PATCH 2/2] block: Handle multiwrite errors only when all requests have completed

2010-07-01 Thread Kevin Wolf
Don't try to be clever by freeing all temporary data and calling all callbacks when the return value (an error) is certain. Doing so has at least two important problems: * The temporary data that is freed (qiov, possibly zero buffer) is still used by the requests that have not yet completed. *

[Qemu-devel] [PATCH 1/2] block: Fix too early free in multiwrite

2010-07-01 Thread Kevin Wolf
bdrv_aio_writev may call the callback immediately (and it will commonly do so in error cases). If num_requests doesn't have its final value yet, multiwrite_cb will falsely detect that all requests are completed and frees the mcb. However, the mcb is still used by other requests that are started

[Qemu-devel] [PATCH 0/2] block: Fix multiwrite error handling

2010-07-01 Thread Kevin Wolf
The bdrv_aio_multiwrite error handling has some bugs that lead to premature cleanup, causing use-after-free and double free problems. Kevin Wolf (2): block: Fix too early free in multiwrite block: Handle multiwrite errors only when all requests have completed block.c | 11 +++ 1

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Paul Brook
Since it solves existing problem and is rejected without any rational explanation and without proposing alternative solution (in form of code) it should be committed. No. This is not sufficient justification for applying a patch. We should not be accepting patches just because they exist. If

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Stefan Weil
Am 01.07.2010 15:24, schrieb Jes Sorensen: On 07/01/10 15:22, Stefan Weil wrote: It won't fail for two reasons: * It is not redefined (at least for linux systems) because I used the POSIX declaration. This still fails with strict compiler flags. * It is compiled only for _WIN32 (see line

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Jes Sorensen
On 07/01/10 17:51, Stefan Weil wrote: Am 01.07.2010 15:24, schrieb Jes Sorensen: On 07/01/10 15:22, Stefan Weil wrote: It won't fail for two reasons: * It is not redefined (at least for linux systems) because I used the POSIX declaration. This still fails with strict compiler flags. * It

[Qemu-devel] Re: [PATCH] Add vapic.bin to .gitignore

2010-07-01 Thread Marcelo Tosatti
On Thu, Jul 01, 2010 at 12:31:16PM +0900, Hidetoshi Seto wrote: # This patch is for qemu-kvm.git The vapic.bin is a generated binary file. Signed-off-by: Hidetoshi Seto seto.hideto...@jp.fujitsu.com --- .gitignore |1 + 1 files changed, 1 insertions(+), 0 deletions(-) Applied,

Re: [Qemu-devel] [Bug 600589] [NEW] xchg r8,rax treated as nop

2010-07-01 Thread Richard Henderson
On 07/01/2010 05:04 AM, Vic3Dexe wrote: Public bug reported: xchg r8,rax (49h 90h) executed as nop (90h) in long mode, in other words REX not used. qemu 0.12.4, host Win 7 x64, running qemu-system-x86_64.exe. ** Affects: qemu Importance: Undecided Status: New

[Qemu-devel] [PATCH] target-i386: Fix xchg rax,r8

2010-07-01 Thread Richard Henderson
We were ignoring REX_B while special-casing NOP, i.e. xchg eax,eax. Signed-off-by: Richard Henderson r...@twiddle.net --- target-i386/translate.c |9 +++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index

Re: [Qemu-devel] [Bug 600589] [NEW] xchg r8,rax treated as nop

2010-07-01 Thread malc
On Thu, 1 Jul 2010, Richard Henderson wrote: On 07/01/2010 05:04 AM, Vic3Dexe wrote: Public bug reported: xchg r8,rax (49h 90h) executed as nop (90h) in long mode, in other words REX not used. qemu 0.12.4, host Win 7 x64, running qemu-system-x86_64.exe. ** Affects: qemu

Re: [Qemu-devel] Add argument checking for a number of functions

2010-07-01 Thread Richard Henderson
On 07/01/2010 04:08 AM, Stefan Weil wrote: gcc can check printf like variable arguments. These patches tell gcc to do so for several functions. [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments) [PATCH 2/4] darwin-user: Add GCC attribute (check format arguments) [PATCH 3/4]

[Qemu-devel] [Bug 588955] Re: qemu segfaults when trying to install winvista64 sp2 64 bit on VM

2010-07-01 Thread Lucas Meneghel Rodrigues
** Description changed: When trying to install windows vista sp2 64bit on a KVM VM, we get consistently a segfault. Version of qemu affected: Commit hash for git://git.savannah.nongnu.org/qemu.git is d9b73e47a3d596c5b33802597ec5bd91ef3348e2 (no tag found) Backtrace: -

Re: [Qemu-devel] [PATCH] win32: Add missing function setenv

2010-07-01 Thread Stefan Weil
Am 01.07.2010 17:53, schrieb Jes Sorensen: On 07/01/10 17:51, Stefan Weil wrote: Am 01.07.2010 15:24, schrieb Jes Sorensen: On 07/01/10 15:22, Stefan Weil wrote: It won't fail for two reasons: * It is not redefined (at least for linux systems) because I used the POSIX

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Anthony Liguori
On 07/01/2010 02:13 AM, Jan Kiszka wrote: Anthony Liguori wrote: -no-hpet works in every version of qemu/qemu-kvm that has included HPET support. RHEL disables HPET support by default unlike qemu and qemu- kvm. I've updated the bug priority and title to reflect what the issue is. We only

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Anthony Liguori
On 07/01/2010 10:45 AM, Paul Brook wrote: Since it solves existing problem and is rejected without any rational explanation and without proposing alternative solution (in form of code) it should be committed. No. This is not sufficient justification for applying a patch. We should not be

[Qemu-devel] [PATCH 00/23][PULL]: QMP/Monitor queue

2010-07-01 Thread Luiz Capitulino
Hi Anthony, The following QMP/Monitor patches have been sent to the list and look good to me. I also did some basic testing on them. Most of these changes are bug fixes, the only exception is my new argument checker series, which is a complete rewrite (that also fix bugs...). The changes (since

[Qemu-devel] [PATCH 01/23] monitor: Fix leakage during completion processing

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com Given too many arguments or an invalid command, we were leaking the duplicated argument strings. Signed-off-by: Jan Kiszka jan.kis...@siemens.com Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- monitor.c | 23 +++ 1 files

[Qemu-devel] [PATCH 02/23] monitor: Fix command completion vs. boolean switches

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com We now have to move forward to the next argument type via next_arg_type. This patch fixes completion for 'eject' and maybe also other commands. Signed-off-by: Jan Kiszka jan.kis...@siemens.com Signed-off-by: Luiz Capitulino lcapitul...@redhat.com ---

[Qemu-devel] [PATCH 05/23] QMP: Fix python helper /wrt long return strings

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com Remove the arbitrary limitation of 1024 characters per return string and read complete lines instead. Required for device_show. Signed-off-by: Jan Kiszka jan.kis...@siemens.com Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- QMP/qmp.py |6

[Qemu-devel] [PATCH 03/23] monitor: Establish cmd flags and convert the async tag

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com As we want to add more flags to monitor commands, convert the only so far existing one accordingly. Signed-off-by: Jan Kiszka jan.kis...@siemens.com Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- monitor.c |6 +++--- monitor.h |

[Qemu-devel] [PATCH 07/23] QMP: Fix error reporting in the async API

2010-07-01 Thread Luiz Capitulino
The current asynchronous command API doesn't return a QMP response when the async command fails. This is easy to reproduce with the balloon command (the sole async command we have so far): run qemu w/o the '-balloon virtio' option and try to issue the balloon command via QMP: no response will be

[Qemu-devel] [PATCH 06/23] net: delete QemuOpts when net_client_init() fails.

2010-07-01 Thread Luiz Capitulino
From: Yoshiaki Tamura tamura.yoshi...@lab.ntt.co.jp This fixes the following scenario using QMP. First, put a bogus argument foo to type, which results in an error. {execute: netdev_add, arguments: { type: foo, id: netdev1 } } Then, call it again with correct argument user. {execute: netdev_add,

[Qemu-devel] [PATCH 04/23] QMP: Teach basic capability negotiation to python example

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com As sending qmp_capabilities on session start became mandatory, both python examples were broken. Signed-off-by: Jan Kiszka jan.kis...@siemens.com Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- QMP/qmp-shell |1 + QMP/vm-info |1 + 2

[Qemu-devel] [PATCH 10/23] QDict: Small terminology change

2010-07-01 Thread Luiz Capitulino
Let's call a 'hash' only what is returned by our hash function, anything else is a 'bucket'. This helps avoiding confusion with regard to how we traverse our table. Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- check-qdict.c |2 +- qdict.c | 24

[Qemu-devel] [PATCH 09/23] QDict: Rename 'err_value'

2010-07-01 Thread Luiz Capitulino
A missing key is not an error. Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- qdict.c |6 +++--- qdict.h |2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/qdict.c b/qdict.c index 175bc17..c974d6f 100644 --- a/qdict.c +++ b/qdict.c @@ -272,16 +272,16 @@

[Qemu-devel] [PATCH 12/23] QDict: Introduce new iteration API

2010-07-01 Thread Luiz Capitulino
It's composed of functions qdict_first() and qdict_next(), plus functions to access QDictEntry values. This API was suggested by Markus Armbruster arm...@redhat.com and it offers full control over the iteration process. The usage is simple, the following example prints all keys in 'qdict' (it's

[Qemu-devel] [PATCH 11/23] QDict: Introduce functions to retrieve QDictEntry values

2010-07-01 Thread Luiz Capitulino
Next commit will introduce a new QDict iteration API which returns QDictEntry entries, but we don't want users to directly access its members since QDictEntry should be private to QDict. In the near future this kind of data type will be turned into a forward reference. Signed-off-by: Luiz

[Qemu-devel] [PATCH 13/23] check-qdict: Introduce test for the new iteration API

2010-07-01 Thread Luiz Capitulino
Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- check-qdict.c | 31 +++ 1 files changed, 31 insertions(+), 0 deletions(-) diff --git a/check-qdict.c b/check-qdict.c index 1b070f4..6afce5a 100644 --- a/check-qdict.c +++ b/check-qdict.c @@ -194,6 +194,36 @@

[Qemu-devel] [PATCH 16/23] QMP: New argument checker (first part)

2010-07-01 Thread Luiz Capitulino
Current QMP's argument checker is more complex than it should be and has (at least) one serious bug: it ignores unknown arguments. To solve both problems we introduce a new argument checker. It's added on top of the existing one, so that there are no regressions during the transition. This

[Qemu-devel] [PATCH 15/23] Monitor: handle optional '-' arg as a bool

2010-07-01 Thread Luiz Capitulino
Historically, user monitor arguments beginning with '-' (eg. '-f') were passed as integers down to handlers. I've maintained this behavior in the new monitor because we didn't have a boolean type at the very beginning of QMP. Today we have it and this behavior is causing trouble to QMP's argument

[Qemu-devel] [PATCH 14/23] QDict: Introduce qdict_get_try_bool()

2010-07-01 Thread Luiz Capitulino
Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- qdict.c | 18 ++ qdict.h |1 + 2 files changed, 19 insertions(+), 0 deletions(-) diff --git a/qdict.c b/qdict.c index a28a0a9..dee0fb4 100644 --- a/qdict.c +++ b/qdict.c @@ -308,6 +308,24 @@ int64_t

[Qemu-devel] [PATCH 17/23] QMP: New argument checker (second part)

2010-07-01 Thread Luiz Capitulino
This commit introduces the second (and last) part of QMP's new argument checker. The job is done by check_client_args_type(), it iterates over the client's argument qdict and for for each argument it checks if it exists and if its type is valid. It's important to observe the following changes

[Qemu-devel] [PATCH 19/23] QError: Introduce QERR_QMP_EXTRA_MEMBER

2010-07-01 Thread Luiz Capitulino
Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- qerror.c |4 qerror.h |3 +++ 2 files changed, 7 insertions(+), 0 deletions(-) diff --git a/qerror.c b/qerror.c index cce1e7b..2f6f590 100644 --- a/qerror.c +++ b/qerror.c @@ -177,6 +177,10 @@ static const QErrorStringTable

[Qemu-devel] [PATCH 18/23] QMP: Drop old client argument checker

2010-07-01 Thread Luiz Capitulino
Previous two commits added qmp_check_client_args(), which fully replaces this code and is way better. It's important to note that the new checker doesn't support the '/' arg type. As we don't have any of those handlers converted to QMP, this is just dead code. Signed-off-by: Luiz Capitulino

[Qemu-devel] Re: Status update

2010-07-01 Thread Eduard - Gabriel Munteanu
On Wed, Jun 30, 2010 at 09:37:31AM +0100, Stefan Hajnoczi wrote: On Tue, Jun 29, 2010 at 6:25 PM, Eduard - Gabriel Munteanu eduard.munte...@linux360.ro wrote: On the other hand, we could just leave it alone for now. Changing mappings during DMA is stupid anyway: I don't think the guest can

[Qemu-devel] [PATCH 23/23] monitor: Allow to exclude commands from QMP

2010-07-01 Thread Luiz Capitulino
From: Jan Kiszka jan.kis...@siemens.com Ported commands that are marked 'user_only' will not be considered for QMP monitor sessions. This allows to implement new commands that do not (yet) provide a sufficiently stable interface for QMP use. Signed-off-by: Jan Kiszka jan.kis...@siemens.com

[Qemu-devel] [PATCH 20/23] QMP: Introduce qmp_check_input_obj()

2010-07-01 Thread Luiz Capitulino
This is similar to qmp_check_client_args(), but it checks if the input object follows the specification (QMP/qmp-spec.txt section 2.3). As we're limited to three keys, the work here is quite simple: we iterate over the input object, checking each time if the current argument complies to the

[Qemu-devel] [PATCH 21/23] QMP: Drop old input object checking

2010-07-01 Thread Luiz Capitulino
Previous commit added qmp_check_input_obj(), it does all the checking we need. Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- monitor.c | 19 +-- 1 files changed, 1 insertions(+), 18 deletions(-) diff --git a/monitor.c b/monitor.c index 22e0650..1c8992b 100644 ---

Re: [Qemu-devel] [PATCH] Makefile: add fsdev/*.{o,d} to clean

2010-07-01 Thread Blue Swirl
2010/7/1 Hidetoshi Seto seto.hideto...@jp.fujitsu.com: There were fsdev/qemu-fsdev.{o,d} not removed at make clean. Signed-off-by: Hidetoshi Seto seto.hideto...@jp.fujitsu.com ---  Makefile |    2 +-  1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/Makefile b/Makefile index

[Qemu-devel] [PATCH 22/23] QMP: handle_qmp_command(): Small cleanup

2010-07-01 Thread Luiz Capitulino
Drop a unneeded label and QDECREF() call. Signed-off-by: Luiz Capitulino lcapitul...@redhat.com --- monitor.c | 14 ++ 1 files changed, 6 insertions(+), 8 deletions(-) diff --git a/monitor.c b/monitor.c index 1c8992b..00a627a 100644 --- a/monitor.c +++ b/monitor.c @@ -4234,7

[Qemu-devel] Re: [PATCH 4/4] require #define NEED_GLOBAL_ENV for files that need the global register variable

2010-07-01 Thread Blue Swirl
On Wed, Jun 30, 2010 at 8:56 AM, Paolo Bonzini pbonz...@redhat.com wrote: Wouldn't it be better to just put this in dyngen-exec.h ? AFAICT there's a direct correlation between NEED_GLOBAL_ENV and #include exec.h. True, see cover letter in 0/4.  I was told to make each file request explicitly

Re: [Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments)

2010-07-01 Thread Blue Swirl
On Thu, Jul 1, 2010 at 11:08 AM, Stefan Weil w...@mail.berlios.de wrote: Signed-off-by: Stefan Weil w...@mail.berlios.de ---  blockdev.h |    3 ++-  1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/blockdev.h b/blockdev.h index 23ea576..3c5c85d 100644 --- a/blockdev.h +++

Re: [Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments)

2010-07-01 Thread Stefan Weil
Am 01.07.2010 22:10, schrieb Blue Swirl: On Thu, Jul 1, 2010 at 11:08 AM, Stefan Weil w...@mail.berlios.de wrote: Signed-off-by: Stefan Weil w...@mail.berlios.de --- blockdev.h |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/blockdev.h b/blockdev.h index

[Qemu-devel] [PATCH] ARM v4t/arm920t support

2010-07-01 Thread Rob Landley
I just confirmed that Vincent Sanders' patch (which he posted on May 29, 2009, and again on November 27, 2009) still applies to (and works with )current qemu-git. It adds a -cpu arm920t option to qemu-system-arm which boots a Linux kernel configured with CONFIG_CPU_ARM920T=y, which isn't possible

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups

2010-07-01 Thread Paul Brook
I really see no tangible objection to Jan's patches. They don't impact any other code. They don't inhibit flexibility in the infrastructure. You might consider it to be a hack but so what. QEMU is filled with hacks. It would be useless without them because there would be very little code.

[Qemu-devel] Re: [PATCH] ARM v4t/arm920t support

2010-07-01 Thread Paul Brook
Here is the patch again. There may be more work to be done on top of this, but this patch staying out of tree hasn't noticeably accelerated that work in the past year and change. Could it please be merged? As mentioned previously, V5 should be split into its component parts. Paul

Re: [Qemu-devel] [PATCH 0/0] fix ARM parallel instructions implementation bug

2010-07-01 Thread Aurelien Jarno
On Mon, Jun 28, 2010 at 11:54:03PM +0800, Chih-Min Chao wrote: The three patches focuse on Bugs 595906 Bug 591320. The first is related to Bug 595906 and the other solve Bug 591320. The series are also attached in the threads, listed below https://bugs.launchpad.net/qemu/+bug/595906

Re: [Qemu-devel] [PATCH] Makefile: add qemu-options.def to distclean

2010-07-01 Thread Aurelien Jarno
On Thu, Jul 01, 2010 at 12:32:32PM +0900, Hidetoshi Seto wrote: Remove generated qemu-options.def at make distclean. Signed-off-by: Hidetoshi Seto seto.hideto...@jp.fujitsu.com --- Makefile |1 + 1 files changed, 1 insertions(+), 0 deletions(-) Thanks, applied. diff --git a/Makefile

Re: [Qemu-devel] [PATCH] Add QMP/qmp-commands.txt to .gitignore

2010-07-01 Thread Aurelien Jarno
On Thu, Jul 01, 2010 at 12:30:23PM +0900, Hidetoshi Seto wrote: QMP/qmp-commands.txt is a generated file. Signed-off-by: Hidetoshi Seto seto.hideto...@jp.fujitsu.com --- .gitignore |1 + 1 files changed, 1 insertions(+), 0 deletions(-) Thanks, applied. diff --git a/.gitignore

Re: [Qemu-devel] [PATCH] target-i386: Fix xchg rax,r8

2010-07-01 Thread Aurelien Jarno
On Thu, Jul 01, 2010 at 09:42:21AM -0700, Richard Henderson wrote: We were ignoring REX_B while special-casing NOP, i.e. xchg eax,eax. Signed-off-by: Richard Henderson r...@twiddle.net --- target-i386/translate.c |9 +++-- 1 files changed, 7 insertions(+), 2 deletions(-) Applied,

Re: [Qemu-devel] [PATCH 1/4] blockdev.h: Add GCC attribute (check format arguments)

2010-07-01 Thread malc
On Thu, 1 Jul 2010, Stefan Weil wrote: Am 01.07.2010 22:10, schrieb Blue Swirl: On Thu, Jul 1, 2010 at 11:08 AM, Stefan Weil w...@mail.berlios.de wrote: Signed-off-by: Stefan Weil w...@mail.berlios.de --- blockdev.h |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)

[Qemu-devel] [PATCH] [RFC] target-mips: add loongson 2E 2F integer instructions

2010-07-01 Thread Aurelien Jarno
This patch adds support for loongson 2E 2F instructions. They are the same instructions, but differ by the opcode encoding. This patch has still a few problems (hence the RFC), but is enough to boot a fulong 2E kernel built with the -mloongson2e flag: - I am unable to understand the difference

  1   2   >