[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support
From: |
Cornelia Huck |
Subject: |
Re: [qemu-s390x] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support |
Date: |
Mon, 11 Mar 2019 18:33:41 +0100 |
On Mon, 11 Mar 2019 11:21:18 -0400
"Jason J. Herne" <address@hidden> wrote:
> 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.
>
> *********************
> NOTE: Newer DASD units which initially present as control unit type 3990 may
> in
> fact really be 2107. Some operating systems may enable 2107 features for these
> devices thereby making sense id return a control unit type of 2107. I've added
> support for control unit type 2107 so we can ipl from these devices.
> *********************
Ugh. I'd have hoped that would have been recognized as A Bad Idea the
last time we had a design like that...
Does that cu type switch persist over subchannel enable/disable?
Subsystem reset?
>
> Changelog
> ==========
> v4
> 01/16: s390 vfio-ccw: Add bootindex property and IPLB data
> - Adding CCW_DEVTYPE_VIRTIO_NET type.
> - s390_get_ccw_device can now accept a NULL devtype argument
> - Other minor refactors
>
> 06/16: s390-bios: Clean up cio.h
> - Remove whitespace changes to cmd_orb struct
>
> 07/16: s390-bios: Decouple channel i/o logic from virtio
> - Fix copyright line
>
> 08/16: s390-bios: Map low core memory
> - Remove Lowcore entries >= 0x200
> - Repositioned const keywords
>
> 09/16: s390-bios: ptr2u32 and u32toptr
> - Add assert to ensure pointer being converted to u32 is below 32 bits in
> length
> - Add missing copyright comment
>
> 10/16: s390-bios: Support for running format-0/1 channel programs
> - basic_sense now calls __do_cio instead of do_cio. Further protection from
> infinite recursion.
> - __do_cio now asks for retry for subchannel busy case.
> - Minor fixups to comments and message wording
> - start.S: Formating and register naming cleanups
> - Added CU_TYPE_DASD_2107
>
> 11/16: s390-bios: cio error handling
> - Only print sense data when it is provided
>
> 15/16:
> - Added support for CU_TYPE_DASD_2107
>
> 16/16:
> - Merged with various earlier patches
>
> Jason J. Herne (15):
> 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: Extend find_dev() for non-virtio devices
> s390-bios: Factor finding boot device out of virtio code path
> 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: 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
>
> 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 | 250 +++++++++++++++++++++++++
> 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 | 161 ++++++++++------
> 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 | 73 ++------
> tests/boot-serial-test.c | 2 +-
> 22 files changed, 1425 insertions(+), 196 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
>
- [qemu-s390x] [PATCH v4 01/15] s390 vfio-ccw: Add bootindex property and IPLB data, (continued)
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11
- Re: [qemu-s390x] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support,
Cornelia Huck <=
- Re: [qemu-s390x] [Qemu-devel] [PATCH v4 00/15] s390: vfio-ccw dasd ipl support, no-reply, 2019/03/11