mbox

[PULL] piix, pci, qdev

Message ID 20101227172140.GA18898@redhat.com
State New
Headers show

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/mst/qemu.git for_anthony

Message

Michael S. Tsirkin Dec. 27, 2010, 5:21 p.m. UTC
The sysbus change is already in master, but I didn't want to rebase the
tree. I verified there's no conflict when merging.

The only thing that might be controversial here is the
bridge migration path, but the patch was out for pretty
long without comments (besides a style comment by Stefan Weil, fixed that),
and it's not changing anything that isn't already broken.
Maybe it's fine, or maybe merging it will make people notice ;).

The following changes since commit 4cdc1cd137e0b98766916a7cdf2d5a9b3c6632fa:

  target-mips: fix host CPU consumption when guest is idle (2010-12-27 00:58:06 +0100)

are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/mst/qemu.git for_anthony

Isaku Yamahata (7):
      qbus: register reset handler for qbus whose parent is NULL
      pc/piix: fix mismerge of b1aeb92666d2fde413c34578b3b42bbfe5f2a506
      pcie: add flr support
      build, pci: remove QMP dependency on core PCI code
      qdev: export qdev_find_recursive() for later use
      pci: introduce a helper function to convert qdev id to PCIDevice
      pcie/aer: glue aer error injection into qemu monitor

Michael S. Tsirkin (3):
      pci: don't use bus number in migration, stub out
      qdev: remove an unused function
      pci: fix migration path for devices behind bridges

Stefan Weil (1):
      qdev: sysbus_get_default must not return a NULL pointer (fix regression)

 Makefile.objs           |    4 +-
 Makefile.target         |    2 +
 hmp-commands.hx         |   25 +++++
 hw/pc_piix.c            |   12 +--
 hw/pci-stub.c           |   50 +++++++++++
 hw/pci.c                |   82 ++++++++++++++++--
 hw/pci.h                |    2 +
 hw/pcie.c               |   11 +--
 hw/pcie.h               |    2 -
 hw/pcie_aer.c           |  223 +++++++++++++++++++++++++++++++++++++++++++++++
 hw/qdev.c               |   22 +++--
 hw/qdev.h               |    5 +-
 hw/xio3130_downstream.c |    2 +-
 hw/xio3130_upstream.c   |    3 -
 sysemu.h                |    5 +
 vl.c                    |    4 +-
 16 files changed, 415 insertions(+), 39 deletions(-)
 create mode 100644 hw/pci-stub.c

Comments

Anthony Liguori Jan. 10, 2011, 5:07 p.m. UTC | #1
On 12/27/2010 11:21 AM, Michael S. Tsirkin wrote:
> The sysbus change is already in master, but I didn't want to rebase the
> tree. I verified there's no conflict when merging.
>
> The only thing that might be controversial here is the
> bridge migration path, but the patch was out for pretty
> long without comments (besides a style comment by Stefan Weil, fixed that),
> and it's not changing anything that isn't already broken.
> Maybe it's fine, or maybe merging it will make people notice ;).
>
> The following changes since commit 4cdc1cd137e0b98766916a7cdf2d5a9b3c6632fa:
>
>    target-mips: fix host CPU consumption when guest is idle (2010-12-27 00:58:06 +0100)
>
> are available in the git repository at:
>    git://git.kernel.org/pub/scm/linux/kernel/git/mst/qemu.git for_anthony
>    

Pulled.  Thanks.

Regards,

Anthony Liguori

> Isaku Yamahata (7):
>        qbus: register reset handler for qbus whose parent is NULL
>        pc/piix: fix mismerge of b1aeb92666d2fde413c34578b3b42bbfe5f2a506
>        pcie: add flr support
>        build, pci: remove QMP dependency on core PCI code
>        qdev: export qdev_find_recursive() for later use
>        pci: introduce a helper function to convert qdev id to PCIDevice
>        pcie/aer: glue aer error injection into qemu monitor
>
> Michael S. Tsirkin (3):
>        pci: don't use bus number in migration, stub out
>        qdev: remove an unused function
>        pci: fix migration path for devices behind bridges
>
> Stefan Weil (1):
>        qdev: sysbus_get_default must not return a NULL pointer (fix regression)
>
>   Makefile.objs           |    4 +-
>   Makefile.target         |    2 +
>   hmp-commands.hx         |   25 +++++
>   hw/pc_piix.c            |   12 +--
>   hw/pci-stub.c           |   50 +++++++++++
>   hw/pci.c                |   82 ++++++++++++++++--
>   hw/pci.h                |    2 +
>   hw/pcie.c               |   11 +--
>   hw/pcie.h               |    2 -
>   hw/pcie_aer.c           |  223 +++++++++++++++++++++++++++++++++++++++++++++++
>   hw/qdev.c               |   22 +++--
>   hw/qdev.h               |    5 +-
>   hw/xio3130_downstream.c |    2 +-
>   hw/xio3130_upstream.c   |    3 -
>   sysemu.h                |    5 +
>   vl.c                    |    4 +-
>   16 files changed, 415 insertions(+), 39 deletions(-)
>   create mode 100644 hw/pci-stub.c
>
>
>
Christoph Hellwig Jan. 19, 2011, 3:14 p.m. UTC | #2
> >       pci: fix migration path for devices behind bridges

This patch breaks starting qemu for me on 32-bit x86 with the following assert:

qemu-system-x86_64: savevm.c:1129: register_savevm_live: Assertion
`!se->compat || se->instance_id == 0' failed.

my qemu command line is:

/opt/qemu/bin/qemu-system-x86_64 \
	-m 1500 \
	-enable-kvm \
	-drive if=none,file=/dev/vg01/qemu-root,cache=none,aio=threads,id=root \
	-drive if=none,file=/dev/vg01/qemu-data,cache=none,aio=threads,id=test \
	-drive if=none,file=/home/test1.img,cache=none,id=scratch \
	-device virtio-blk-pci,drive=root \
	-device virtio-blk-pci,drive=test \
	-device virtio-blk-pci,drive=scratch \
	-append "root=/dev/vda console=tty0 console=ttyS0,38400n8" \
	-monitor tcp:127.0.0.1:31337,server,nowait \
	-kernel arch/x86/boot/bzImage \
	-nographic

btw, I can't find a patch for that commit anywhere in the qemu-devel
archives.  Did it get reviewed anywhere at all?
Michael S. Tsirkin Jan. 19, 2011, 3:27 p.m. UTC | #3
On Wed, Jan 19, 2011 at 04:14:48PM +0100, Christoph Hellwig wrote:
> > >       pci: fix migration path for devices behind bridges
> 
> This patch breaks starting qemu for me on 32-bit x86 with the following assert:
> 
> qemu-system-x86_64: savevm.c:1129: register_savevm_live: Assertion
> `!se->compat || se->instance_id == 0' failed.
> 
> my qemu command line is:
> 
> /opt/qemu/bin/qemu-system-x86_64 \
> 	-m 1500 \
> 	-enable-kvm \
> 	-drive if=none,file=/dev/vg01/qemu-root,cache=none,aio=threads,id=root \
> 	-drive if=none,file=/dev/vg01/qemu-data,cache=none,aio=threads,id=test \
> 	-drive if=none,file=/home/test1.img,cache=none,id=scratch \
> 	-device virtio-blk-pci,drive=root \
> 	-device virtio-blk-pci,drive=test \
> 	-device virtio-blk-pci,drive=scratch \
> 	-append "root=/dev/vda console=tty0 console=ttyS0,38400n8" \
> 	-monitor tcp:127.0.0.1:31337,server,nowait \
> 	-kernel arch/x86/boot/bzImage \
> 	-nographic

I'll try that. generally qemu works on 32 bit for me but I only
used 2 virtio devices: block and net. will try with 3.

> 
> btw, I can't find a patch for that commit anywhere in the qemu-devel
> archives.  Did it get reviewed anywhere at all?

message ids:

20101113211054.GA23517@redhat.com
20101224084529.GA23180@redhat.com
Michael S. Tsirkin Jan. 19, 2011, 7:25 p.m. UTC | #4
On Wed, Jan 19, 2011 at 04:14:48PM +0100, Christoph Hellwig wrote:
> > >       pci: fix migration path for devices behind bridges
> 
> This patch breaks starting qemu for me on 32-bit x86 with the following assert:

Yes, sorry about that.
I sent a fix, could you check out it please?

> qemu-system-x86_64: savevm.c:1129: register_savevm_live: Assertion
> `!se->compat || se->instance_id == 0' failed.
> 
> my qemu command line is:
> 
> /opt/qemu/bin/qemu-system-x86_64 \
> 	-m 1500 \
> 	-enable-kvm \
> 	-drive if=none,file=/dev/vg01/qemu-root,cache=none,aio=threads,id=root \
> 	-drive if=none,file=/dev/vg01/qemu-data,cache=none,aio=threads,id=test \
> 	-drive if=none,file=/home/test1.img,cache=none,id=scratch \
> 	-device virtio-blk-pci,drive=root \
> 	-device virtio-blk-pci,drive=test \
> 	-device virtio-blk-pci,drive=scratch \
> 	-append "root=/dev/vda console=tty0 console=ttyS0,38400n8" \
> 	-monitor tcp:127.0.0.1:31337,server,nowait \
> 	-kernel arch/x86/boot/bzImage \
> 	-nographic
> 
> btw, I can't find a patch for that commit anywhere in the qemu-devel
> archives.  Did it get reviewed anywhere at all?