On 23.02.2018 16:43, Collin L. Walling wrote: > --- [v9] --- > > - only set boot menu opts if a bootindex was specified on cmd > > - Menus for guests with an IPL device that chooses to use the SCSI scheme are > only enabled explicitly for -boot menu=on options (i.e. it will > appropriately > and cleanly ignore the zipl flag) > > --- [Summary] --- > > These patches implement a boot menu for ECKD DASD and SCSI guests on s390x. > The menu will only appear if the disk has been configured for IPL with the > zIPL tool and with the following QEMU command line options: > > -boot menu=on[,splash-time=X] and/or -machine loadparm='prompt' > > The following must be specified for the device to be IPL'd from: > > -device ...,bootindex=1 > > or via the following libvirt domain xml: > > <os> > <bootmenu enable='yes' timeout='X'/> > </os> > > or > > <disk> > ... > <boot order='1' loadparm='PROMPT'/> > </disk> > > Where X is some positive integer representing time in milliseconds. > > <boot order='1' ... > must be specified for the device to be IPL'd from > > A loadparm other than 'prompt' will disable the menu and just boot > the specified entry. > > If no boot options are specified, we will attempt to use the values > provided by zipl (ECKD DASD only). > > Collin L. Walling (13): > s390-ccw: refactor boot map table code > s390-ccw: refactor eckd_block_num to use CHS > s390-ccw: refactor IPL structs > s390-ccw: update libc > s390-ccw: move auxiliary IPL data to separate location > s390-ccw: parse and set boot menu options > s390-ccw: set up interactive boot menu parameters > s390-ccw: read stage2 boot loader data to find menu > s390-ccw: print zipl boot menu > s390-ccw: read user input for boot index via the SCLP console > s390-ccw: set cp_receive mask only when needed and consume pending > service irqs > s390-ccw: use zipl values when no boot menu options are present > s390-ccw: interactive boot menu for scsi > > hw/s390x/ipl.c | 76 +++++++++++++- > hw/s390x/ipl.h | 31 +++++- > pc-bios/s390-ccw/Makefile | 2 +- > pc-bios/s390-ccw/bootmap.c | 184 +++++++++++++++++++++++--------- > pc-bios/s390-ccw/bootmap.h | 91 ++++++++++------ > pc-bios/s390-ccw/iplb.h | 24 ++++- > pc-bios/s390-ccw/libc.c | 88 ++++++++++++++++ > pc-bios/s390-ccw/libc.h | 37 ++++++- > pc-bios/s390-ccw/main.c | 49 ++++++--- > pc-bios/s390-ccw/menu.c | 249 > ++++++++++++++++++++++++++++++++++++++++++++ > pc-bios/s390-ccw/s390-ccw.h | 10 ++ > pc-bios/s390-ccw/sclp.c | 39 ++++--- > pc-bios/s390-ccw/virtio.c | 2 +- > 13 files changed, 756 insertions(+), 126 deletions(-) > create mode 100644 pc-bios/s390-ccw/libc.c > create mode 100644 pc-bios/s390-ccw/menu.c >
Series looks good to me (the break nit in 13/13 notwithstanding). -- Regards, Viktor Mihajlovski