qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] af3c15: pc-bios/s390-ccw: avoid floating poin


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] af3c15: pc-bios/s390-ccw: avoid floating point operations
Date: Thu, 08 Oct 2015 03:30:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: af3c15fee54e841d859d003b90a88042daf6cd7a
      
https://github.com/qemu/qemu/commit/af3c15fee54e841d859d003b90a88042daf6cd7a
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M pc-bios/s390-ccw/Makefile

  Log Message:
  -----------
  pc-bios/s390-ccw: avoid floating point operations

Some gcc versions (e.g. Fedora 22 gcc 5.1.1) seem to use floating
point registers for spilling and filling of general purpose registers.
As the BIOS does not activate the AFP register setting of CR0 this can
cause data exception program checks.
Disallow floating point in the BIOS as a simple solution.

Signed-off-by: Christian Borntraeger <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 8a641ff60f38799a10ed44a7c5bddd386bc169ed
      
https://github.com/qemu/qemu/commit/8a641ff60f38799a10ed44a7c5bddd386bc169ed
  Author: David Hildenbrand <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M configure
    A gdb-xml/s390-virt.xml
    M target-s390x/gdbstub.c

  Log Message:
  -----------
  s390x/gdb: expose virtualization specific registers

Let's expose some virtual/fake registers as virtualization specific
registers.

Signed-off-by: David Hildenbrand <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 7059384c7e27d68c502d8636eb711873a9a6a597
      
https://github.com/qemu/qemu/commit/7059384c7e27d68c502d8636eb711873a9a6a597
  Author: David Hildenbrand <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M hw/s390x/event-facility.c

  Log Message:
  -----------
  s390x: set missing parent for hotplug and quiesce events

Existing code missed to set a parent for the quiesce and hotplug event.
While this didn't matter in practise, new introspection APIs basically now
do an object_unref(object_new(T)), which loops forever.

When trying to remove the event facility bus, the code tries to
unparent all childs on the bus, so they are properly deleted and therefore 
removed.
As object_unparent() on these child devices doesn't work, as there is no parent,
we loop forever.

Let's fix this by adding the event facility as a parent. Also switch from
object_initialize to object_new, so the only valid reference is in fact the
parent property. This makes it more obvious when the device (state) is actually
gone (and how the reference counting works).

Signed-off-by: David Hildenbrand <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: a6085fab3b6b9f0f9d636170b7d7bd31172b5038
      
https://github.com/qemu/qemu/commit/a6085fab3b6b9f0f9d636170b7d7bd31172b5038
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M target-s390x/translate.c

  Log Message:
  -----------
  s390x/info registers: print vector registers properly

We want

F12=0000000000000000 F13=0000000000000000 F14=0000000000000000 
F15=0000000000000000
V00=00000000000000000000000000000000 V01=00000000000000000000000000000000

instead of
F12=0000000000000000 F13=0000000000000000 F14=0000000000000000 
F15=0000000000000000
V00=00000000000000000000000000000000
V01=00000000000000000000000000000000 V02=00000000000000000000000000000000

Signed-off-by: Christian Borntraeger <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: d9f090ec7794d433b8f222ae8c8f95601369a4a5
      
https://github.com/qemu/qemu/commit/d9f090ec7794d433b8f222ae8c8f95601369a4a5
  Author: David Hildenbrand <address@hidden>
  Date:   2015-10-02 (Fri, 02 Oct 2015)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c
    M target-s390x/cpu.h
    M target-s390x/misc_helper.c

  Log Message:
  -----------
  s390x: rename io_subsystem_reset -> subsystem_reset

According to the Pop:
"Subsystem reset operates only on those elements in the configuration
which are not CPUs".

As this is what we actually do, let's simply rename the function.

Acked-by: Cornelia Huck <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: eed2df678574f7f17947180a01127a8ba673a226
      
https://github.com/qemu/qemu/commit/eed2df678574f7f17947180a01127a8ba673a226
  Author: Peter Maydell <address@hidden>
  Date:   2015-10-06 (Tue, 06 Oct 2015)

  Changed paths:
    M configure
    A gdb-xml/s390-virt.xml
    M hw/s390x/event-facility.c
    M hw/s390x/s390-virtio-ccw.c
    M pc-bios/s390-ccw/Makefile
    M target-s390x/cpu.h
    M target-s390x/gdbstub.c
    M target-s390x/misc_helper.c
    M target-s390x/translate.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/borntraeger/tags/s390x-20151006' into 
staging

s390: fixes

Some fixes all over the place:
- ccw bios and gcc 5.1 (avoid floating point ops)
- properly print vector registers
- sclp and sclp-event-facility no longer hang on object_unref(object_new(T))
- better name for io_subsystem_reset

One feature
- the gdb server now exposes several virtualization specific register

# gpg: Signature made Tue 06 Oct 2015 11:20:24 BST using RSA key ID B5A61C7C
# gpg: Good signature from "Christian Borntraeger (IBM) <address@hidden>"

* remotes/borntraeger/tags/s390x-20151006:
  s390x: rename io_subsystem_reset -> subsystem_reset
  s390x/info registers: print vector registers properly
  s390x: set missing parent for hotplug and quiesce events
  s390x/gdb: expose virtualization specific registers
  pc-bios/s390-ccw: avoid floating point operations

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


Compare: https://github.com/qemu/qemu/compare/5fdb4671b08e...eed2df678574

reply via email to

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