qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] a1aa13: hw/ppc/spapr: Silence deprecation mes


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] a1aa13: hw/ppc/spapr: Silence deprecation message in qtest...
Date: Fri, 17 Jun 2016 06:00:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: a1aa1309892581972b5019ef65fd0a12cd69cc28
      
https://github.com/qemu/qemu/commit/a1aa1309892581972b5019ef65fd0a12cd69cc28
  Author: Thomas Huth <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr_pci_vfio.c

  Log Message:
  -----------
  hw/ppc/spapr: Silence deprecation message in qtest mode

When running "make check", there is currently always an error message
saying "spapr-pci-vfio-host-bridge is deprecated". This happens because
the QOM tests are instantiating all possible devices, and the error
message is currently located in the instance_init() function of the
device. Since it is legal for the tests to instantiate a device without
using it, the error message should be silenced when we're running in
test mode.

Signed-off-by: Thomas Huth <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: fcbf4a3c0c576eec1321f9cff4fa0dd8e0b1a82f
      
https://github.com/qemu/qemu/commit/fcbf4a3c0c576eec1321f9cff4fa0dd8e0b1a82f
  Author: Thomas Huth <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M tests/Makefile.include
    A tests/prom-env-test.c

  Log Message:
  -----------
  ppc / sparc: Add a tester for checking whether OpenBIOS runs successfully

Since the mac99 and g3beige PowerPC machines recently broke without
being noticed, it would be good to have a tester for "make check"
that detects such issues immediately. A simple way to test the firmware
of these machines is to use the "-prom-env" parameter of QEMU. This
parameter can be used to put some Forth code into the 'boot-command'
firmware variable which then can signal success to the tester by
writing a magic value to a known memory location. And since some of the
Sparc machines are also using OpenBIOS, they are now tested with this
prom-env-tester, too.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
[dwg: Removed sparc64, because it trips a TCG bug on 32-bit hosts]
Signed-off-by: David Gibson <address@hidden>


  Commit: 35b5066ea7c2c3051fbc5a24b3d463b9800063e2
      
https://github.com/qemu/qemu/commit/35b5066ea7c2c3051fbc5a24b3d463b9800063e2
  Author: Jakub Horak <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M target-ppc/translate.c

  Log Message:
  -----------
  target-ppc: Bug in BookE wait instruction

Fixed bug in code generation for the PowerPC "wait" instruction. It
doesn't make sense to store a non-initialized register.

Signed-off-by: Jakub Horak <address@hidden>
[dwg: revised commit message]
Signed-off-by: David Gibson <address@hidden>


  Commit: d917e88d85a147a99f38a62a4f95cac21e366d51
      
https://github.com/qemu/qemu/commit/d917e88d85a147a99f38a62a4f95cac21e366d51
  Author: Gavin Shan <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/vfio/common.c

  Log Message:
  -----------
  vfio: Fix broken EEH

vfio_eeh_container_op() is the backend that communicates with
host kernel to support EEH functionality in QEMU. However, the
functon should return the value from host kernel instead of 0
unconditionally.

dwg: Specifically the problem occurs for the handful of EEH
sub-operations which can return a non-zero, non-error result.

Signed-off-by: Gavin Shan <address@hidden>
Acked-by: Alex Williamson <address@hidden>
[dwg: clarification to commit message]
Signed-off-by: David Gibson <address@hidden>


  Commit: 2e11b15dff0bed8f29e844940f127e6e89cd766c
      
https://github.com/qemu/qemu/commit/2e11b15dff0bed8f29e844940f127e6e89cd766c
  Author: Richard Henderson <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M target-ppc/translate.c

  Log Message:
  -----------
  target-ppc: Fix rlwimi, rlwinm, rlwnm

In 63ae0915f8ec, I arranged to use a 32-bit rotate, without
considering the effect of a mask value that wraps around to
the high bits of the word.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 41346263c4039fd2edca61c031c9396577693036
      
https://github.com/qemu/qemu/commit/41346263c4039fd2edca61c031c9396577693036
  Author: Igor Mammedov <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/core/hotplug.c
    M hw/core/qdev.c
    M include/hw/hotplug.h

  Log Message:
  -----------
  qdev: hotplug: Introduce HotplugHandler.pre_plug() callback

pre_plug callback is to be called before device.realize() is executed.
This would allow to check/set device's properties from HotplugHandler.

Signed-off-by: Igor Mammedov <address@hidden>
Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: f1020c2c2647a62df870ce243424ee23ea95ae6f
      
https://github.com/qemu/qemu/commit/f1020c2c2647a62df870ce243424ee23ea95ae6f
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/cpu/Makefile.objs
    A hw/cpu/core.c
    A include/hw/cpu/core.h

  Log Message:
  -----------
  cpu: Abstract CPU core type

Add an abstract CPU core type that could be used by machines that want
to define and hotplug CPUs in core granularity.

Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: Igor Mammedov <address@hidden>
         [Integer core property]
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>
[dwg: changed property names to 'core-id' and 'nr-threads']
Signed-off-by: David Gibson <address@hidden>


  Commit: 4a4b344c7ccdeac28c2e65e51ddbe3acfb41b883
      
https://github.com/qemu/qemu/commit/4a4b344c7ccdeac28c2e65e51ddbe3acfb41b883
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/intc/xics.c
    M hw/intc/xics_kvm.c
    M include/hw/ppc/xics.h

  Log Message:
  -----------
  xics,xics_kvm: Handle CPU unplug correctly

XICS is setup for each CPU during initialization. Provide a routine
to undo the same when CPU is unplugged. While here, move ss->cs management
into xics from xics_kvm since there is nothing KVM specific in it.
Also ensure xics reset doesn't set irq for CPUs that are already unplugged.

This allows reboot of a VM that has undergone CPU hotplug and unplug
to work correctly.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: aab99135b63522267c6fdae04712cb2f02c8c7de
      
https://github.com/qemu/qemu/commit/aab99135b63522267c6fdae04712cb2f02c8c7de
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr_drc.c
    M include/hw/ppc/spapr_drc.h

  Log Message:
  -----------
  spapr_drc: Prevent detach racing against attach for CPU DR

If a CPU is hot removed while hotplug of the same is still in progress,
the guest crashes. Prevent this by ensuring that detach is done only
after attach has completed.

The existing code already prevents such race for PCI hotplug. However
given that CPU is a logical DR unlike PCI and starts with ISOLATED
state, we need a logic that works for CPU too.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: Michael Roth <address@hidden>
Signed-off-by: Michael Roth <address@hidden>
         [Don't set awaiting_attach for PCI devices]
Signed-off-by: David Gibson <address@hidden>


  Commit: 3f97b53a682d2595747c926c00d78b9d406f1be0
      
https://github.com/qemu/qemu/commit/3f97b53a682d2595747c926c00d78b9d406f1be0
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M include/qom/object.h
    M qom/object.c

  Log Message:
  -----------
  qom: API to get instance_size of a type

Add an API object_type_get_size(const char *typename) that returns the
instance_size of the give typename.

Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 3b542549661eb216580e8b7683e13caa3950da45
      
https://github.com/qemu/qemu/commit/3b542549661eb216580e8b7683e13caa3950da45
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/Makefile.objs
    M hw/ppc/spapr.c
    A hw/ppc/spapr_cpu_core.c
    M include/hw/ppc/spapr.h
    A include/hw/ppc/spapr_cpu_core.h
    M target-ppc/kvm.c

  Log Message:
  -----------
  spapr: Abstract CPU core device and type specific core devices

Add sPAPR specific abastract CPU core device that is based on generic
CPU core device. Use this as base type to create sPAPR CPU specific core
devices.

TODO:
- Add core types for other remaining CPU types
- Handle CPU model alias correctly

Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: afd10a0fa6e90b79bad981c7334df2995d667de2
      
https://github.com/qemu/qemu/commit/afd10a0fa6e90b79bad981c7334df2995d667de2
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M include/hw/ppc/spapr.h

  Log Message:
  -----------
  spapr: Move spapr_cpu_init() to spapr_cpu_core.c

Start consolidating CPU init related routines in spapr_cpu_core.c. As
part of this, move spapr_cpu_init() and its dependencies from spapr.c
to spapr_cpu_core.c

No functionality change in this patch.

Signed-off-by: Bharata B Rao <address@hidden>
[dwg: Rename TIMEBASE_FREQ to SPAPR_TIMEBASE_FREQ, since it's now in a
 public(ish) header]
Signed-off-by: David Gibson <address@hidden>


  Commit: 94a94e4c49197d10e5ee7710bb0538ddeff75ba9
      
https://github.com/qemu/qemu/commit/94a94e4c49197d10e5ee7710bb0538ddeff75ba9
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_cpu_core.h

  Log Message:
  -----------
  spapr: convert boot CPUs into CPU core devices

Introduce sPAPRMachineClass.dr_cpu_enabled to indicate support for
CPU core hotplug. Initialize boot time CPUs as core deivces and prevent
topologies that result in partially filled cores. Both of these are done
only if CPU core hotplug is supported.

Note: An unrelated change in the call to xics_system_init() is done
in this patch as it makes sense to use the local variable smt introduced
in this patch instead of kvmppc_smt_threads() call here.

TODO: We derive sPAPR core type by looking at -cpu <model>. However
we don't take care of "compat=" feature yet for boot time as well
as hotplug CPUs.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: af81cf323c17083a3e016f9556c521357b46ab40
      
https://github.com/qemu/qemu/commit/af81cf323c17083a3e016f9556c521357b46ab40
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M hw/ppc/spapr_events.c
    M hw/ppc/spapr_rtas.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_cpu_core.h

  Log Message:
  -----------
  spapr: CPU hotplug support

Set up device tree entries for the hotplugged CPU core and use the
exising RTAS event logging infrastructure to send CPU hotplug notification
to the guest.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 6f4b5c3ec590b04ba58fda753a81a93f316b77a4
      
https://github.com/qemu/qemu/commit/6f4b5c3ec590b04ba58fda753a81a93f316b77a4
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_cpu_core.c
    M include/hw/ppc/spapr_cpu_core.h

  Log Message:
  -----------
  spapr: CPU hot unplug support

Remove the CPU core device by removing the underlying CPU thread devices.
Hot removal of CPU for sPAPR guests is achieved by sending the hot unplug
notification to the guest. Release the vCPU object after CPU hot unplug so
that vCPU fd can be parked and reused.

Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: d4633541ee0ec266ef4e55e1d71a98a18762d80c
      
https://github.com/qemu/qemu/commit/d4633541ee0ec266ef4e55e1d71a98a18762d80c
  Author: Igor Mammedov <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M include/hw/boards.h
    M monitor.c
    M qapi-schema.json
    M qmp-commands.hx

  Log Message:
  -----------
  QMP: Add query-hotpluggable-cpus

It will allow mgmt to query present and hotpluggable CPU objects,
it is required from a target platform that wishes to support command
to implement and set MachineClass.query_hotpluggable_cpus callback,
which will return a list of possible CPU objects with options that
would be needed for hotplugging possible CPU objects.

There are:
'type': 'str' - QOM CPU object type for usage with device_add
'vcpus-count': 'int' - number of logical VCPU threads per
                  CPU object (mgmt needs to know)

and a set of optional fields that are to used for hotplugging a CPU
objects and would allows mgmt tools to know what/where it could be
hotplugged;
[node],[socket],[core],[thread]

For present CPUs there is a 'qom-path' field which would allow mgmt to
inspect whatever object/abstraction the target platform considers
as CPU object.

Signed-off-by: Igor Mammedov <address@hidden>
Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: d2d8d46ff7f3edb21e09ebace775474d356bb6b7
      
https://github.com/qemu/qemu/commit/d2d8d46ff7f3edb21e09ebace775474d356bb6b7
  Author: Bharata B Rao <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hmp-commands-info.hx
    M hmp.c
    M hmp.h

  Log Message:
  -----------
  hmp: Add 'info hotpluggable-cpus' HMP command

This is the HMP equivalent for QMP query-hotpluggable-cpus.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
[dwg: Fixed problem with printf formats on 32-bit host]
Signed-off-by: David Gibson <address@hidden>


  Commit: 2474bfd4603b2d354fdb4001b083b7c72bff627f
      
https://github.com/qemu/qemu/commit/2474bfd4603b2d354fdb4001b083b7c72bff627f
  Author: Igor Mammedov <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  spapr: implement query-hotpluggable-cpus callback

It returns a list of present/possible to hotplug CPU
objects with a list of properties to use with
device_add.

in spapr case returned list would looks like:
-> { "execute": "query-hotpluggable-cpus" }
<- {"return": [
     { "props": { "core": 8 }, "type": "POWER8-spapr-cpu-core",
       "vcpus-count": 2 },
     { "props": { "core": 0 }, "type": "POWER8-spapr-cpu-core",
       "vcpus-count": 2,
       "qom-path": "/machine/unattached/device[0]"}
   ]}'

TODO:
  add 'node' property for core <-> numa node mapping

Signed-off-by: Igor Mammedov <address@hidden>
Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: David Gibson <address@hidden>


  Commit: 4acc8fdfd315f7ee474bea28fcbcc4dca9717d13
      
https://github.com/qemu/qemu/commit/4acc8fdfd315f7ee474bea28fcbcc4dca9717d13
  Author: Peter Maydell <address@hidden>
  Date:   2016-06-17 (Fri, 17 Jun 2016)

  Changed paths:
    M hmp-commands-info.hx
    M hmp.c
    M hmp.h
    M hw/core/hotplug.c
    M hw/core/qdev.c
    M hw/cpu/Makefile.objs
    A hw/cpu/core.c
    M hw/intc/xics.c
    M hw/intc/xics_kvm.c
    M hw/ppc/Makefile.objs
    M hw/ppc/spapr.c
    A hw/ppc/spapr_cpu_core.c
    M hw/ppc/spapr_drc.c
    M hw/ppc/spapr_events.c
    M hw/ppc/spapr_pci_vfio.c
    M hw/ppc/spapr_rtas.c
    M hw/vfio/common.c
    M include/hw/boards.h
    A include/hw/cpu/core.h
    M include/hw/hotplug.h
    M include/hw/ppc/spapr.h
    A include/hw/ppc/spapr_cpu_core.h
    M include/hw/ppc/spapr_drc.h
    M include/hw/ppc/xics.h
    M include/qom/object.h
    M monitor.c
    M qapi-schema.json
    M qmp-commands.hx
    M qom/object.c
    M target-ppc/kvm.c
    M target-ppc/translate.c
    M tests/Makefile.include
    A tests/prom-env-test.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.7-20160617' into 
staging

ppc patch queue for 2016-06-17

Here's the current accumulated set of spapr, ppc and related patches.
  * The big thing in here is CPU hotplug for spapr
    - This includes a number of acked generic changes adding new
      infrastructure for hotplugging cpu cores
  * A number of TCG bug fixes are also included
  * This adds a new testcase to make it harder to accidentally break
    Macintosh (and other openbios) platforms

# gpg: Signature made Fri 17 Jun 2016 07:35:29 BST
# gpg:                using RSA key 0x6C38CACA20D9B392
# gpg: Good signature from "David Gibson <address@hidden>"
# gpg:                 aka "David Gibson (Red Hat) <address@hidden>"
# gpg:                 aka "David Gibson (ozlabs.org) <address@hidden>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-2.7-20160617:
  spapr: implement query-hotpluggable-cpus callback
  hmp: Add 'info hotpluggable-cpus' HMP command
  QMP: Add query-hotpluggable-cpus
  spapr: CPU hot unplug support
  spapr: CPU hotplug support
  spapr: convert boot CPUs into CPU core devices
  spapr: Move spapr_cpu_init() to spapr_cpu_core.c
  spapr: Abstract CPU core device and type specific core devices
  qom: API to get instance_size of a type
  spapr_drc: Prevent detach racing against attach for CPU DR
  xics,xics_kvm: Handle CPU unplug correctly
  cpu: Abstract CPU core type
  qdev: hotplug: Introduce HotplugHandler.pre_plug() callback
  target-ppc: Fix rlwimi, rlwinm, rlwnm
  vfio: Fix broken EEH
  target-ppc: Bug in BookE wait instruction
  ppc / sparc: Add a tester for checking whether OpenBIOS runs successfully
  hw/ppc/spapr: Silence deprecation message in qtest mode

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


Compare: https://github.com/qemu/qemu/compare/7263a903c361...4acc8fdfd315

reply via email to

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