qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 3e996c: Fix virtio migration


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 3e996c: Fix virtio migration
Date: Mon, 08 Feb 2016 05:00:08 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 3e996cc58334be1c3f1be524b4f048566eccbb1d
      
https://github.com/qemu/qemu/commit/3e996cc58334be1c3f1be524b4f048566eccbb1d
  Author: Dr. David Alan Gilbert <address@hidden>
  Date:   2016-02-04 (Thu, 04 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c
    M include/migration/vmstate.h

  Log Message:
  -----------
  Fix virtio migration

I misunderstood the vmstate macro definition when I reworked the
virtio .get/.put.
The VMSTATE_STRUCT_VARRAY_KNOWN, was described as being for "a
variable length array (i.e. _type *_field) but we know the
length".  However it actually specified operation for arrays embedded in
the struct (i.e. _type _field[]) since it lacked the VMS_POINTER
flag. This caused offset calculation to be completely off, examining and
potentially sending random data instead of the VirtQueue content.

Replace the otherwise unused VMSTATE_STRUCT_VARRAY_KNOWN with a
VMSTATE_STRUCT_VARRAY_POINTER_KNOWN that includes the VMS_POINTER flag
(so now actually doing what it advertises) and use it in the virtio
migration code.

Fixes and description as per Sascha's suggestions/debug.

Signed-off-by: Dr. David Alan Gilbert <address@hidden>
Reported-by: Sascha Silbe <address@hidden>
Tested-By: Sascha Silbe <address@hidden>
Reviewed-By: Sascha Silbe <address@hidden>

Fixes: 50e5ae4dc3e4f21e874512f9e87b93b5472d26e0
Fixes: 2cf0148674430b6693c60d42b7eef721bfa9509f
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Tested-by: Cornelia Huck <address@hidden>


  Commit: 41fa5c0410a13d804eabf6ca7cc5c8e21b718a03
      
https://github.com/qemu/qemu/commit/41fa5c0410a13d804eabf6ca7cc5c8e21b718a03
  Author: Igor Mammedov <address@hidden>
  Date:   2016-02-04 (Thu, 04 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c

  Log Message:
  -----------
  pc: acpi: merge SSDT into DSDT

Since both tables are built dynamically now,
there is no point in keeping ASL in them in separate
tables.
So do the same as we do for ARM where we have only
DSDT table, i.e. move SSDT ASL into DSDT and
drop SSDT altogether.
This patch doesn't change moved SSDT ASL in any way,
but it opens a way to relatively independently simplify
generated ASL on per device/subsystem basis in
followup series.
It also simplifies bios-tables-test where expected
SSDT blobs could be dropped and only DSDT ones
have to be maintained.

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


  Commit: caf50c7166a6ed96c462ab5db4b495e1234e4cc6
      
https://github.com/qemu/qemu/commit/caf50c7166a6ed96c462ab5db4b495e1234e4cc6
  Author: Igor Mammedov <address@hidden>
  Date:   2016-02-04 (Thu, 04 Feb 2016)

  Changed paths:
    R tests/acpi-test-data/pc/SSDT
    R tests/acpi-test-data/pc/SSDT.bridge
    R tests/acpi-test-data/q35/SSDT
    R tests/acpi-test-data/q35/SSDT.bridge

  Log Message:
  -----------
  tests: pc: acpi: drop not needed 'expected SSDT' blobs

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


  Commit: 0734fb083cb0a91d17d355acdea16a3413b69b0c
      
https://github.com/qemu/qemu/commit/0734fb083cb0a91d17d355acdea16a3413b69b0c
  Author: Igor Mammedov <address@hidden>
  Date:   2016-02-04 (Thu, 04 Feb 2016)

  Changed paths:
    M tests/acpi-test-data/pc/DSDT
    A tests/acpi-test-data/pc/DSDT.bridge
    M tests/acpi-test-data/q35/DSDT
    A tests/acpi-test-data/q35/DSDT.bridge

  Log Message:
  -----------
  tests: pc: acpi: add expected DSDT.bridge blobs and update DSDT blobs

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


  Commit: 6aa46d8ff1ee7e9ca0c4a54d75c74108bee22124
      
https://github.com/qemu/qemu/commit/6aa46d8ff1ee7e9ca0c4a54d75c74108bee22124
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-04 (Thu, 04 Feb 2016)

  Changed paths:
    M hw/scsi/virtio-scsi.c
    M include/hw/virtio/virtio-blk.h
    M include/hw/virtio/virtio-scsi.h

  Log Message:
  -----------
  virtio: move VirtQueueElement at the beginning of the structs

The next patch will make virtqueue_pop/vring_pop allocate memory for
the VirtQueueElement. In some cases (blk, scsi, gpu) the device wants
to extend VirtQueueElement with device-specific fields and, until now,
the place of the VirtQueueElement within the containing struct didn't
matter. When allocating the entire block in virtqueue_pop/vring_pop,
however, the containing struct must basically be a "subclass" of
VirtQueueElement, with the VirtQueueElement as the first field. Make
that the case for blk and scsi; gpu is already doing it.

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


  Commit: 51b19ebe4320f3dcd93cea71235c1219318ddfd2
      
https://github.com/qemu/qemu/commit/51b19ebe4320f3dcd93cea71235c1219318ddfd2
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/9pfs/9p.c
    M hw/9pfs/virtio-9p-device.c
    M hw/9pfs/virtio-9p.h
    M hw/block/dataplane/virtio-blk.c
    M hw/block/virtio-blk.c
    M hw/char/virtio-serial-bus.c
    M hw/display/virtio-gpu.c
    M hw/input/virtio-input.c
    M hw/net/virtio-net.c
    M hw/scsi/virtio-scsi-dataplane.c
    M hw/scsi/virtio-scsi.c
    M hw/virtio/dataplane/vring.c
    M hw/virtio/virtio-balloon.c
    M hw/virtio/virtio-rng.c
    M hw/virtio/virtio.c
    M include/hw/virtio/dataplane/vring.h
    M include/hw/virtio/virtio-balloon.h
    M include/hw/virtio/virtio-blk.h
    M include/hw/virtio/virtio-net.h
    M include/hw/virtio/virtio-scsi.h
    M include/hw/virtio/virtio-serial.h
    M include/hw/virtio/virtio.h

  Log Message:
  -----------
  virtio: move allocation to virtqueue_pop/vring_pop

The return code of virtqueue_pop/vring_pop is unused except to check for
errors or 0.  We can thus easily move allocation inside the functions
and just return a pointer to the VirtQueueElement.

The advantage is that we will be able to allocate only the space that
is needed for the actual size of the s/g list instead of the full
VIRTQUEUE_MAX_SIZE items.  Currently VirtQueueElement takes about 48K
of memory, and this kind of allocation puts a lot of stress on malloc.
By cutting the size by two or three orders of magnitude, malloc can
use much more efficient algorithms.

The patch is pretty large, but changes to each device are testable
more or less independently.  Splitting it would mostly add churn.

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


  Commit: ab281c1781add112a257c15924d670616a99c41a
      
https://github.com/qemu/qemu/commit/ab281c1781add112a257c15924d670616a99c41a
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/block/virtio-blk.c
    M hw/char/virtio-serial-bus.c
    M hw/scsi/virtio-scsi.c
    M hw/virtio/virtio.c
    M include/hw/virtio/virtio.h

  Log Message:
  -----------
  virtio: introduce qemu_get/put_virtqueue_element

Move allocation to virtio functions also when loading/saving a
VirtQueueElement.  This will also let the load/save functions
keep backwards compatibility when the VirtQueueElement layout
is changed.

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


  Commit: 3724650db07057333879484c8bc7d900b5c1bf8e
      
https://github.com/qemu/qemu/commit/3724650db07057333879484c8bc7d900b5c1bf8e
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/dataplane/vring.c
    M hw/virtio/virtio.c
    M include/hw/virtio/virtio.h

  Log Message:
  -----------
  virtio: introduce virtqueue_alloc_element

Allocate the arrays for in_addr/out_addr/in_sg/out_sg outside the
VirtQueueElement.  For now, virtqueue_pop and vring_pop keep
allocating a very large VirtQueueElement.

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


  Commit: 3b3b0628217e2726069990ff9942a5d6d9816bd7
      
https://github.com/qemu/qemu/commit/3b3b0628217e2726069990ff9942a5d6d9816bd7
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  virtio: slim down allocation of VirtQueueElements

Build the addresses and s/g lists on the stack, and then copy them
to a VirtQueueElement that is just as big as required to contain this
particular s/g list.  The cost of the copy is minimal compared to that
of a large malloc.

When virtqueue_map is used on the destination side of migration or on
loadvm, the iovecs have already been split at memory region boundary,
so we can just reuse the out_num/in_num we find in the file.

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


  Commit: 5dba97ebdc92f1ac3c9ac27d8eac52ed2348fae1
      
https://github.com/qemu/qemu/commit/5dba97ebdc92f1ac3c9ac27d8eac52ed2348fae1
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/dataplane/vring.c

  Log Message:
  -----------
  vring: slim down allocation of VirtQueueElements

Build the addresses and s/g lists on the stack, and then copy them
to a VirtQueueElement that is just as big as required to contain this
particular s/g list.  The cost of the copy is minimal compared to that
of a large malloc.

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


  Commit: aa570d6fb6bd0402f27f151a76fb1762e26231ac
      
https://github.com/qemu/qemu/commit/aa570d6fb6bd0402f27f151a76fb1762e26231ac
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  virtio: combine the read of a descriptor

Compared to vring, virtio has a performance penalty of 10%.  Fix it
by combining all the reads for a descriptor in a single address_space_read
call.  This also simplifies the code nicely.

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


  Commit: b796fcd1bf2978aed15748db04e054f34789e9eb
      
https://github.com/qemu/qemu/commit/b796fcd1bf2978aed15748db04e054f34789e9eb
  Author: Vincenzo Maffione <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  virtio: cache used_idx in a VirtQueue field

Accessing used_idx in the VQ requires an expensive access to
guest physical memory. Before this patch, 3 accesses are normally
done for each pop/push/notify call. However, since the used_idx is
only written by us, we can track it in our internal data structure.

Signed-off-by: Vincenzo Maffione <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: be1fea9bc286f64c6c995bb0d7145a0b738aeddb
      
https://github.com/qemu/qemu/commit/be1fea9bc286f64c6c995bb0d7145a0b738aeddb
  Author: Vincenzo Maffione <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  virtio: read avail_idx from VQ only when necessary

The virtqueue_pop() implementation needs to check if the avail ring
contains some pending buffers. To perform this check, it is not
always necessary to fetch the avail_idx in the VQ memory, which is
expensive. This patch introduces a shadow variable tracking avail_idx
and modifies virtio_queue_empty() to access avail_idx in physical
memory only when necessary.

Signed-off-by: Vincenzo Maffione <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 1cdd2ee54a61ed288e56bd57a649ec50a5a88e8b
      
https://github.com/qemu/qemu/commit/1cdd2ee54a61ed288e56bd57a649ec50a5a88e8b
  Author: Vincenzo Maffione <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  virtio: combine write of an entry into used ring

Fill in an element of the used ring with a single combined access to the
guest physical memory, rather than using two separated accesses.
This reduces the overhead due to expensive address translation.

Signed-off-by: Vincenzo Maffione <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 13d11b0ba85c8a02b0527fa360286e1f68c59b22
      
https://github.com/qemu/qemu/commit/13d11b0ba85c8a02b0527fa360286e1f68c59b22
  Author: Marcel Apfelbaum <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/pci-bridge/pci_expander_bridge.c

  Log Message:
  -----------
  hw/pxb: add pxb devices to the bridge category

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


  Commit: b5c6eaf173cbeec414b2d837c5703515f979f2af
      
https://github.com/qemu/qemu/commit/b5c6eaf173cbeec414b2d837c5703515f979f2af
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M tests/vhost-user-test.c

  Log Message:
  -----------
  vhost-user-test: use correct ROM to speed up and avoid spurious failures

The mechanism to get the option ROM for virtio-net does not block the
PCI ROM from being loaded. Therefore, in vhost-user-test there are
two entries in the boot menu for the virtio-net card: one as an
embedded option ROM, one from the ROM BAR.

The embedded option ROM in vhost-user-test is the non-EFI-enabled,
while the ROM BAR has an EFI-enabled ROM. The two are compiled with
slightly different parameters, where only the old BIOS-only one doesn't
have a timeout for the "Press Ctrl-B" banner. When using a new
machine type, therefore, the vhost-user-test has to wait for the
EFI-enabled ROM's banner to go away. There are several ways to fix
this:

1) fix the ROMs to have the same configuration

2) add ",romfile=" to the -device line

3) remove --option-rom and add the ROM file name to the -device line

4) use an old machine type

This patch chooses 3. In addition, the file name was wrong because
qtest runs QEMU relative to the top build directory, not to the
x86_64-softmmu/ subdirectory, which is fixed too.

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


  Commit: 0144f6f1ce536b2c56a9b16ef189fc81c3bcb82f
      
https://github.com/qemu/qemu/commit/0144f6f1ce536b2c56a9b16ef189fc81c3bcb82f
  Author: Marcel Apfelbaum <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/pci/pci.c

  Log Message:
  -----------
  hw/pci: ensure that only PCI/PCIe bridges can be attached to pxb/pxb-pcie 
devices

PCI devices can't be plugged directly into PCI extra root bridges
because their resources can't be computed by firmware before the ACPI
tables are loaded.

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


  Commit: d13ada5d8f5064615db3a6bf5ef457cb159e3dff
      
https://github.com/qemu/qemu/commit/d13ada5d8f5064615db3a6bf5ef457cb159e3dff
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: replace goto by a return statement

Each routine using the IPMI_ADD_RSP_DATA, IPMI_CHECK_CMD_LEN or
IPMI_CHECK_RESERVATION macros needs to define a goto label 'out' to
handle hidden errors. Using directly a return statement has the same
effect and it removes the fact that 'out' needs to be defined.

The code exits in ipmi_sim_handle_command() are a little different
from the rest and a "possible" error in the macro IPMI_ADD_RSP_DATA is
handled before making use of it. This might be a bit excessive as a
minimum response len is currently 300 bytes and the patch checks that
at least 3 are available.

Signed-off-by: Cédric Le Goater <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Reviewed-by: Corey Minyard <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 62a4931d1e719059a8462dc0adad812524796fd4
      
https://github.com/qemu/qemu/commit/62a4931d1e719059a8462dc0adad812524796fd4
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: replace *_MAXCMD defines

ARRAY_SIZE() is simple to use and removes the need to pre-define
the size of the command arrays.

Signed-off-by: Cédric Le Goater <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 7cfa06a2f1db6fef2be7f645697dbc6c4006324a
      
https://github.com/qemu/qemu/commit/7cfa06a2f1db6fef2be7f645697dbc6c4006324a
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: cleanup error_report messages

Signed-off-by: Cédric Le Goater <address@hidden>
Cc: Greg Kurz <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 792afddb4a5cb2da11a57cfdb124b78981ed1fda
      
https://github.com/qemu/qemu/commit/792afddb4a5cb2da11a57cfdb124b78981ed1fda
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: fix SDR length value

The IPMI BMC simulator populates the SDR table with a set of initial
SDRs. The length of each SDR is taken from the record itself (byte 4)
which does not include the size of the header. But, the full length
(header + data) is required by the sdr_add_entry() routine.

Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: a2295f0a5871e2b9d8ea24bc3a1d2e02bda6ef2d
      
https://github.com/qemu/qemu/commit/a2295f0a5871e2b9d8ea24bc3a1d2e02bda6ef2d
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c
    M include/hw/ipmi/ipmi.h

  Log Message:
  -----------
  ipmi: introduce a struct ipmi_sdr_compact

Currently, sdr attributes are identified using byte offsets and this
can be a bit confusing.

This patch adds a struct ipmi_sdr_compact conforming to the IPMI specs
and replaces byte offsets with names. It also introduces and uses a
struct ipmi_sdr_header in sections of the code where no assumption is
made on the type of SDR. This leave rooms to potential usage of other
types in the future.

Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 728710e1b02c5befaacfd58e5eb3c82c0cd3a31a
      
https://github.com/qemu/qemu/commit/728710e1b02c5befaacfd58e5eb3c82c0cd3a31a
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: add get and set SENSOR_TYPE commands

Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Corey Minyard <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: b7088392239d0d6fd1140690a3efdb24df1bc7c6
      
https://github.com/qemu/qemu/commit/b7088392239d0d6fd1140690a3efdb24df1bc7c6
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: add GET_SYS_RESTART_CAUSE chassis command

This is a simulator. Just return an unknown cause (0).

Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Corey Minyard <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 52ba4d509d1e5287bd8fdb477532713358887356
      
https://github.com/qemu/qemu/commit/52ba4d509d1e5287bd8fdb477532713358887356
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/ipmi/ipmi_bmc_sim.c

  Log Message:
  -----------
  ipmi: add ACPI power and GUID commands

>From the specs (20.8 Get Device GUID Command), the command needs to
return a GUID (Globally Unique ID), or UUID, that should never change
over the lifetime of the device. qemu_uuid looked like a good
candidate to start with but we could use a specific BMC property also
if needed.

Signed-off-by: Cédric Le Goater <address@hidden>
Acked-by: Corey Minyard <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 281b104702af40b08b29b621995830c0c0177a41
      
https://github.com/qemu/qemu/commit/281b104702af40b08b29b621995830c0c0177a41
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Move PcGuestInfo declaration to top of file

The struct will be used inside PCMachineState.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: 9ebeed0c1efe4994c7c129e8469a797bcde9f81a
      
https://github.com/qemu/qemu/commit/9ebeed0c1efe4994c7c129e8469a797bcde9f81a
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/pc.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Eliminate struct PcGuestInfoState

Instead of allocating a new struct just for PcGuestInfo and the
mchine_done Notifier, place them inside PCMachineState.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: 5934e2169a383cdb059f8ccd83f7e1c4d410c9b3
      
https://github.com/qemu/qemu/commit/5934e2169a383cdb059f8ccd83f7e1c4d410c9b3
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Simplify pc_memory_init() signature

We can get the PcGuestInfo struct directly from PCMachineState,
and the return value is not needed at all.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: 7bc35e0f20a1e6f1b00edc85618437a495873bbd
      
https://github.com/qemu/qemu/commit/7bc35e0f20a1e6f1b00edc85618437a495873bbd
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Simplify xen_load_linux() signature

We can get the PcGuestInfo struct directly from PCMachineState,
and the return value is not needed at all.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: fb306ffeba87f36d630ab2f1684ca39f93547e0a
      
https://github.com/qemu/qemu/commit/fb306ffeba87f36d630ab2f1684ca39f93547e0a
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c

  Log Message:
  -----------
  acpi: Remove guest_info parameters from functions

We can use PC_MACHINE(qdev_get_machine())->acpi_guest_info to get
guest_info.

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


  Commit: f944d4798c4e8ebb85161d81431d3457de36d042
      
https://github.com/qemu/qemu/commit/f944d4798c4e8ebb85161d81431d3457de36d042
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c

  Log Message:
  -----------
  acpi: Don't save PcGuestInfo on AcpiBuildState

We don't need to save the pointer on AcpiBuildState, as it is not
used anymore.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: bb292f5a9b944e47fae88a20767967e7e20122b4
      
https://github.com/qemu/qemu/commit/bb292f5a9b944e47fae88a20767967e7e20122b4
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/i386/acpi-build.h
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Remove compat fields from PcGuestInfo

Remove the fields: legacy_acpi_table_size, has_acpi_build,
has_reserved_memory, and rsdp_in_ram from PcGuestInfo, and let
the existing code use the PCMachineClass fields directly.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: 5299f1c70aa7ebc89383363cd3d47fc4f5dc2163
      
https://github.com/qemu/qemu/commit/5299f1c70aa7ebc89383363cd3d47fc4f5dc2163
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/i386/pc.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Remove RAM size fields from PcGuestInfo

The ACPI code can use the PCMachineState fields directly.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: 5db3f0deaf165bd0ff247fcea042cb2e60671e43
      
https://github.com/qemu/qemu/commit/5db3f0deaf165bd0ff247fcea042cb2e60671e43
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Remove PcGuestInfo.isapc_ram_fw field

The code can use the PCMachineClass.pci_enabled field directly.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: f264d360e0bebf4fae054e624bf7204788aff99d
      
https://github.com/qemu/qemu/commit/f264d360e0bebf4fae054e624bf7204788aff99d
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/i386/pc.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Move PcGuestInfo.fw_cfg to PCMachineState

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: dd4c2f01ab92ae0a158958a8fc61fcd09e34987a
      
https://github.com/qemu/qemu/commit/dd4c2f01ab92ae0a158958a8fc61fcd09e34987a
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/i386/pc.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Move APIC and NUMA data from PcGuestInfo to PCMachineState

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>


  Commit: e4e8ba04c2007d3d05d8a29857f95ae80951f5a3
      
https://github.com/qemu/qemu/commit/e4e8ba04c2007d3d05d8a29857f95ae80951f5a3
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/pc.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  pc: Eliminate PcGuestInfo struct

The struct is not used for anything, now.

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


  Commit: 37ad223c515da2fe9f1c679768cb5ccaa42e57e1
      
https://github.com/qemu/qemu/commit/37ad223c515da2fe9f1c679768cb5ccaa42e57e1
  Author: Laszlo Ersek <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/acpi/aml-build.c
    M hw/acpi/nvdimm.c
    M hw/arm/virt-acpi-build.c
    M hw/i386/acpi-build.c
    M include/hw/acpi/aml-build.h

  Log Message:
  -----------
  acpi: take oem_id in build_header(), optionally

This patch is the continuation of commit 8870ca0e94f2 ("acpi: support
specified oem table id for build_header"). It will allow us to control the
OEM ID field too in the SDT header.

Cc: "Michael S. Tsirkin" <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Igor Mammedov <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Xiao Guangrong <address@hidden> (maintainer:NVDIMM)
Cc: Shannon Zhao <address@hidden> (maintainer:ARM ACPI Subsystem)
Cc: Paolo Bonzini <address@hidden> (maintainer:X86)
Cc: Richard W.M. Jones <address@hidden>
Cc: Aleksei Kovura <address@hidden>
Cc: Michael Tokarev <address@hidden>
Cc: Steven Newbury <address@hidden>
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1248758
LP: https://bugs.launchpad.net/qemu/+bug/1533848
Signed-off-by: Laszlo Ersek <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Shannon Zhao <address@hidden>


  Commit: 5151355898699eb66fad0a710b8b6011690a0dfc
      
https://github.com/qemu/qemu/commit/5151355898699eb66fad0a710b8b6011690a0dfc
  Author: Laszlo Ersek <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/acpi/aml-build.c
    M hw/arm/virt-acpi-build.c
    M hw/i386/acpi-build.c
    M include/hw/acpi/aml-build.h

  Log Message:
  -----------
  acpi: expose oem_id and oem_table_id in build_rsdt()

Since build_rsdt() is implemented as common utility code (in
"hw/acpi/aml-build.c"), it should expose -- and forward -- the oem_id and
oem_table_id parameters between board code and the generic build_header()
function.

Cc: "Michael S. Tsirkin" <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Igor Mammedov <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Shannon Zhao <address@hidden> (maintainer:ARM ACPI Subsystem)
Cc: Paolo Bonzini <address@hidden> (maintainer:X86)
Cc: Richard W.M. Jones <address@hidden>
Cc: Aleksei Kovura <address@hidden>
Cc: Michael Tokarev <address@hidden>
Cc: Steven Newbury <address@hidden>
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1248758
LP: https://bugs.launchpad.net/qemu/+bug/1533848
Signed-off-by: Laszlo Ersek <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Shannon Zhao <address@hidden>


  Commit: 88594e4fd1e916b778968b2bdd8d7375ca2fe8d8
      
https://github.com/qemu/qemu/commit/88594e4fd1e916b778968b2bdd8d7375ca2fe8d8
  Author: Laszlo Ersek <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/acpi/core.c
    M include/hw/acpi/acpi.h

  Log Message:
  -----------
  acpi: add function to extract oem_id and oem_table_id from the user's SLIC

The acpi_get_slic_oem() function stores pointers to these fields in the
(first) SLIC table that the user passes in with the -acpitable switch.

Cc: "Michael S. Tsirkin" <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Igor Mammedov <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Richard W.M. Jones <address@hidden>
Cc: Aleksei Kovura <address@hidden>
Cc: Michael Tokarev <address@hidden>
Cc: Steven Newbury <address@hidden>
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1248758
LP: https://bugs.launchpad.net/qemu/+bug/1533848
Signed-off-by: Laszlo Ersek <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Steven Newbury <address@hidden>


  Commit: ae12374951f07157f7a52c8d848b90f8eec722fb
      
https://github.com/qemu/qemu/commit/ae12374951f07157f7a52c8d848b90f8eec722fb
  Author: Laszlo Ersek <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/acpi-build.c
    M qemu-options.hx

  Log Message:
  -----------
  pc: set the OEM fields in the RSDT and the FADT from the SLIC

The Microsoft spec about the SLIC and MSDM ACPI tables at
<http://go.microsoft.com/fwlink/p/?LinkId=234834> requires the OEM ID and
OEM Table ID fields to be consistent between the SLIC and the RSDT/XSDT.
That further affects the FADT, because a similar match between the FADT
and the RSDT/XSDT is required by the ACPI spec in general.

This patch wires up the previous three patches.

Cc: "Michael S. Tsirkin" <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Igor Mammedov <address@hidden> (supporter:ACPI/SMBIOS)
Cc: Paolo Bonzini <address@hidden> (maintainer:X86)
Cc: Richard W.M. Jones <address@hidden>
Cc: Aleksei Kovura <address@hidden>
Cc: Michael Tokarev <address@hidden>
Cc: Steven Newbury <address@hidden>
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1248758
LP: https://bugs.launchpad.net/qemu/+bug/1533848
Signed-off-by: Laszlo Ersek <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Steven Newbury <address@hidden>


  Commit: adcb4ee660cf579f003e9d4afd61b608259091c6
      
https://github.com/qemu/qemu/commit/adcb4ee660cf579f003e9d4afd61b608259091c6
  Author: David Gibson <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M include/hw/mem/pc-dimm.h

  Log Message:
  -----------
  dimm: Correct type of MemoryHotplugState->base

The 'base' field of MemoryHotplugState is ram_addr_t, which indicates that
it exists in the abstract address space of RAM regions.

However, the actual usage of this field indicates that it is a concrete
physical address (it's passed as an offset to memory_region_add_subgregion
for example).

So, correct its type to 'hwaddr'.

Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>
Acked-by: Eduardo Habkost <address@hidden>


  Commit: d66b969b0d9c8eefdcbff4b48535b0fe1501d139
      
https://github.com/qemu/qemu/commit/d66b969b0d9c8eefdcbff4b48535b0fe1501d139
  Author: Jason Wang <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/i386/intel_iommu.c
    M hw/i386/intel_iommu_internal.h
    M include/hw/i386/intel_iommu.h

  Log Message:
  -----------
  intel_iommu: large page support

Current intel_iommu only supports 4K page which may not be sufficient
to cover guest working set. This patch tries to enable 2M and 1G mapping
for intel_iommu. This is also useful for future device IOTLB
implementation to have a better hit rate.

Major work is adding a page mask field on IOTLB entry to make it
support large page. And also use the slpte level as key to do IOTLB
lookup. MAMV was increased to 18 to support direct invalidation for 1G
mapping.

Cc: Michael S. Tsirkin <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Cc: Richard Henderson <address@hidden>
Cc: Eduardo Habkost <address@hidden>
Signed-off-by: Jason Wang <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 428c3ece97179557f2753071fb0ca97a03437267
      
https://github.com/qemu/qemu/commit/428c3ece97179557f2753071fb0ca97a03437267
  Author: Stefano Stabellini <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/pci/msi.c
    M hw/pci/msix.c
    M hw/xen/xen_pt_msi.c
    M include/hw/xen/xen.h
    M xen-hvm-stub.c
    M xen-hvm.c

  Log Message:
  -----------
  fix MSI injection on Xen

On Xen MSIs can be remapped into pirqs, which are a type of event
channels. It's mostly for the benefit of PCI passthrough devices, to
avoid the overhead of interacting with the emulated lapic.

However remapping interrupts and MSIs is also supported for emulated
devices, such as the e1000 and virtio-net.

When an interrupt or an MSI is remapped into a pirq, masking and
unmasking is done by masking and unmasking the event channel. The
masking bit on the PCI config space or MSI-X table should be ignored,
but it isn't at the moment.

As a consequence emulated devices which use MSI or MSI-X, such as
virtio-net, don't work properly (the guest doesn't receive any
notifications). The mechanism was working properly when xen_apic was
introduced, but I haven't narrowed down which commit in particular is
causing the regression.

Fix the issue by ignoring the masking bit for MSI and MSI-X which have
been remapped into pirqs.

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


  Commit: a407644079c8639002e7ea635d851953b10a38c3
      
https://github.com/qemu/qemu/commit/a407644079c8639002e7ea635d851953b10a38c3
  Author: Laurent Vivier <address@hidden>
  Date:   2016-02-06 (Sat, 06 Feb 2016)

  Changed paths:
    M hw/net/vhost_net.c

  Log Message:
  -----------
  net: set endianness on all backend devices

commit 5be7d9f1b1452613b95c6ba70b8d7ad3d0797991
       vhost-net: tell tap backend about the vnet endianness

makes vhost net to set the endianness of the device, but only for
the first device.

In case of multiqueue, we have multiple devices... This patch sets the
endianness for all the devices of the interface.

Signed-off-by: Laurent Vivier <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Reviewed-by: Jason Wang <address@hidden>


  Commit: bdad0f3977ee38f681453f602ddec9f4e24b03f9
      
https://github.com/qemu/qemu/commit/bdad0f3977ee38f681453f602ddec9f4e24b03f9
  Author: Peter Maydell <address@hidden>
  Date:   2016-02-08 (Mon, 08 Feb 2016)

  Changed paths:
    M hw/9pfs/9p.c
    M hw/9pfs/virtio-9p-device.c
    M hw/9pfs/virtio-9p.h
    M hw/acpi/aml-build.c
    M hw/acpi/core.c
    M hw/acpi/nvdimm.c
    M hw/arm/virt-acpi-build.c
    M hw/block/dataplane/virtio-blk.c
    M hw/block/virtio-blk.c
    M hw/char/virtio-serial-bus.c
    M hw/display/virtio-gpu.c
    M hw/i386/acpi-build.c
    M hw/i386/acpi-build.h
    M hw/i386/intel_iommu.c
    M hw/i386/intel_iommu_internal.h
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/input/virtio-input.c
    M hw/ipmi/ipmi_bmc_sim.c
    M hw/net/vhost_net.c
    M hw/net/virtio-net.c
    M hw/pci-bridge/pci_expander_bridge.c
    M hw/pci/msi.c
    M hw/pci/msix.c
    M hw/pci/pci.c
    M hw/scsi/virtio-scsi-dataplane.c
    M hw/scsi/virtio-scsi.c
    M hw/virtio/dataplane/vring.c
    M hw/virtio/virtio-balloon.c
    M hw/virtio/virtio-rng.c
    M hw/virtio/virtio.c
    M hw/xen/xen_pt_msi.c
    M include/hw/acpi/acpi.h
    M include/hw/acpi/aml-build.h
    M include/hw/i386/intel_iommu.h
    M include/hw/i386/pc.h
    M include/hw/ipmi/ipmi.h
    M include/hw/mem/pc-dimm.h
    M include/hw/virtio/dataplane/vring.h
    M include/hw/virtio/virtio-balloon.h
    M include/hw/virtio/virtio-blk.h
    M include/hw/virtio/virtio-net.h
    M include/hw/virtio/virtio-scsi.h
    M include/hw/virtio/virtio-serial.h
    M include/hw/virtio/virtio.h
    M include/hw/xen/xen.h
    M include/migration/vmstate.h
    M qemu-options.hx
    M tests/acpi-test-data/pc/DSDT
    A tests/acpi-test-data/pc/DSDT.bridge
    R tests/acpi-test-data/pc/SSDT
    R tests/acpi-test-data/pc/SSDT.bridge
    M tests/acpi-test-data/q35/DSDT
    A tests/acpi-test-data/q35/DSDT.bridge
    R tests/acpi-test-data/q35/SSDT
    R tests/acpi-test-data/q35/SSDT.bridge
    M tests/vhost-user-test.c
    M xen-hvm-stub.c
    M xen-hvm.c

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

pc and misc cleanups and fixes, virtio optimizations

Included here:
Refactoring and bugfix patches in PC/ACPI.
New commands for ipmi.
Virtio optimizations.

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

# gpg: Signature made Sat 06 Feb 2016 18:44:26 GMT using RSA key ID D28D5469
# gpg: Good signature from "Michael S. Tsirkin <address@hidden>"
# gpg:                 aka "Michael S. Tsirkin <address@hidden>"

* remotes/mst/tags/for_upstream: (45 commits)
  net: set endianness on all backend devices
  fix MSI injection on Xen
  intel_iommu: large page support
  dimm: Correct type of MemoryHotplugState->base
  pc: set the OEM fields in the RSDT and the FADT from the SLIC
  acpi: add function to extract oem_id and oem_table_id from the user's SLIC
  acpi: expose oem_id and oem_table_id in build_rsdt()
  acpi: take oem_id in build_header(), optionally
  pc: Eliminate PcGuestInfo struct
  pc: Move APIC and NUMA data from PcGuestInfo to PCMachineState
  pc: Move PcGuestInfo.fw_cfg to PCMachineState
  pc: Remove PcGuestInfo.isapc_ram_fw field
  pc: Remove RAM size fields from PcGuestInfo
  pc: Remove compat fields from PcGuestInfo
  acpi: Don't save PcGuestInfo on AcpiBuildState
  acpi: Remove guest_info parameters from functions
  pc: Simplify xen_load_linux() signature
  pc: Simplify pc_memory_init() signature
  pc: Eliminate struct PcGuestInfoState
  pc: Move PcGuestInfo declaration to top of file
  ...

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/ee8e8f92a730...bdad0f3977ee

reply via email to

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