qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 9bfc04: pc-bios: s390x: Save iplb location in


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 9bfc04: pc-bios: s390x: Save iplb location in lowcore
Date: Tue, 10 Mar 2020 13:00:17 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 9bfc04f9ef6802fff0fc77130ff345a541783363
      
https://github.com/qemu/qemu/commit/9bfc04f9ef6802fff0fc77130ff345a541783363
  Author: Janosch Frank <address@hidden>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

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

  Log Message:
  -----------
  pc-bios: s390x: Save iplb location in lowcore

The POP states that for a list directed IPL the IPLB is stored into
memory by the machine loader and its address is stored at offset 0x14
of the lowcore.

ZIPL currently uses the address in offset 0x14 to access the IPLB and
acquire flags about secure boot. If the IPLB address points into
memory which has an unsupported mix of flags set, ZIPL will panic
instead of booting the OS.

As the lowcore can have quite a high entropy for a guest that did drop
out of protected mode (i.e. rebooted) we encountered the ZIPL panic
quite often.

Signed-off-by: Janosch Frank <address@hidden>
Tested-by: Marc Hartmayer <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Christian Borntraeger <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 73987ee5102ff646a62c4f4e5b89a1949b9fdbc9
      
https://github.com/qemu/qemu/commit/73987ee5102ff646a62c4f4e5b89a1949b9fdbc9
  Author: Christian Borntraeger <address@hidden>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

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

  Log Message:
  -----------
  s390x/bios: rebuild s390-ccw.img

contains 98df96d4edae ("pc-bios: s390x: Save iplb location in lowcore")

Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 0a01e082a428b921e48b5314881b1f23a7b0fe50
      
https://github.com/qemu/qemu/commit/0a01e082a428b921e48b5314881b1f23a7b0fe50
  Author: Halil Pasic <address@hidden>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M hw/s390x/ipl.c

  Log Message:
  -----------
  s390/ipl: sync back loadparm

We expose loadparm as a r/w machine property, but if loadparm is set by
the guest via DIAG 308, we don't update the property. Having a
disconnect between the guest view and the QEMU property is not nice in
itself, but things get even worse for SCSI, where under certain
circumstances (see 789b5a401b "s390: Ensure IPL from SCSI works as
expected" for details) we call s390_gen_initial_iplb() on resets
effectively overwriting the guest/user supplied loadparm with the stale
value.

Signed-off-by: Halil Pasic <address@hidden>
Fixes: 7104bae9de ("hw/s390x: provide loadparm property for the machine")
Reported-by: Marc Hartmayer <address@hidden>
Reviewed-by: Janosch Frank <address@hidden>
Reviewed-by: Viktor Mihajlovski <address@hidden>
Tested-by: Marc Hartmayer <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
[address@hidden: use reverse xmas tree]
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 94c21436e5a89143f8b9cb4d089d1a2f3f4fd377
      
https://github.com/qemu/qemu/commit/94c21436e5a89143f8b9cb4d089d1a2f3f4fd377
  Author: Janosch Frank <address@hidden>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M hw/s390x/ipl.h
    M target/s390x/diag.c

  Log Message:
  -----------
  s390x: ipl: Consolidate iplb validity check into one function

It's nicer to just call one function than calling a function for each
possible iplb type.

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


  Commit: ba29883206d92a29ad5a466e679ccfc2ee6132ef
      
https://github.com/qemu/qemu/commit/ba29883206d92a29ad5a466e679ccfc2ee6132ef
  Author: Peter Maydell <address@hidden>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M hw/s390x/ipl.c
    M hw/s390x/ipl.h
    M pc-bios/s390-ccw.img
    M pc-bios/s390-ccw/jump2ipl.c
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/netmain.c
    M pc-bios/s390-ccw/s390-arch.h
    M pc-bios/s390-ccw/s390-ccw.h
    M target/s390x/diag.c

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

s390x/ipl: Fixes for ipl and bios

- provide a pointer to the loadparm. This fixes crashes in zipl
- do not throw away guest changes of the IPL parameter during reset
- refactor IPLB checks

# gpg: Signature made Tue 10 Mar 2020 14:50:31 GMT
# gpg:                using RSA key 117BBC80B5A61C7C
# gpg: Good signature from "Christian Borntraeger (2nd IBM address) 
<address@hidden>" [unknown]
# gpg:                 aka "Christian Borntraeger (IBM) <address@hidden>" [full]
# gpg:                 aka "Christian Borntraeger (kernel.org email address) 
<address@hidden>" [unknown]
# Primary key fingerprint: F922 9381 A334 08F9 DBAB  FBCA 117B BC80 B5A6 1C7C

* remotes/borntraeger/tags/s390x-20200310:
  s390x: ipl: Consolidate iplb validity check into one function
  s390/ipl: sync back loadparm
  s390x/bios: rebuild s390-ccw.img
  pc-bios: s390x: Save iplb location in lowcore

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


Compare: https://github.com/qemu/qemu/compare/7bc4d1980f95...ba29883206d9



reply via email to

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