From: "Jason J. Herne" <jjherne@linux.ibm.com>
To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com,
thuth@redhat.com, pasic@linux.ibm.com, alifm@linux.ibm.com,
borntraeger@de.ibm.com
Subject: [Qemu-devel] [PATCH v6 00/16] s390: vfio-ccw dasd ipl support
Date: Thu, 4 Apr 2019 10:34:19 -0400 [thread overview]
Message-ID: <1554388475-18329-1-git-send-email-jjherne@linux.ibm.com> (raw)
This is to support booting from vfio-ccw dasd devices. We basically implement
the real hardware ipl procedure. This allows for booting Linux guests on
vfio-ccw devices.
vfio-ccw's channel program prefetch algorithm complicates ipl because most ipl
channel programs dynamically modify themselves. Details on the ipl process and
how we worked around this issue can be found in docs/devel/s390-dasd-ipl.txt.
Changelog
==========
v6
- Added patch #16 to fix regression whereby we attempted to boot from console
devices when no default boot device was specified.
- Bug fix: Referencing a byte past end of sense data status array
- Reorganized patch order slightly
- Other misc wording/spelling fixups
Jason J. Herne (16):
s390 vfio-ccw: Add bootindex property and IPLB data
s390-bios: decouple cio setup from virtio
s390-bios: decouple common boot logic from virtio
s390-bios: Clean up cio.h
s390-bios: Decouple channel i/o logic from virtio
s390-bios: Map low core memory
s390-bios: ptr2u32 and u32toptr
s390-bios: Support for running format-0/1 channel programs
s390-bios: cio error handling
s390-bios: Extend find_dev() for non-virtio devices
s390-bios: Factor finding boot device out of virtio code path
s390-bios: Refactor virtio to run channel programs via cio
s390-bios: Use control unit type to determine boot method
s390-bios: Add channel command codes/structs needed for dasd-ipl
s390-bios: Support booting from real dasd device
s390-bios: Use control unit type to find bootable devices
MAINTAINERS | 2 +
docs/devel/s390-dasd-ipl.txt | 133 ++++++++++++++
hw/s390x/ipl.c | 61 +++++--
hw/s390x/s390-ccw.c | 9 +
hw/vfio/ccw.c | 2 +-
include/hw/s390x/s390-ccw.h | 1 +
include/hw/s390x/vfio-ccw.h | 28 +++
pc-bios/s390-ccw/Makefile | 2 +-
pc-bios/s390-ccw/cio.c | 423 +++++++++++++++++++++++++++++++++++++++++++
pc-bios/s390-ccw/cio.h | 270 +++++++++++++++++++++------
pc-bios/s390-ccw/dasd-ipl.c | 235 ++++++++++++++++++++++++
pc-bios/s390-ccw/dasd-ipl.h | 16 ++
pc-bios/s390-ccw/helper.h | 31 ++++
pc-bios/s390-ccw/libc.h | 11 ++
pc-bios/s390-ccw/main.c | 185 +++++++++++++------
pc-bios/s390-ccw/netboot.mak | 2 +-
pc-bios/s390-ccw/netmain.c | 2 +
pc-bios/s390-ccw/s390-arch.h | 103 +++++++++++
pc-bios/s390-ccw/s390-ccw.h | 10 +-
pc-bios/s390-ccw/start.S | 29 +++
pc-bios/s390-ccw/virtio.c | 81 +++------
tests/boot-serial-test.c | 2 +-
22 files changed, 1438 insertions(+), 200 deletions(-)
create mode 100644 docs/devel/s390-dasd-ipl.txt
create mode 100644 include/hw/s390x/vfio-ccw.h
create mode 100644 pc-bios/s390-ccw/cio.c
create mode 100644 pc-bios/s390-ccw/dasd-ipl.c
create mode 100644 pc-bios/s390-ccw/dasd-ipl.h
create mode 100644 pc-bios/s390-ccw/helper.h
create mode 100644 pc-bios/s390-ccw/s390-arch.h
--
2.7.4
next reply other threads:[~2019-04-04 14:34 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-04 14:34 Jason J. Herne [this message]
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 01/16] s390 vfio-ccw: Add bootindex property and IPLB data Jason J. Herne
2019-04-12 10:38 ` Thomas Huth
2019-04-12 10:38 ` Thomas Huth
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 02/16] s390-bios: decouple cio setup from virtio Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 03/16] s390-bios: decouple common boot logic " Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 04/16] s390-bios: Clean up cio.h Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 05/16] s390-bios: Decouple channel i/o logic from virtio Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 06/16] s390-bios: Map low core memory Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 07/16] s390-bios: ptr2u32 and u32toptr Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 08/16] s390-bios: Support for running format-0/1 channel programs Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 09/16] s390-bios: cio error handling Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 10/16] s390-bios: Extend find_dev() for non-virtio devices Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 11/16] s390-bios: Factor finding boot device out of virtio code path Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 12/16] s390-bios: Refactor virtio to run channel programs via cio Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 13/16] s390-bios: Use control unit type to determine boot method Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 14/16] s390-bios: Add channel command codes/structs needed for dasd-ipl Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 15/16] s390-bios: Support booting from real dasd device Jason J. Herne
2019-04-04 14:34 ` [Qemu-devel] [PATCH v6 16/16] s390-bios: Use control unit type to find bootable devices Jason J. Herne
2019-04-05 5:55 ` Thomas Huth
2019-04-05 5:55 ` Thomas Huth
2019-04-04 15:14 ` [Qemu-devel] [PATCH v6 00/16] s390: vfio-ccw dasd ipl support no-reply
2019-04-04 15:20 ` no-reply
2019-04-05 6:58 ` Thomas Huth
2019-04-05 6:58 ` Thomas Huth
2019-04-05 7:52 ` [Qemu-devel] [qemu-s390x] " Thomas Huth
2019-04-05 7:52 ` Thomas Huth
2019-04-05 13:11 ` Jason J. Herne
2019-04-05 13:11 ` Jason J. Herne
2019-04-05 13:26 ` Thomas Huth
2019-04-05 13:26 ` Thomas Huth
2019-04-05 13:36 ` Cornelia Huck
2019-04-05 13:36 ` Cornelia Huck
2019-04-05 13:43 ` Jason J. Herne
2019-04-05 13:43 ` Jason J. Herne
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1554388475-18329-1-git-send-email-jjherne@linux.ibm.com \
--to=jjherne@linux.ibm.com \
--cc=alifm@linux.ibm.com \
--cc=borntraeger@de.ibm.com \
--cc=cohuck@redhat.com \
--cc=pasic@linux.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).