qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 108908: s390x: introduce 2.10 compat machine


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 108908: s390x: introduce 2.10 compat machine
Date: Fri, 21 Apr 2017 06:01:47 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 10890873ca8e518d5ef7782281fd4a6aeeda7061
      
https://github.com/qemu/qemu/commit/10890873ca8e518d5ef7782281fd4a6aeeda7061
  Author: Cornelia Huck <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c
    M include/hw/compat.h

  Log Message:
  -----------
  s390x: introduce 2.10 compat machine

Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 08564ecd4df76c047baf956f66e8a9bffe5e0e97
      
https://github.com/qemu/qemu/commit/08564ecd4df76c047baf956f66e8a9bffe5e0e97
  Author: Danil Antonov <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M target/s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: make printf always compile in debug output

Wrapped printf calls inside debug macros (DPRINTF) in `if` statement.
This will ensure that printf function will always compile even if debug
output is turned off and, in turn, will prevent bitrot of the format
strings.

Signed-off-by: Danil Antonov <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 229913f0ef3807b5cf4eecd5a0ef8133ff6dbbcb
      
https://github.com/qemu/qemu/commit/229913f0ef3807b5cf4eecd5a0ef8133ff6dbbcb
  Author: Danil Antonov <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-inst.c

  Log Message:
  -----------
  s390x/pci: make printf always compile in debug output

Wrapped printf calls inside debug macros (DPRINTF) in `if` statement.
This will ensure that printf function will always compile even if debug
output is turned off and, in turn, will prevent bitrot of the format
strings.

Signed-off-by: Danil Antonov <address@hidden>
Message-Id: <address@hidden>
[CH: remove now misleading comments]
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: c35fc6aa1840b26f06f9ac79509c7ed9280003ac
      
https://github.com/qemu/qemu/commit/c35fc6aa1840b26f06f9ac79509c7ed9280003ac
  Author: Dong Jia Shi <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/css.c
    M include/hw/s390x/css.h

  Log Message:
  -----------
  s390x/css: introduce read-only property type for device ids

Let's introduce a read-only property type that handles device ids of the
CssDevId type used for channel devices for future use. e.g. exposing the
busid of an I/O subchannel that is assigned to a ccw device.

Signed-off-by: Dong Jia Shi <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: d8d98db5f07d0a472308c70c3becb56888df156d
      
https://github.com/qemu/qemu/commit/d8d98db5f07d0a472308c70c3becb56888df156d
  Author: Dong Jia Shi <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/ccw-device.c
    M hw/s390x/ccw-device.h
    M hw/s390x/virtio-ccw.c

  Log Message:
  -----------
  s390x/css: provide introspection for virtual subchannel and device busid

Expose the busids of the virtual I/O subchannel and the virtual CCW
device to ease debugging. This is needed because:
1. subchannel id are assigned dynamically, and cannot be set from
   outside.
2. device busid could possibly be auto generated.

An example of using HMP to retrieve the property values of a
virtio-balloon-ccw device looks like:

address@hidden ~]# lscss -d 0.0.0004
Device   Subchan.  DevType CU Type Use  PIM PAM POM  CHPIDs
----------------------------------------------------------------------
0.0.0004 0.0.0003  0000/00 3832/05 yes  80  80  ff   00000000 00000000

(qemu) info qtree
... ...
      dev: virtio-balloon-ccw, id "balloon0"
  devno = "<unset>"
  ioeventfd = true
  max_revision = 2 (0x2)
  dev_id = "fe.0.0004"
  subch_id = "fe.0.0003"
... ...

After migration, if we have the same device that shows up on a
different subchannel, we must re-fill the subch_id of the ccw
device with the new schid, or the subch_id will have an old wrong
schid value. So this also re-fills the subch_id after migration.

While we are at it, also neaten the related error handling a bit.

Signed-off-by: Dong Jia Shi <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 2a78ac660f460edd60eb514c589c512c0f491c46
      
https://github.com/qemu/qemu/commit/2a78ac660f460edd60eb514c589c512c0f491c46
  Author: Dong Jia Shi <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/ccw-device.c
    M hw/s390x/ccw-device.h
    M hw/s390x/virtio-ccw.c

  Log Message:
  -----------
  s390x/css: consolidate the devno property for ccw devices

'devno' should rather be a property of the ccw device, instead of a
property of a specific virtio-ccw device. Let's consolidate it.

While we are at here, also rename CcwDevice.bus_id to CcwDevice.devno to
make things clearer.

Signed-off-by: Dong Jia Shi <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 5b00bef270e8bca9c1906cbc2a49eb376505db34
      
https://github.com/qemu/qemu/commit/5b00bef270e8bca9c1906cbc2a49eb376505db34
  Author: Fei Li <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/css.c
    M hw/s390x/s390-pci-bus.h
    M hw/s390x/s390-pci-inst.c
    M include/hw/s390x/css.h

  Log Message:
  -----------
  s390x: use enum for adapter type and standardize its naming

Let's use an enum for io adapter type, and standardize its naming to
CSS_IO_ADAPTER_* by changing S390_PCIPT_ADAPTER to CSS_IO_ADAPTER_PCI.

Signed-off-by: Fei Li <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: c572d3f313a3580bc2a1ec7c14a25a2ac40c32ca
      
https://github.com/qemu/qemu/commit/c572d3f313a3580bc2a1ec7c14a25a2ac40c32ca
  Author: Fei Li <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c

  Log Message:
  -----------
  s390x: initialize flic before I/O subsystems

Let's have a flic before we move on to initialize more specific
subsystems that make use of it.

Signed-off-by: Fei Li <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: bc66d6cbca780c5b8c237b9d355caa8274e5b312
      
https://github.com/qemu/qemu/commit/bc66d6cbca780c5b8c237b9d355caa8274e5b312
  Author: Fei Li <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/intc/s390_flic.c

  Log Message:
  -----------
  s390x/flic: cache flic in s390_get_flic

s390_get_flic() is called many times to obtain the flic. This wastes a
lot of time as it calls object_resolve_path() every time. Let's cache
S390FLICState by defining it as static.

Signed-off-by: Fei Li <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: dde522bbc5feb2862afb243bb49c590fe65dce66
      
https://github.com/qemu/qemu/commit/dde522bbc5feb2862afb243bb49c590fe65dce66
  Author: Fei Li <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/s390x/css-bridge.c
    M hw/s390x/css.c
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-inst.c
    M hw/s390x/virtio-ccw.c
    M include/hw/s390x/css.h

  Log Message:
  -----------
  s390x: register I/O adapters per ISC during init

The I/O adapters should exist as soon as the bus/infrastructure
exists, and not only when the guest is actually trying to do something
with them. While the lazy allocation was not wrong, allocating at init
time is cleaner, both for the architecture and the code. Let's adjust
this by having each device type (currently for PCI and virtio-ccw)
register the adapters for each ISC (as now we don't know which ISC the
guest will use) as soon as it initializes.

Use a two-dimensional array io_adapters[type][isc] to store adapters
in ChannelSubSys, so that we can conveniently get the adapter id by
the helper function css_get_adapter_id(type, isc).

Signed-off-by: Fei Li <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: cb55c19a26d6928b445f1bd9394843c9eb60f8ab
      
https://github.com/qemu/qemu/commit/cb55c19a26d6928b445f1bd9394843c9eb60f8ab
  Author: Eric Blake <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M target/s390x/cpu_models.c

  Log Message:
  -----------
  s390x: Drop useless casts

An upcoming Coccinelle cleanup script wanted to reformat the casts
present in this file - but on closer look, we don't need the casts
at all because C automatically converts void* to any other pointer.

Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: b4c963fa82ff5c0d7a991acb7e72e33f12eed1d4
      
https://github.com/qemu/qemu/commit/b4c963fa82ff5c0d7a991acb7e72e33f12eed1d4
  Author: Peter Maydell <address@hidden>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M hw/intc/s390_flic.c
    M hw/s390x/ccw-device.c
    M hw/s390x/ccw-device.h
    M hw/s390x/css-bridge.c
    M hw/s390x/css.c
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/s390-pci-bus.h
    M hw/s390x/s390-pci-inst.c
    M hw/s390x/s390-virtio-ccw.c
    M hw/s390x/virtio-ccw.c
    M include/hw/compat.h
    M include/hw/s390x/css.h
    M target/s390x/cpu_models.c
    M target/s390x/kvm.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20170421' into staging

The first batch of s390x changes for 2.10:
- the new compat machine
- several cleanups and optimizations
- introspection for css ids

# gpg: Signature made Fri 21 Apr 2017 08:36:25 BST
# gpg:                using RSA key 0xDECF6B93C6F02FAF
# gpg: Good signature from "Cornelia Huck <address@hidden>"
# gpg:                 aka "Cornelia Huck <address@hidden>"
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF

* remotes/cohuck/tags/s390x-20170421:
  s390x: Drop useless casts
  s390x: register I/O adapters per ISC during init
  s390x/flic: cache flic in s390_get_flic
  s390x: initialize flic before I/O subsystems
  s390x: use enum for adapter type and standardize its naming
  s390x/css: consolidate the devno property for ccw devices
  s390x/css: provide introspection for virtual subchannel and device busid
  s390x/css: introduce read-only property type for device ids
  s390x/pci: make printf always compile in debug output
  s390x/kvm: make printf always compile in debug output
  s390x: introduce 2.10 compat machine

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


Compare: https://github.com/qemu/qemu/compare/bfec359afba0...b4c963fa82ff

reply via email to

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