qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 556068: hw/machine: Free old values of string


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 556068: hw/machine: Free old values of string properties
Date: Thu, 18 Sep 2014 15:00:07 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 556068eed04b7f11187aabd89b981552d8d0c30e
      
https://github.com/qemu/qemu/commit/556068eed04b7f11187aabd89b981552d8d0c30e
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-14 (Sun, 14 Sep 2014)

  Changed paths:
    M hw/core/machine.c

  Log Message:
  -----------
  hw/machine: Free old values of string properties

Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Amos Kong <address@hidden>
Cc: address@hidden


  Commit: 70e98b230fa58d7da22bd6c45b206fc58e9908c2
      
https://github.com/qemu/qemu/commit/70e98b230fa58d7da22bd6c45b206fc58e9908c2
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-14 (Sun, 14 Sep 2014)

  Changed paths:
    M tests/test-qdev-global-props.c

  Log Message:
  -----------
  test-qdev-global-props: Trivial comment fix

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


  Commit: 9d41401b90fa10b335d2e739149d36437cfbf622
      
https://github.com/qemu/qemu/commit/9d41401b90fa10b335d2e739149d36437cfbf622
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M configure
    M tests/Makefile

  Log Message:
  -----------
  tests: disable global props test for old glib

follow-up patch moves global property tests to subprocesses.
Unfortunately with old glib this causes:

tests/test-qdev-global-props.c: In function
‘test_static_prop’:
tests/test-qdev-global-props.c:80:5: error: implicit
declaration of function ‘g_test_trap_subprocess’
[-Werror=implicit-function-declaration]
tests/test-qdev-global-props.c:80:5: error: nested extern
declaration of ‘g_test_trap_subprocess’ [-Werror=nested-externs]

This function was only added in glib 2.38, and our
minimum version is 2.12.

To fix, disable the test for glib < 2.38.

Apply before that patch to avoid breaking bisect.

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


  Commit: 2177801a4899bf29108b3d471417a5b4d701ec29
      
https://github.com/qemu/qemu/commit/2177801a4899bf29108b3d471417a5b4d701ec29
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M tests/test-qdev-global-props.c

  Log Message:
  -----------
  test-qdev-global-props: Run tests on subprocess

There are multiple reasons for running the global property tests on a
subprocess:

* We need the global_props lists to be empty for each test case, so
  global properties from the previous test won't affect the next one;
* We don't want the qdev_prop_check_global() warnings to pollute test
  output;
* With a subprocess, we can ensure qdev_prop_check_global() is printing
  the warning messages it should.

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


  Commit: 45de81735b01b59fbc45803b2c1c8ca37cb55ead
      
https://github.com/qemu/qemu/commit/45de81735b01b59fbc45803b2c1c8ca37cb55ead
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M tests/test-qdev-global-props.c

  Log Message:
  -----------
  test-qdev-global-props: Initialize not_used=true for all props

This will ensure we are actually testing the code which sets
not_used=false when the property is used.

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


  Commit: 08ac80cd614ca4c81cc8799749977d5ff02d4ea5
      
https://github.com/qemu/qemu/commit/08ac80cd614ca4c81cc8799749977d5ff02d4ea5
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M tests/test-qdev-global-props.c

  Log Message:
  -----------
  test-qdev-global-props: Test handling of hotpluggable and non-device types

Ensure no warning will be printed for hotpluggable types, and warnings
will be printed for non-device types.

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


  Commit: d828c430eb7dd481d6399f8b56e9641e47a40cea
      
https://github.com/qemu/qemu/commit/d828c430eb7dd481d6399f8b56e9641e47a40cea
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M hw/core/qdev-properties.c
    M include/hw/qdev-properties.h
    M tests/test-qdev-global-props.c
    M vl.c

  Log Message:
  -----------
  qdev: Rename qdev_prop_check_global() to qdev_prop_check_globals()

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


  Commit: b3ce84fea466f3bca2ff85d158744f00c0f429bd
      
https://github.com/qemu/qemu/commit/b3ce84fea466f3bca2ff85d158744f00c0f429bd
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M hw/core/qdev-properties-system.c
    M hw/core/qdev-properties.c
    M include/hw/qdev-core.h
    M tests/test-qdev-global-props.c

  Log Message:
  -----------
  qdev: Move global validation to a single function

Currently GlobalProperty.not_used=false has multiple meanings:

* It may be a property for a hotpluggable device, which may or may not
  have been used by a device;
* It may be a machine-type-provided property, which may or may not have
  been used by a device.
* It may be a user-provided property that was actually not used by
  any device.

Simplify the logic by having two separate fields: 'user_provided' and
'used'. This allows the entire global property validation logic to be
contained in a single function, and allows more specific error messages.

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


  Commit: abb4d5f2e2830b7a6dc4ddcc612dfab15e3a320d
      
https://github.com/qemu/qemu/commit/abb4d5f2e2830b7a6dc4ddcc612dfab15e3a320d
  Author: Eduardo Habkost <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M backends/rng-egd.c

  Log Message:
  -----------
  Revert "rng-egd: remove redundant free"

This reverts commit 5e490b6a504912225dff0e520e1c6af68295d238.

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


  Commit: 131c5221fe25a9547c4a388a3d26ff7fd14843e5
      
https://github.com/qemu/qemu/commit/131c5221fe25a9547c4a388a3d26ff7fd14843e5
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

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

  Log Message:
  -----------
  virtio-net: drop assert on vm stop

On vm stop, vm_running state set to stopped
before device is notified, so callbacks can get envoked with
vm_running = false; and this is not an error.

Cc: address@hidden
Acked-by: Jason Wang <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 9e8e8c48653471fa5fed447e388fdef57d4f6998
      
https://github.com/qemu/qemu/commit/9e8e8c48653471fa5fed447e388fdef57d4f6998
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M hw/virtio/virtio.c

  Log Message:
  -----------
  Revert "virtio: don't call device on !vm_running"

This reverts commit a1bc7b827e422e1ff065640d8ec5347c4aadfcd8.
    virtio: don't call device on !vm_running
It turns out that virtio net assumes that vm_running
is updated before device status callback in many places,
so this change leads to asserts.
Previous commit fixes the root issue that motivated
a1bc7b827e422e1ff065640d8ec5347c4aadfcd8 differently,
so there's no longer a need for this change.

In the future, we might be able to drop checking vm_running
completely, and check vm state directly.

Reported-by: Dietmar Maurer <address@hidden>
Cc: address@hidden
Acked-by: Jason Wang <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: e43c0b2ea5574efb0bedebf6a7d05916eefeba52
      
https://github.com/qemu/qemu/commit/e43c0b2ea5574efb0bedebf6a7d05916eefeba52
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

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

  Log Message:
  -----------
  virtio-pci: enable bus master for old guests

commit cc943c36faa192cd4b32af8fe5edb31894017d35
    pci: Use bus master address space for delivering MSI/MSI-X messages
breaks virtio-net for rhel6.[56] x86 guests because they don't
enable bus mastering for virtio PCI devices. For the same reason,
rhel6.[56] ppc64 guests cannot boot on a virtio-blk disk anymore.

Old guests forgot to enable bus mastering, enable it automatically on
DRIVER (guests use some devices before DRIVER_OK).

Reported-by: Greg Kurz <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Tested-by: Greg Kurz <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: d8e80ae37a7acfea416ad9abbe76b453a73d9cc0
      
https://github.com/qemu/qemu/commit/d8e80ae37a7acfea416ad9abbe76b453a73d9cc0
  Author: Damjan Marion <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M hw/net/vhost_net.c

  Log Message:
  -----------
  vhost-user: fix VIRTIO_NET_F_MRG_RXBUF negotiation

Header length check should happen only if backend is kernel. For user
backend there is no reason to reset this bit.

vhost-user code does not define .has_vnet_hdr_len so
VIRTIO_NET_F_MRG_RXBUF cannot be negotiated even if both sides
support it.

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


  Commit: 4d43d3f3c8147ade184df9a1e9e82826edd39e19
      
https://github.com/qemu/qemu/commit/4d43d3f3c8147ade184df9a1e9e82826edd39e19
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

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

  Log Message:
  -----------
  virtio-pci: fix migration for pci bus master

Current support for bus master (clearing OK bit)
together with the need to support guests which do not
enable PCI bus mastering, leads to extra state in
VIRTIO_PCI_FLAG_BUS_MASTER_BUG bit, which isn't robust
in case of cross-version migration for the case when
guests use the device before setting DRIVER_OK.

Rip out VIRTIO_PCI_FLAG_BUS_MASTER_BUG and implement a simpler
work-around: treat clearing of PCI_COMMAND as a virtio reset.  Old
guests never touch this bit so they will work.

As reset clears device status, DRIVER and MASTER bits are
now in sync, so we can fix up cross-version migration simply
by synchronising them, without need to detect a buggy guest
explicitly.

Drop tracking VIRTIO_PCI_FLAG_BUS_MASTER_BUG completely.

As reset makes the device quiescent, in the future we'll be able to drop
checking OK bit in a bunch of places.

Cc: Jason Wang <address@hidden>
Cc: Greg Kurz <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 438f92ee9f6a4f78f8adcc399809e252b6da72a2
      
https://github.com/qemu/qemu/commit/438f92ee9f6a4f78f8adcc399809e252b6da72a2
  Author: Michael S. Tsirkin <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M hw/i386/pc.c

  Log Message:
  -----------
  pc: leave more space for BIOS allocations

Since QEMU 2.1, we are allocating more space for ACPI tables, so no
space is left after initrd for the BIOS to allocate memory.

Besides ACPI tables, there are a few other uses of high memory in
SeaBIOS: SMBIOS tables and USB drivers use it in particular.  These uses
allocate a very small amount of memory.  Malloc metadata also lives
there.  So we need _some_ extra padding there to avoid initrd breakage,
but not much.

John Snow found a case where RHEL5 was broken by the recent change to
ACPI_TABLE_SIZE; in his case 4KB of extra padding are fine, but just to
be safe I am adding 32KB, which is roughly the same amount of padding
that was left by QEMU 2.0 and earlier.

Move initrd to leave some space for the BIOS.

Cc: address@hidden
Signed-off-by: Paolo Bonzini <address@hidden>
Reported-by: John Snow <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>


  Commit: 10e11f4d2bf171f99c6b13883a510acfbc5dd585
      
https://github.com/qemu/qemu/commit/10e11f4d2bf171f99c6b13883a510acfbc5dd585
  Author: Peter Maydell <address@hidden>
  Date:   2014-09-18 (Thu, 18 Sep 2014)

  Changed paths:
    M backends/rng-egd.c
    M configure
    M hw/core/machine.c
    M hw/core/qdev-properties-system.c
    M hw/core/qdev-properties.c
    M hw/i386/pc.c
    M hw/net/vhost_net.c
    M hw/net/virtio-net.c
    M hw/virtio/virtio-pci.c
    M hw/virtio/virtio.c
    M include/hw/qdev-core.h
    M include/hw/qdev-properties.h
    M tests/Makefile
    M tests/test-qdev-global-props.c
    M vl.c

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

pci, pc, virtio, misc bugfixes

A bunch of bugfixes - some of these will make sense for 2.1.2
I put Cc: qemu-stable included where appropriate.

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

# gpg: Signature made Thu 18 Sep 2014 19:52:18 BST 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:
  pc: leave more space for BIOS allocations
  virtio-pci: fix migration for pci bus master
  vhost-user: fix VIRTIO_NET_F_MRG_RXBUF negotiation
  virtio-pci: enable bus master for old guests
  Revert "virtio: don't call device on !vm_running"
  virtio-net: drop assert on vm stop
  Revert "rng-egd: remove redundant free"
  qdev: Move global validation to a single function
  qdev: Rename qdev_prop_check_global() to qdev_prop_check_globals()
  test-qdev-global-props: Test handling of hotpluggable and non-device types
  test-qdev-global-props: Initialize not_used=true for all props
  test-qdev-global-props: Run tests on subprocess
  tests: disable global props test for old glib
  test-qdev-global-props: Trivial comment fix
  hw/machine: Free old values of string properties

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


Compare: https://github.com/qemu/qemu/compare/bb26a1e80b56...10e11f4d2bf1

reply via email to

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