That a reasonable test with a good coverage - thx for that! -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1902179
Title: [20.04 FEAT] Support/enhancement of NVMe IPL Status in Ubuntu on IBM z Systems: In Progress Status in linux package in Ubuntu: In Progress Status in s390-tools package in Ubuntu: Fix Released Status in linux source package in Focal: Fix Committed Status in s390-tools source package in Focal: New Status in linux source package in Groovy: Fix Committed Status in s390-tools source package in Groovy: Fix Released Status in linux source package in Hirsute: In Progress Status in s390-tools source package in Hirsute: Fix Released Bug description: SRU Justification: (focal) ================== [Impact] * The base for being able to IPL (boot) NVMe devices on s390x was introduced with kernel 5.8. * This got now requested (for hardware enablement reasons) for Ubuntu 20.04 LTS as well. * On top a brand new commit got upstream accepted that introduces support for NVMe IPL kernel parameters, which is not yet in groovy. [Fix] * cherry pick of commit 3737e8ee4f2fc7e77994d1a8bd618a9dda5a5514 3737e8ee4f2f "s390: nvme ipl" * cherry pick of commit 23a457b8d57dc8d0cc1dbd1882993dd2fcc4b0c0 23a457b8d57d "s390: nvme reipl" does not apply cleanly, hence the following backport: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902179/+attachment/5430310/+files/0002-s390-nvme-reipl.patch * cherry pick of commit d9f12e48d08ec08ace574050a838e001e442ee38 d9f12e48d08e "s390/ipl: support NVMe IPL kernel parameters" [Test Case] * IBM z15 or LinuxONE III hardware is needed with an NVMe device attached to a LPAR. * Install the patched kernel on focal/20.04 installation and make sure that zipl re-ran (the patched version of zipl with the s390-tools commit mentioned in this LP bug - or take the s390-tools version for groovy for testing purposes). * If everything is in place (means patched kernel, as well as patched s390-tools/zipl) an installation from scratch on an NVMe devices should be possible - in case everything needed landed on an updated image. With the 20.04.2 image that should be the case. [Regression Potential] * There is a certain regression risk with these patches, because: * the 'zipl' (s390x-specific) boot-loader is touched * if something is wrong there, in worst-case systems where the modified zipl ran may no longer be bootable! * The modifications are targetted towards nvme devices ('blkext' driver), but they are closely related to zFCP devices and share some code parts, * hence in worst case they could have an impact on zFCP devices, too. * But this is very unlikely, since a (largely) separate IPL type 'nvme' got introduced and NVMe ipl is handled in separate case statements and functions. * The patches are all upstream accepted (the first two with 5.8, that last with v5.10-rc1, hence the latter one is as of today in linux- next). * A patched focal kernel was build and shared for further testing. I did some regression testing with the patched kernel on non-NVMe systems - the NVMe based tests need to be done by IBM (due to the lack of hardware). * All modifications are limited to the s390x architecture and there again to the unique way of booting aka IPL (arch/s390/include/asm/ipl.h, arch/s390/include/uapi/asm/ipl.h, arch/s390/kernel/ipl.c and arch/s390/boot/ipl_parm.c). [Other] * The general NVMe ipl (boot) functionality in given with 3737e8ee4f2f "s390: nvme ipl" and 23a457b8d57d "s390: nvme reipl" and is already proven to work with groovy. * New for groovy AND focal is only "s390/ipl: support NVMe IPL kernel parameters". * The entire set of commits/patches is only new for focal. * The SRU for SRUing "s390/ipl: support NVMe IPL kernel parameters" to groovy/20.10 was handled by a separate request. _________________________ SRU Justification: (groovy) ================== [Impact] * The basics for being able to IPL (boot) from NVMe devices on s390x were introduced with kernel 5.8. * This was tested and is proven to work with groovy. * Now a patch was requested to be added to groovy that introduces support for NVMe IPL kernel parameters. [Fix] * d9f12e48d08ec08ace574050a838e001e442ee38 d9f12e48d08e "s390/ipl: support NVMe IPL kernel parameters" [Test Case] * IBM z15 or LinuxONE III hardware is needed with an NVMe device attached to a LPAR. * Just check if NVMe kernel parameters can be passed over. * Due to the lack of hardware this test needs to be done by IBM. [Regression Potential] * There is a certain regression risk with this patch, since: * The handling of 'scpdata' is changed, and with that the way how kernel cmd-line parameters are extracted from the NVMe IPL block, that is passed by the firmware to the kernel at boot time. * If broken such a hand over will not work for NVMe anymore - which wouldn't be a very big problem for now, since booting w/o still works fine (as it does today). * But in worst case it could break the hand over of cmd-line parameters for FCP devices, since some code is shared or even harm ipl in general. * The patch is upstream accepted (with v5.10-rc1 - as of today in linux-next) and a patched groovy kernel was build and shared for further testing. * All modifications are limited to the s390x architecture and there again to the unique way of booting aka IPL (s390/boot/ipl*). [Other] * This is in preparation for getting IPL (boot) from NVMe device support on s390x backported to focal (for hardware enablement reasons). * Without having this patch in groovy, one may face a regression during upgrade from groovy to focal. * Since it's planned to have the hirsute kernel on 5.1x, it will have this patch sooner or later. * However, since the today's hirsute kernel is just based on groovy, I've added hirsute to the SRU. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-z-systems/+bug/1902179/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp