qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 8c6cc7: pc-bios: s390x: cio.c cleanup and com


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 8c6cc7: pc-bios: s390x: cio.c cleanup and compile fix
Date: Sat, 04 Jul 2020 07:00:27 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 8c6cc7b9df36e0ca6f562a46f2afd883b6dc6867
      
https://github.com/qemu/qemu/commit/8c6cc7b9df36e0ca6f562a46f2afd883b6dc6867
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/cio.c

  Log Message:
  -----------
  pc-bios: s390x: cio.c cleanup and compile fix

Let's initialize the structs at the beginning to ease reading and also
zeroing all other fields. This also makes the compiler stop
complaining about sense_id_ccw.flags being ored into when it's not
initialized.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20200624075226.92728-2-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: e70bc57ba0c982944cf5b71f293122dbb2b462f4
      
https://github.com/qemu/qemu/commit/e70bc57ba0c982944cf5b71f293122dbb2b462f4
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/menu.c
    M pc-bios/s390-ccw/netmain.c
    M pc-bios/s390-ccw/s390-ccw.h
    A pc-bios/s390-ccw/s390-time.h
    M pc-bios/s390-ccw/virtio-net.c
    M pc-bios/s390-ccw/virtio-scsi.c
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  pc-bios: s390x: Consolidate timing functions into time.h

Let's consolidate timing related functions into one header.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20200624075226.92728-3-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 12ea90dbd8fc38ca937acb53c730818077bf86fe
      
https://github.com/qemu/qemu/commit/12ea90dbd8fc38ca937acb53c730818077bf86fe
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/helper.h
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/virtio-net.c
    M pc-bios/s390-ccw/virtio-scsi.c

  Log Message:
  -----------
  pc-bios: s390x: Move sleep and yield to helper.h

They are definitely helper functions.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20200624075226.92728-4-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: e6d393d097ac09c9146772a829fff1bfaf61eb9d
      
https://github.com/qemu/qemu/commit/e6d393d097ac09c9146772a829fff1bfaf61eb9d
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/cio.h
    M pc-bios/s390-ccw/main.c

  Log Message:
  -----------
  pc-bios: s390x: Get rid of magic offsets into the lowcore

If we have a lowcore struct that has members for offsets that we want
to touch, why not use it?

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20200624075226.92728-5-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: b88faa1c899db2fae8b5b168aeb6c47bef090f27
      
https://github.com/qemu/qemu/commit/b88faa1c899db2fae8b5b168aeb6c47bef090f27
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/s390-arch.h

  Log Message:
  -----------
  pc-bios: s390x: Rename PSW_MASK_ZMODE to PSW_MASK_64

This constant enables 64 bit addressing, not the ESAME architecture,
so it shouldn't be named ZMODE.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200624075226.92728-7-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: fe75c657b8ee962da79f5d3518b139e26dc69c24
      
https://github.com/qemu/qemu/commit/fe75c657b8ee962da79f5d3518b139e26dc69c24
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/jump2ipl.c
    M pc-bios/s390-ccw/s390-arch.h

  Log Message:
  -----------
  pc-bios: s390x: Use PSW masks where possible and introduce PSW_MASK_SHORT_ADDR

Let's move some of the PSW mask defines into s390-arch.h and use them
in jump2ipl.c. Also let's introduce a new constant for the address
mask of 8 byte (short) PSWs.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200624075226.92728-8-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: add923b72e76080ca5339a27d58ed13566156935
      
https://github.com/qemu/qemu/commit/add923b72e76080ca5339a27d58ed13566156935
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/netmain.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/start.S

  Log Message:
  -----------
  pc-bios: s390x: Move panic() into header and add infinite loop

panic() was defined for the ccw and net bios, i.e. twice, so it's
cleaner to rather put it into the header.

Also let's add an infinite loop into the assembly of disabled_wait() so
the caller doesn't need to take care of it.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200624075226.92728-9-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 78182aea78257edc6b03a167cf7159479aa2ae06
      
https://github.com/qemu/qemu/commit/78182aea78257edc6b03a167cf7159479aa2ae06
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/bootmap.c

  Log Message:
  -----------
  pc-bios: s390x: Use ebcdic2ascii table

Why should we do conversion of a ebcdic value if we have a handy table
where we could look up the ascii value instead?

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200624075226.92728-10-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 9598c227aaff9f0c2ee7aee5b8013600b71bca15
      
https://github.com/qemu/qemu/commit/9598c227aaff9f0c2ee7aee5b8013600b71bca15
  Author: Janosch Frank <frankja@linux.ibm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/helper.h

  Log Message:
  -----------
  pc-bios: s390x: Make u32 ptr check explicit

Let's make it a bit more clear that we check the full 64 bits to fit
into the 32 we return.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Suggested-by: David Hildenbrand <david@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20200624075226.92728-11-frankja@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 1c9f655066d1defbe083ef06723be919cdfc13dc
      
https://github.com/qemu/qemu/commit/1c9f655066d1defbe083ef06723be919cdfc13dc
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw/Makefile
    M pc-bios/s390-ccw/netboot.mak

  Log Message:
  -----------
  pc-bios/s390-ccw: Generate and include dependency files in the Makefile

The Makefile of the s390-ccw bios does not handle dependencies of the
*.c files from the headers yet, so that you often have to run a "make
clean" to get the build right when one of the headers has been changed.
Let's make sure that we generate and include dependency files for all
*.c files now to avoid this problem in the future.

Acked-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20200630142955.7662-1-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: b71db6b9abb5af302c9669c133d78115c6437c45
      
https://github.com/qemu/qemu/commit/b71db6b9abb5af302c9669c133d78115c6437c45
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw.img
    M pc-bios/s390-netboot.img

  Log Message:
  -----------
  pc-bios/s390: Update s390-ccw bios binaries with the latest changes

... to make sure that the binaries match the current state of the
sources.

Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 9bf728a09bf7509b27543664f9cca6f4f337f608
      
https://github.com/qemu/qemu/commit/9bf728a09bf7509b27543664f9cca6f4f337f608
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2020-07-03 (Fri, 03 Jul 2020)

  Changed paths:
    M target/s390x/insn-data.def

  Log Message:
  -----------
  target/s390x: Fix SQXBR

The output is 128-bit, and thus requires a pair of 64-bit temps.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: David Hildenbrand <david@redhat.com>
Buglink: https://bugs.launchpad.net/bugs/1883984
Message-Id: <20200620042140.42070-1-richard.henderson@linaro.org>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>


  Commit: 1a8242f7c3f53341dd66253b142ecd06ce1d2a97
      
https://github.com/qemu/qemu/commit/1a8242f7c3f53341dd66253b142ecd06ce1d2a97
  Author: Halil Pasic <pasic@linux.ibm.com>
  Date:   2020-07-03 (Fri, 03 Jul 2020)

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

  Log Message:
  -----------
  virtio-ccw: fix virtio_set_ind_atomic

The atomic_cmpxchg() loop is broken because we occasionally end up with
old and _old having different values (a legit compiler can generate code
that accessed *ind_addr again to pick up a value for _old instead of
using the value of old that was already fetched according to the
rules of the abstract machine). This means the underlying CS instruction
may use a different old (_old) than the one we intended to use if
atomic_cmpxchg() performed the xchg part.

Let us use volatile to force the rules of the abstract machine for
accesses to *ind_addr. Let us also rewrite the loop so, we that the
new old is used to compute the new desired value if the xchg part
is not performed.

Fixes: 7e7494627f ("s390x/virtio-ccw: Adapter interrupt support.")
Reported-by: Andre Wild <Andre.Wild1@ibm.com>
Signed-off-by: Halil Pasic <pasic@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Message-Id: <20200616045035.51641-2-pasic@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>


  Commit: 45175361f1bfc2d3ccdcb4b22570c2352f3de754
      
https://github.com/qemu/qemu/commit/45175361f1bfc2d3ccdcb4b22570c2352f3de754
  Author: Halil Pasic <pasic@linux.ibm.com>
  Date:   2020-07-03 (Fri, 03 Jul 2020)

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

  Log Message:
  -----------
  s390x/pci: fix set_ind_atomic

The atomic_cmpxchg() loop is broken because we occasionally end up with
old and _old having different values (a legit compiler can generate code
that accessed *ind_addr again to pick up a value for _old instead of
using the value of old that was already fetched according to the
rules of the abstract machine). This means the underlying CS instruction
may use a different old (_old) than the one we intended to use if
atomic_cmpxchg() performed the xchg part.

Let us use volatile to force the rules of the abstract machine for
accesses to *ind_addr. Let us also rewrite the loop so, we that the
new old is used to compute the new desired value if the xchg part
is not performed.

Fixes: 8cba80c3a0 ("s390: Add PCI bus support")
Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Halil Pasic <pasic@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Message-Id: <20200616045035.51641-3-pasic@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>


  Commit: f196f6a8c7cca5e8bd1d6d37995447e1d6028223
      
https://github.com/qemu/qemu/commit/f196f6a8c7cca5e8bd1d6d37995447e1d6028223
  Author: Cornelia Huck <cohuck@redhat.com>
  Date:   2020-07-03 (Fri, 03 Jul 2020)

  Changed paths:
    M pc-bios/s390-ccw.img
    M pc-bios/s390-ccw/Makefile
    M pc-bios/s390-ccw/bootmap.c
    M pc-bios/s390-ccw/cio.c
    M pc-bios/s390-ccw/cio.h
    M pc-bios/s390-ccw/helper.h
    M pc-bios/s390-ccw/jump2ipl.c
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/menu.c
    M pc-bios/s390-ccw/netboot.mak
    M pc-bios/s390-ccw/netmain.c
    M pc-bios/s390-ccw/s390-arch.h
    M pc-bios/s390-ccw/s390-ccw.h
    A pc-bios/s390-ccw/s390-time.h
    M pc-bios/s390-ccw/start.S
    M pc-bios/s390-ccw/virtio-net.c
    M pc-bios/s390-ccw/virtio-scsi.c
    M pc-bios/s390-ccw/virtio.c
    M pc-bios/s390-netboot.img

  Log Message:
  -----------
  Merge tag 's390-ccw-bios-2020-07-02' into s390-next-staging

* Source code clean-ups from Janosch

# gpg: Signature made Thu 02 Jul 2020 11:56:01 AM CEST
# gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg:                issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full]
# gpg:                 aka "Thomas Huth <thuth@redhat.com>" [undefined]
# gpg:                 aka "Thomas Huth <huth@tuxfamily.org>" [undefined]
# gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]

* tag 's390-ccw-bios-2020-07-02':
  pc-bios/s390: Update s390-ccw bios binaries with the latest changes
  pc-bios/s390-ccw: Generate and include dependency files in the Makefile
  pc-bios: s390x: Make u32 ptr check explicit
  pc-bios: s390x: Use ebcdic2ascii table
  pc-bios: s390x: Move panic() into header and add infinite loop
  pc-bios: s390x: Use PSW masks where possible and introduce PSW_MASK_SHORT_ADDR
  pc-bios: s390x: Rename PSW_MASK_ZMODE to PSW_MASK_64
  pc-bios: s390x: Get rid of magic offsets into the lowcore
  pc-bios: s390x: Move sleep and yield to helper.h
  pc-bios: s390x: Consolidate timing functions into time.h
  pc-bios: s390x: cio.c cleanup and compile fix

Signed-off-by: Cornelia Huck <cohuck@redhat.com>


  Commit: 21d0bafbfe415e5c0f8109a98848c46f7d871c73
      
https://github.com/qemu/qemu/commit/21d0bafbfe415e5c0f8109a98848c46f7d871c73
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2020-07-04 (Sat, 04 Jul 2020)

  Changed paths:
    M hw/s390x/s390-pci-bus.c
    M hw/s390x/virtio-ccw.c
    M pc-bios/s390-ccw.img
    M pc-bios/s390-ccw/Makefile
    M pc-bios/s390-ccw/bootmap.c
    M pc-bios/s390-ccw/cio.c
    M pc-bios/s390-ccw/cio.h
    M pc-bios/s390-ccw/helper.h
    M pc-bios/s390-ccw/jump2ipl.c
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/menu.c
    M pc-bios/s390-ccw/netboot.mak
    M pc-bios/s390-ccw/netmain.c
    M pc-bios/s390-ccw/s390-arch.h
    M pc-bios/s390-ccw/s390-ccw.h
    A pc-bios/s390-ccw/s390-time.h
    M pc-bios/s390-ccw/start.S
    M pc-bios/s390-ccw/virtio-net.c
    M pc-bios/s390-ccw/virtio-scsi.c
    M pc-bios/s390-ccw/virtio.c
    M pc-bios/s390-netboot.img
    M target/s390x/insn-data.def

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

s390 update:
- various fixes
- cleanup in the s390x-ccw bios

# gpg: Signature made Fri 03 Jul 2020 11:04:08 BST
# gpg:                using RSA key C3D0D66DC3624FF6A8C018CEDECF6B93C6F02FAF
# gpg:                issuer "cohuck@redhat.com"
# gpg: Good signature from "Cornelia Huck <conny@cornelia-huck.de>" [marginal]
# gpg:                 aka "Cornelia Huck <huckc@linux.vnet.ibm.com>" [full]
# gpg:                 aka "Cornelia Huck <cornelia.huck@de.ibm.com>" [full]
# gpg:                 aka "Cornelia Huck <cohuck@kernel.org>" [marginal]
# gpg:                 aka "Cornelia Huck <cohuck@redhat.com>" [marginal]
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF

* remotes/cohuck/tags/s390x-20200703:
  s390x/pci: fix set_ind_atomic
  virtio-ccw: fix virtio_set_ind_atomic
  target/s390x: Fix SQXBR
  pc-bios/s390: Update s390-ccw bios binaries with the latest changes
  pc-bios/s390-ccw: Generate and include dependency files in the Makefile
  pc-bios: s390x: Make u32 ptr check explicit
  pc-bios: s390x: Use ebcdic2ascii table
  pc-bios: s390x: Move panic() into header and add infinite loop
  pc-bios: s390x: Use PSW masks where possible and introduce PSW_MASK_SHORT_ADDR
  pc-bios: s390x: Rename PSW_MASK_ZMODE to PSW_MASK_64
  pc-bios: s390x: Get rid of magic offsets into the lowcore
  pc-bios: s390x: Move sleep and yield to helper.h
  pc-bios: s390x: Consolidate timing functions into time.h
  pc-bios: s390x: cio.c cleanup and compile fix

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/7b7515702012...21d0bafbfe41



reply via email to

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