qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] ebed68: target/s390x: Split out helper_per_st


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] ebed68: target/s390x: Split out helper_per_store_real
Date: Fri, 20 Dec 2019 10:00:13 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: ebed683c4e2678947df06cb33d3d860840426c65
      
https://github.com/qemu/qemu/commit/ebed683c4e2678947df06cb33d3d860840426c65
  Author: Richard Henderson <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M target/s390x/helper.h
    M target/s390x/mem_helper.c
    M target/s390x/misc_helper.c
    M target/s390x/translate.c

  Log Message:
  -----------
  target/s390x: Split out helper_per_store_real

Split the PER handling for store-to-real-address into its
own helper function, conditionally called when PER is
enabled, just as we do for per_branch and per_ifetch.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 5e34df7cc9c14da673521c9880b01941fb20860c
      
https://github.com/qemu/qemu/commit/5e34df7cc9c14da673521c9880b01941fb20860c
  Author: Richard Henderson <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M target/s390x/helper.h
    M target/s390x/insn-data.def
    M target/s390x/mem_helper.c
    M target/s390x/translate.c

  Log Message:
  -----------
  target/s390x: Implement LOAD/STORE TO REAL ADDRESS inline

These are trivially done by performing a memory operation
with the correct mmu_idx.  The only tricky part is using
get_address directly in order to get the address wrapped;
we cannot use la2 because of the format.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 5afec76fbe2c07d03fd8c9ac525140059499637a
      
https://github.com/qemu/qemu/commit/5afec76fbe2c07d03fd8c9ac525140059499637a
  Author: Thomas Huth <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M tests/boot-sector.c

  Log Message:
  -----------
  tests/boot-sector: Fix the bad s390x assembler code

There are currently two bugs in s390x_code[]: First, the initial jump
uses the wrong offset, so it was jumping to 0x10014 instead of 0x10010.
Second, LHI only loads the lower 32-bit of the register.

Everything worked fine as long as the s390-ccw bios code was jumping
here with r3 containing zeroes in the uppermost 48 bit - which just
happened to be the case so far by accident. But we can not rely on this
fact, and indeed one of the recent suggested patches to jump2ipl.c cause
the newer GCCs to put different values into r3. In that case the code
from s390x_code[] crashes very ungracefully.

Thus let's make sure to jump to the right instruction, and use LGHI
instead of LHI to make sure that we always zero out the upper bits
of the register.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Christian Borntraeger <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 5c6f0d5f46a77d77460dfb518cf1e1e4145c276e
      
https://github.com/qemu/qemu/commit/5c6f0d5f46a77d77460dfb518cf1e1e4145c276e
  Author: Janosch Frank <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

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

  Log Message:
  -----------
  pc-bios/s390x: Fix reset psw mask

We need to set the short psw indication bit in the reset psw, as it is
a short psw.

Exposed by "s390x: Properly fetch and test the short psw on diag308
subc 0/1".

Fixes: 962982329029 ("pc-bios/s390-ccw: do a subsystem reset before running the 
guest")
Signed-off-by: Janosch Frank <address@hidden>
Message-Id: <address@hidden>
Acked-by: Christian Borntraeger <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: d0ce53ff2d04fd8af7c2784d4992df94918cd03a
      
https://github.com/qemu/qemu/commit/d0ce53ff2d04fd8af7c2784d4992df94918cd03a
  Author: Cornelia Huck <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

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

  Log Message:
  -----------
  pc-bios/s390: Update firmware images

Contains "pc-bios/s390x: Fix reset psw mask".

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


  Commit: 104130cb7c106378dab944397c6a455c4a6d552f
      
https://github.com/qemu/qemu/commit/104130cb7c106378dab944397c6a455c4a6d552f
  Author: Janosch Frank <address@hidden>
  Date:   2019-12-18 (Wed, 18 Dec 2019)

  Changed paths:
    M target/s390x/cpu.c
    M target/s390x/cpu.h

  Log Message:
  -----------
  s390x: Properly fetch and test the short psw on diag308 subc 0/1

We need to actually fetch the cpu mask and set it. As we invert the
short psw indication in the mask, SIE will report a specification
exception, if it wasn't present in the reset psw.

Signed-off-by: Janosch Frank <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: dd5b0f95490883cd8bc7d070db8de70d5c979cbc
      
https://github.com/qemu/qemu/commit/dd5b0f95490883cd8bc7d070db8de70d5c979cbc
  Author: Peter Maydell <address@hidden>
  Date:   2019-12-20 (Fri, 20 Dec 2019)

  Changed paths:
    M pc-bios/s390-ccw.img
    M pc-bios/s390-ccw/jump2ipl.c
    M pc-bios/s390-netboot.img
    M target/s390x/cpu.c
    M target/s390x/cpu.h
    M target/s390x/helper.h
    M target/s390x/insn-data.def
    M target/s390x/mem_helper.c
    M target/s390x/misc_helper.c
    M target/s390x/translate.c
    M tests/boot-sector.c

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

More s390x patches:
- tcg: implement LOAD/STORE TO REAL ADDRESS inline
- fixes in tests, the bios, and diag308 handling

# gpg: Signature made Thu 19 Dec 2019 10:53:19 GMT
# gpg:                using RSA key C3D0D66DC3624FF6A8C018CEDECF6B93C6F02FAF
# gpg:                issuer "address@hidden"
# gpg: Good signature from "Cornelia Huck <address@hidden>" [unknown]
# gpg:                 aka "Cornelia Huck <address@hidden>" [full]
# gpg:                 aka "Cornelia Huck <address@hidden>" [full]
# gpg:                 aka "Cornelia Huck <address@hidden>" [unknown]
# gpg:                 aka "Cornelia Huck <address@hidden>" [unknown]
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF

* remotes/cohuck/tags/s390x-20191219:
  s390x: Properly fetch and test the short psw on diag308 subc 0/1
  pc-bios/s390: Update firmware images
  pc-bios/s390x: Fix reset psw mask
  tests/boot-sector: Fix the bad s390x assembler code
  target/s390x: Implement LOAD/STORE TO REAL ADDRESS inline
  target/s390x: Split out helper_per_store_real

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


Compare: https://github.com/qemu/qemu/compare/f59b31e6d0c6...dd5b0f954908



reply via email to

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