qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] d6e65d: pci: Helper function for testing if a


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] d6e65d: pci: Helper function for testing if an INTx route ...
Date: Mon, 29 Oct 2012 14:00:18 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: d6e65d54f0fa980f891aa3166d85b6ffd7d541eb
      
https://github.com/qemu/qemu/commit/d6e65d54f0fa980f891aa3166d85b6ffd7d541eb
  Author: Alex Williamson <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c
    M hw/pci.h

  Log Message:
  -----------
  pci: Helper function for testing if an INTx route changed

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 4774d7b258e0c4a6595a7b0bc6960c1751365bbf
      
https://github.com/qemu/qemu/commit/4774d7b258e0c4a6595a7b0bc6960c1751365bbf
  Author: Alex Williamson <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/kvm/pci-assign.c

  Log Message:
  -----------
  pci-assign: Use pci_intx_route_changed()

Replace open coded version

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 39b9bc626a436837f0068cb600aaf91c0e8aa937
      
https://github.com/qemu/qemu/commit/39b9bc626a436837f0068cb600aaf91c0e8aa937
  Author: Alex Williamson <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/msi.c
    M hw/msi.h

  Log Message:
  -----------
  msi: Add msi_get_message()

vfio-pci and pci-assign both do this on their own for setting up
direct MSI injection through KVM.  Provide a helper function for
this in MSI code.

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 2b199f9318ec698dfced65f5d4ad9729f166e37c
      
https://github.com/qemu/qemu/commit/2b199f9318ec698dfced65f5d4ad9729f166e37c
  Author: Alex Williamson <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/kvm/pci-assign.c

  Log Message:
  -----------
  pci-assign: Use msi_get_message()

pci-assign only uses a subset of the flexibility msi_get_message()
provides, but it's still worthwhile to use it.

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 05c0621e64b425d9f89bef542f0b85e61dc57ff8
      
https://github.com/qemu/qemu/commit/05c0621e64b425d9f89bef542f0b85e61dc57ff8
  Author: Alex Williamson <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c

  Log Message:
  -----------
  pci: Return PCI_INTX_DISABLED when no bus INTx routing support

Rather than assert, simply return PCI_INTX_DISABLED when we don't
have a pci_route_irq_fn.  PIIX already returns DISABLED for an
invalid pin, so users already deal with this state.  Users of this
interface should only be acting on an ENABLED or INVERTED return
value (though we really have no support for INVERTED).  Also
complain loudly when we hit this so we don't forget it's missing.

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Jan Kiszka <address@hidden>


  Commit: dc59944bc9a5ad784572eea57610de60e4a2f4e5
      
https://github.com/qemu/qemu/commit/dc59944bc9a5ad784572eea57610de60e4a2f4e5
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pc_piix.c
    M target-i386/cpu.c
    M target-i386/cpu.h

  Log Message:
  -----------
  qemu: enable PV EOI for qemu 1.3

Enable KVM PV EOI by default. You can still disable it with
-kvm_pv_eoi cpu flag. To avoid breaking cross-version migration,
enable only for qemu 1.3 (or in the future, newer) machine type.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: e26631b74663f59b5873a84ed5b92ee4ddf48255
      
https://github.com/qemu/qemu/commit/e26631b74663f59b5873a84ed5b92ee4ddf48255
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c

  Log Message:
  -----------
  pci: make each capability DWORD aligned

PCI spec (see e.g. 6.7 Capabilities List in spec rev 3.0)
requires that each capability is DWORD aligned.
Ensure this when allocating space by rounding size up to 4.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: b56d701f1d1f1828c9fabea535b3460857546dd0
      
https://github.com/qemu/qemu/commit/b56d701f1d1f1828c9fabea535b3460857546dd0
  Author: Isaku Yamahata <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c

  Log Message:
  -----------
  pci: pci capability must be in PCI space

pci capability must be in PCI space.
It can't lay in PCIe extended config space.

Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Isaku Yamahata <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 9e38f56183c52e06fc29c64691f59a46d246eec5
      
https://github.com/qemu/qemu/commit/9e38f56183c52e06fc29c64691f59a46d246eec5
  Author: Isaku Yamahata <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci_ids.h

  Log Message:
  -----------
  pci_ids: add intel 82801BA pci-to-pci bridge id

Adds pci id constants which will be used by q35.

Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Isaku Yamahata <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 91e5615984c1fd5674caad343e750bb5ecd17995
      
https://github.com/qemu/qemu/commit/91e5615984c1fd5674caad343e750bb5ecd17995
  Author: Isaku Yamahata <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c
    M hw/pci.h

  Log Message:
  -----------
  pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt pin swizzle

Introduce pci_swizzle_map_irq_fn() for interrupt pin swizzle which is
standardized. PCI bridge swizzle is common logic, by introducing
this function duplicated swizzle logic will be avoided later.

address@hidden: drop opaque argument]
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Isaku Yamahata <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: f7748569902f4854ac1223c143edbde4f588040f
      
https://github.com/qemu/qemu/commit/f7748569902f4854ac1223c143edbde4f588040f
  Author: Jan Kiszka <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci.c
    M hw/pci_ids.h

  Log Message:
  -----------
  pci: Add class 0xc05 as 'SMBus'

address@hidden: add PCI_CLASS_SERIAL_SMBUS definition]
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: c702ddb8daece08b16fce9d6654b38304d385f93
      
https://github.com/qemu/qemu/commit/c702ddb8daece08b16fce9d6654b38304d385f93
  Author: Jason Baron <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pcie_host.c
    M hw/pcie_host.h

  Log Message:
  -----------
  pcie: pass pcie window size to pcie_host_mmcfg_update()

This allows q35 to pass/set the size of the pcie window in its update routine.

Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: bc927e488c040c8ef2faed323e8a1a3d0ebbfb62
      
https://github.com/qemu/qemu/commit/bc927e488c040c8ef2faed323e8a1a3d0ebbfb62
  Author: Jason Baron <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pcie_host.c
    M hw/pcie_host.h

  Log Message:
  -----------
  pcie: Convert PCIExpressHost to use the QOM.

Let's use PCIExpressHost with QOM.

Reviewed-by: Paolo Bonzini <address@hidden>
Acked-by: Andreas Färber <address@hidden>
Signed-off-by: Jason Baron <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: e35e23f655fb120a2b4d0695bdee86fafd9caabf
      
https://github.com/qemu/qemu/commit/e35e23f655fb120a2b4d0695bdee86fafd9caabf
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: track host/guest header length

Tracking these in device state instead of
re-calculating on each packet. No functional
changes.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: d336336c8164859e4527cbb9f3df189f8bb406de
      
https://github.com/qemu/qemu/commit/d336336c8164859e4527cbb9f3df189f8bb406de
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M iov.c
    M iov.h

  Log Message:
  -----------
  iov: add iov_cpy

Add API to copy part of iovec safely.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 22cc84db6e42bef8646b8cd671f4c999e9c0a38f
      
https://github.com/qemu/qemu/commit/22cc84db6e42bef8646b8cd671f4c999e9c0a38f
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: avoid sg copy

Avoid tweaking iovec during receive. This removes
the need to copy the vector.
Note: we currently have an evil cast in work_around_broken_dhclient
and unfortunately this patch does not fix it - just
pushes the evil cast to another place.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 63c5872873de8d7d994a589eed7bfe6a70cc8e06
      
https://github.com/qemu/qemu/commit/63c5872873de8d7d994a589eed7bfe6a70cc8e06
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: use safe iov operations for rx

Avoid magling iov manually: use safe iov operations
for processing packets incoming to guest.
This also removes the requirement for virtio header to
fit the first s/g entry exactly.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 280598b7a5fdf96fb79d87a2129750bad5dbf24b
      
https://github.com/qemu/qemu/commit/280598b7a5fdf96fb79d87a2129750bad5dbf24b
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: refactor receive_hdr

Now that we know host hdr length, we don't need to
duplicate the logic in receive_hdr: caller can
figure out the offset itself.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: c8d28e7e336869524d166d88f08ad476eadedccb
      
https://github.com/qemu/qemu/commit/c8d28e7e336869524d166d88f08ad476eadedccb
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: first s/g is always at start of buf

We know offset is 0, assert that.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 14761f9cf7fbc6d058c1e51c313a139066eab256
      
https://github.com/qemu/qemu/commit/14761f9cf7fbc6d058c1e51c313a139066eab256
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: switch tx to safe iov functions

Avoid mangling iovec manually: use safe iov_*
functions.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 7b80d08efc36fd6c7881e98302f00148b5fd908a
      
https://github.com/qemu/qemu/commit/7b80d08efc36fd6c7881e98302f00148b5fd908a
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: simplify rx code

Remove code duplication using guest header length that we track.
Drop specific layout requirement for rx buffers: things work
using generic iovec functions in any case.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: e043ebc6f9a093c1fd1b677191ad9fbeefe22d1e
      
https://github.com/qemu/qemu/commit/e043ebc6f9a093c1fd1b677191ad9fbeefe22d1e
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: minor code simplification

During packet filtering, we can now use host hdr len
to offset incoming buffer unconditionally.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 6e371ab867d48c16e6a9ee32cefcea48692a4deb
      
https://github.com/qemu/qemu/commit/6e371ab867d48c16e6a9ee32cefcea48692a4deb
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: test peer header support at init time

There's no reason to query header support at random
times: at load or feature query.
Driver also might not query functions.
Cleaner to do it at device init.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: ff3a8066e651230d255e6eea340e2d48e7da4aeb
      
https://github.com/qemu/qemu/commit/ff3a8066e651230d255e6eea340e2d48e7da4aeb
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/vhost_net.c
    M hw/virtio-net.c

  Log Message:
  -----------
  virtio-net: enable mrg buf header in tap on linux

Modern linux supports arbitrary header size,
which makes it possible to pass mrg buf header
to tap directly without iovec mangling.
Use this capability when it is there.

This removes the need to deal with it in
vhost-net as we do now.

Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 523a59f596a3e62f5a28eb171adba35e71310040
      
https://github.com/qemu/qemu/commit/523a59f596a3e62f5a28eb171adba35e71310040
  Author: Avi Kivity <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/pci_bridge.c
    M hw/pci_internals.h

  Log Message:
  -----------
  pci: avoid destroying bridge address space windows in a transaction

Calling memory_region_destroy() in a transaction is illegal (and aborts),
as until the transaction is committed, the region remains live.

Fix by moving destruction until after the transaction commits.  This requires
having an extra set of regions, so the new and old regions can coexist.

Signed-off-by: Avi Kivity <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 233926fafa6c4a0fb666e1469524d66dd3b47ddd
      
https://github.com/qemu/qemu/commit/233926fafa6c4a0fb666e1469524d66dd3b47ddd
  Author: Anthony Liguori <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M hw/kvm/pci-assign.c
    M hw/msi.c
    M hw/msi.h
    M hw/pc_piix.c
    M hw/pci.c
    M hw/pci.h
    M hw/pci_ids.h
    M hw/pcie_host.c
    M hw/pcie_host.h
    M hw/vhost_net.c
    M hw/virtio-net.c
    M iov.c
    M iov.h
    M target-i386/cpu.c
    M target-i386/cpu.h

  Log Message:
  -----------
  Merge remote-tracking branch 'mst/tags/for_anthony' into staging

virtio,pci infrastructure

This includes infrastructure patches that don't do much by themselves
but should help vfio and q35 make progress.
Also included is rework of virtio-net to use iovec APIs
for vector access - helpful to make it more secure
and in preparation for a new feature that will allow
arbitrary s/g layout for guests.
Also included is a pci bridge bugfix by Avi.

Signed-off-by: Michael S. Tsirkin <address@hidden>

* mst/tags/for_anthony: (25 commits)
  pci: avoid destroying bridge address space windows in a transaction
  virtio-net: enable mrg buf header in tap on linux
  virtio-net: test peer header support at init time
  virtio-net: minor code simplification
  virtio-net: simplify rx code
  virtio-net: switch tx to safe iov functions
  virtio-net: first s/g is always at start of buf
  virtio-net: refactor receive_hdr
  virtio-net: use safe iov operations for rx
  virtio-net: avoid sg copy
  iov: add iov_cpy
  virtio-net: track host/guest header length
  pcie: Convert PCIExpressHost to use the QOM.
  pcie: pass pcie window size to pcie_host_mmcfg_update()
  pci: Add class 0xc05 as 'SMBus'
  pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt pin swizzle
  pci_ids: add intel 82801BA pci-to-pci bridge id
  pci: pci capability must be in PCI space
  pci: make each capability DWORD aligned
  qemu: enable PV EOI for qemu 1.3
  ...

Signed-off-by: Anthony Liguori <address@hidden>


  Commit: d26a8caea3f160782841efb87b5e8bea606b512b
      
https://github.com/qemu/qemu/commit/d26a8caea3f160782841efb87b5e8bea606b512b
  Author: Avi Kivity <address@hidden>
  Date:   2012-10-29 (Mon, 29 Oct 2012)

  Changed paths:
    M memory.c

  Log Message:
  -----------
  memory: fix rendering of a region obscured by another

The memory core drops regions that are hidden by another region (for example,
during BAR sizing), but it doesn't do so correctly if the lower address of the
existing range is below the lower address of the new range.

Example (qemu-system-mips -M malta -kernel vmlinux-2.6.32-5-4kc-malta
   -append "console=ttyS0"  -nographic -vga cirrus):

Existing range: 10000000-107fffff
New range:      100a0000-100bffff

Correct behaviour: drop new range
Incorrect behaviour: add new range

Fix by taking this case into account (previously we only considered
equal lower boundaries).

Tested-by: Aurelien Jarno <address@hidden>
Signed-off-by: Avi Kivity <address@hidden>
Signed-off-by: Anthony Liguori <address@hidden>


Compare: https://github.com/qemu/qemu/compare/b308c82cbda4...d26a8caea3f1

reply via email to

[Prev in Thread] Current Thread [Next in Thread]