qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] b54ca0: bios-linker-loader: document+validate


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] b54ca0: bios-linker-loader: document+validate input
Date: Thu, 25 Feb 2016 05:00:05 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: b54ca0c3df4f21315bebdb96dc81cdf1abb9b214
      
https://github.com/qemu/qemu/commit/b54ca0c3df4f21315bebdb96dc81cdf1abb9b214
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2016-02-23 (Tue, 23 Feb 2016)

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

  Log Message:
  -----------
  bios-linker-loader: document+validate input

While guest/host ABI is documented in hw/acpi/bios-linker-loader.c,
the API was left undocumented.

This adds documentation for all API functions.

Additionally, input is validated to make sure all
pointers fall within range of provided files.

To allow this validation for checksum commands,
bios_linker_loader_add_checksum is changed to accept GArray * in place
of void *.

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


  Commit: ffe42cc14c770549abc7995a90cf53bca3659b7f
      
https://github.com/qemu/qemu/commit/ffe42cc14c770549abc7995a90cf53bca3659b7f
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2016-02-23 (Tue, 23 Feb 2016)

  Changed paths:
    M hw/virtio/vhost-user.c
    M hw/virtio/vhost.c
    M include/hw/virtio/vhost-backend.h

  Log Message:
  -----------
  vhost-user: don't merge regions with different fds

vhost currently merges regions with contiguious virtual and physical
addresses.  This breaks for vhost-user since that also needs fds to
match.

Add a vhost_ops entry to compare the fds for vhost-user only.

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


  Commit: 39de99843e4c15504812e12807728339c54b9194
      
https://github.com/qemu/qemu/commit/39de99843e4c15504812e12807728339c54b9194
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2016-02-23 (Tue, 23 Feb 2016)

  Changed paths:
    M hw/mem/pc-dimm.c
    M hw/virtio/virtio-balloon.c
    M include/exec/cpu-common.h
    M stubs/qmp_pc_dimm_device_list.c

  Log Message:
  -----------
  move get_current_ram_size to virtio-balloon.c

get_current_ram_size() is used only in virtio-balloon.c
This patch moves it into virtio-balloon and make it static, to allow
some balloon-specific tuning.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Denis V. Lunev <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: e8dc06d225b0a7bbe3dc54495ae001b786a54ee5
      
https://github.com/qemu/qemu/commit/e8dc06d225b0a7bbe3dc54495ae001b786a54ee5
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/virtio/virtio-balloon.c

  Log Message:
  -----------
  virtio-balloon: rewrite get_current_ram_size()

Use pc_dimm_built_list() instead of qmp_pc_dimm_device_list()

Actually, Qapi is not related to this internal helper.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 2b75f848238651ef1bb407f66fa38d68775782bf
      
https://github.com/qemu/qemu/commit/2b75f848238651ef1bb407f66fa38d68775782bf
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/virtio/virtio-balloon.c

  Log Message:
  -----------
  balloon: Use only 'pc-dimm' type dimm for ballooning

For now there are only two dimm's: pc-dimm and nvdimm. This patch is
actually needed to disable ballooning on nvdimm. But, to avoid future
bugs, instead of disallowing nvdimm, we allow only pc-dimm. So, if
someone adds new dimm which should be balloon-able, then this ability
should be explicitly specified here.

Why ballooning for nvdimm should be disabled for now:

NVDIMM for now is planned to use as a backing store for DAX filesystem
in the guest and thus this memory is excluded from guest memory
management and LRUs.

In this case libvirt running QEMU along with configured balloon almost
immediately inflates balloon and effectively kill the guest as
qemu counts nvdimm as part of the ram.

Counting dimm devices as part of the ram for ballooning was started from
commit 463756d03:
 virtio-balloon: Fix balloon not working correctly when hotplug memory

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Denis V. Lunev <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 3dbc01ae8760c24144718210644a30a62a9ca7a9
      
https://github.com/qemu/qemu/commit/3dbc01ae8760c24144718210644a30a62a9ca7a9
  Author: Cao jin <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/pci/pci.c

  Log Message:
  -----------
  pci core: function pci_host_bus_register() cleanup

remove unused param, and rename the other to a meaningful one.

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


  Commit: 9ae91bc43f94d9b004b17f7213ef1b8d5ebe8e1a
      
https://github.com/qemu/qemu/commit/9ae91bc43f94d9b004b17f7213ef1b8d5ebe8e1a
  Author: Cao jin <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/pci/pci.c

  Log Message:
  -----------
  pci core: function pci_bus_init() cleanup

remove unused param

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


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

  Changed paths:
    M migration/block.c

  Log Message:
  -----------
  block-migration: acquire AioContext as necessary

This is needed because dataplane will run during block migration as well.

The block device migration code is quite liberal in taking the iothread
mutex.  For simplicity, keep it the same way, even though one could
actually choose between the BQL (for regular BlockDriverStates) and
the AioContext (for dataplane BlockDriverStates).  When the block layer
is made fully thread safe, aio_context_acquire shall go away altogether.

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>


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

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

  Log Message:
  -----------
  vring: make vring_enable_notification return void

Make the API more similar to the regular virtqueue API.  This will
help when modifying the code to not use vring.c anymore.

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Cornelia Huck <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


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

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

  Log Message:
  -----------
  virtio: add AioContext-specific function for host notifiers

This is used to register ioeventfd with a dataplane thread.

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


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

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

  Log Message:
  -----------
  virtio: export vring_notify as virtio_should_notify

Virtio dataplane needs to trigger the irq manually through the
guest notifier.  Export virtio_should_notify so that it can be
used around event_notifier_set.

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Cornelia Huck <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


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

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

  Log Message:
  -----------
  virtio-blk: fix "disabled data plane" mode

In disabled mode, virtio-blk dataplane seems to be enabled, but flow
actually goes through the normal virtio path.  This patch simplifies a bit
the handling of disabled mode.  In disabled mode, virtio_blk_handle_output
might be called even if s->dataplane is not NULL.

This is a bit tricky, because the current check for s->dataplane will
always trigger, causing a continuous stream of calls to
virtio_blk_data_plane_start.  Unfortunately, these calls will not
do anything.  To fix this, set the "started" flag even in disabled
mode, and skip virtio_blk_data_plane_start if the started flag is true.
The resulting changes also prepare the code for the next patch, were
virtio-blk dataplane will reuse the same virtio_blk_handle_output function
as "regular" virtio-blk.

Because struct VirtIOBlockDataPlane is opaque in virtio-blk.c, we have
to move s->dataplane->started inside struct VirtIOBlock.

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>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


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

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

  Log Message:
  -----------
  virtio-blk: do not use vring in dataplane

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


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

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

  Log Message:
  -----------
  virtio-scsi: do not use vring in dataplane

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


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

  Changed paths:
    M hw/virtio/Makefile.objs
    R hw/virtio/dataplane/Makefile.objs
    R hw/virtio/dataplane/vring.c
    R include/hw/virtio/dataplane/vring-accessors.h
    R include/hw/virtio/dataplane/vring.h
    M trace-events

  Log Message:
  -----------
  vring: remove

Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Acked-by: Stefan Hajnoczi <address@hidden>


  Commit: 5602b39ff346cf18f50dce05e1c09db17b229445
      
https://github.com/qemu/qemu/commit/5602b39ff346cf18f50dce05e1c09db17b229445
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

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

  Log Message:
  -----------
  tests/vhost-user-bridge: fix build on 32 bit systems

Mainly casts between void * and uint64_t, and wrong
format for size_t.

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


  Commit: 86165b499edf8b03bb2d0e926d116c2f12a95bfe
      
https://github.com/qemu/qemu/commit/86165b499edf8b03bb2d0e926d116c2f12a95bfe
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/i386/pc_q35.c

  Log Message:
  -----------
  q35: Remove old machine versions

Migration with q35 was not possible before commit
04329029a8c539eb5f75dcb6d8b016f0c53a031a, because q35
unconditionally creates an ich9-ahci device, that was marked as
unmigratable. So all q35 machine classes before pc-q35-2.4 were
not migratable, so there's no point in keeping compatibility code
for them.

Remove all old pc-q35 machine classes and keep only pc-q35-2.4
and newer.

Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Laszlo Ersek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>


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

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

  Log Message:
  -----------
  machine: Remove no_tco field

The field is always set to zero, so it is not necessary 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: Laszlo Ersek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>


  Commit: 18d6abae3ea092950629e5d26aff1dcfc9a2d78e
      
https://github.com/qemu/qemu/commit/18d6abae3ea092950629e5d26aff1dcfc9a2d78e
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/acpi/ich9.c
    M hw/i386/pc_q35.c
    M hw/isa/lpc_ich9.c
    M include/hw/acpi/ich9.h
    M include/hw/i386/ich9.h

  Log Message:
  -----------
  ich9: Remove enable_tco arguments from init functions

The enable_tco arguments are always true, so they are not needed
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: Laszlo Ersek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>


  Commit: 75fb3d286eae1b0f7a93897be2d67f42dc466e8e
      
https://github.com/qemu/qemu/commit/75fb3d286eae1b0f7a93897be2d67f42dc466e8e
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M Makefile
    M hw/i386/pc_q35.c
    R pc-bios/q35-acpi-dsdt.aml

  Log Message:
  -----------
  q35: Remove unused q35-acpi-dsdt.aml file

The file was used only by older machine-types, and it is not
needed 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: Laszlo Ersek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>


  Commit: 533e8bbb55038e224fa418b8b8e8175110ecda4f
      
https://github.com/qemu/qemu/commit/533e8bbb55038e224fa418b8b8e8175110ecda4f
  Author: Eduardo Habkost <address@hidden>
  Date:   2016-02-25 (Thu, 25 Feb 2016)

  Changed paths:
    M hw/i386/pc_q35.c

  Log Message:
  -----------
  q35: No need to check gigabyte_align

gigabyte_align is always true on q35, so we don't need the
!gigabyte_align compat code 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: Laszlo Ersek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>


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

  Changed paths:
    M Makefile
    M hw/acpi/aml-build.c
    M hw/acpi/bios-linker-loader.c
    M hw/acpi/ich9.c
    M hw/arm/virt-acpi-build.c
    M hw/block/dataplane/virtio-blk.c
    M hw/block/dataplane/virtio-blk.h
    M hw/block/virtio-blk.c
    M hw/i386/acpi-build.c
    M hw/i386/pc_q35.c
    M hw/isa/lpc_ich9.c
    M hw/mem/pc-dimm.c
    M hw/pci/pci.c
    M hw/scsi/virtio-scsi-dataplane.c
    M hw/scsi/virtio-scsi.c
    M hw/virtio/Makefile.objs
    R hw/virtio/dataplane/Makefile.objs
    R hw/virtio/dataplane/vring.c
    M hw/virtio/vhost-user.c
    M hw/virtio/vhost.c
    M hw/virtio/virtio-balloon.c
    M hw/virtio/virtio.c
    M include/exec/cpu-common.h
    M include/hw/acpi/bios-linker-loader.h
    M include/hw/acpi/ich9.h
    M include/hw/boards.h
    M include/hw/i386/ich9.h
    R include/hw/virtio/dataplane/vring-accessors.h
    R include/hw/virtio/dataplane/vring.h
    M include/hw/virtio/vhost-backend.h
    M include/hw/virtio/virtio-blk.h
    M include/hw/virtio/virtio-scsi.h
    M include/hw/virtio/virtio.h
    M migration/block.c
    R pc-bios/q35-acpi-dsdt.aml
    M stubs/qmp_pc_dimm_device_list.c
    M tests/vhost-user-bridge.c
    M trace-events

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

vhost, virtio, pci, pc

Fixes all over the place.
virtio dataplane migration support.
Old q35 machine types removed.

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

# gpg: Signature made Thu 25 Feb 2016 11:16:46 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: (21 commits)
  q35: No need to check gigabyte_align
  q35: Remove unused q35-acpi-dsdt.aml file
  ich9: Remove enable_tco arguments from init functions
  machine: Remove no_tco field
  q35: Remove old machine versions
  tests/vhost-user-bridge: fix build on 32 bit systems
  vring: remove
  virtio-scsi: do not use vring in dataplane
  virtio-blk: do not use vring in dataplane
  virtio-blk: fix "disabled data plane" mode
  virtio: export vring_notify as virtio_should_notify
  virtio: add AioContext-specific function for host notifiers
  vring: make vring_enable_notification return void
  block-migration: acquire AioContext as necessary
  pci core: function pci_bus_init() cleanup
  pci core: function pci_host_bus_register() cleanup
  balloon: Use only 'pc-dimm' type dimm for ballooning
  virtio-balloon: rewrite get_current_ram_size()
  move get_current_ram_size to virtio-balloon.c
  vhost-user: don't merge regions with different fds
  ...

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


Compare: https://github.com/qemu/qemu/compare/8283f6f82137...df215b59d907

reply via email to

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