[Bug 1866866] Re: [FFe] Please accept patches for secure guest feature
Dimitri John Ledkov
launchpad at surgut.co.uk
Thu Mar 19 13:42:11 UTC 2020
= Refactor =
The refactor commits, correct minor runtime/compiler warnings or have
no effect on the resulting build. I want to take them in, as
bugfixes, to keep the Ubuntu source matching the upstream as closely
as possible for future cherrypicks to not conflict.
11bdab2 include/boot/s390.h: add guard for `struct __vector128`
b06af60 README.md: remove useless empty line
2c10642 cpumf_helper: Avoid perl warning from pod2usage function
6fcf64e lib/util_file.h: fix typo in the macro guard
87b54fc CHANGELOG: Fix formatting
= HW Enablement =
This commits fall under HWE SRU exception, these expand cpumf tool to
display z15 specific counters & correctly report/trace fiber channel
endpoint security status.
They do not change behaviour on any existing hardware z13/z14
platforms. And improve behaviour on z15 hardware.
1086548 cpumf: Add IBM z15 extended counter defintion file
5d2871d cpumf/data: Add new deflate counters for IBM z15
fbf8513 zfcpdbf: print HBA FC Endpoint Security trace records
67496af zdev: Report FC Endpoint Security of zfcp devices
16b2799 zdev: Handle special case in if-case
c063273 zdev: Introduce read-only attributes
Bugfix
These are pure bugfixes to improve the `dbginfo` debug information
collection tool. Fix documentation for correct ways to enable/disable
secureboot (also requested in a separate ticket). And a bugfix to
correct potential buffer overflow in zipl-libc (i.e. common libc-like
functions which are used by the bootloader standalone code).
f742ed7 dbginfo: gather ethtool output for per-queue coalescing
4fa9656 dbginfo: collect softnet_stat
d415b8e dbginfo: Removed collection of /var/log/opencryptoki/
299fd2b zipl: fix zipl.conf man page example for secure boot
36fed0e zipl/libc: Indicate truncated lines in printf with '...'
f743002 zipl/libc: Replace sprintf with snprintf
8874b90 zipl/libc: Fix potential buffer overflow in printf
6fe9e6c zipl/libc: Introduce vsnprintf
PVM feature
These are the commits related to the new PVM feature. They consist of
creating a new userspace tool (genprotimg) as well as creating new
bootloader stages. To support building the new bootloader stages,
existing zipl bootloader stages have been refactored a little bit to
use common headers with defined constants (rather than just
hardcoding them). At the same time, the zipl-libc code has been
improve to be more strict with parsing / validating certain things.
The new zipl bootloader stages are only used for th PVM
feature. Despite the refactors, there does not appear to be any
behaviour changes of the existing zipl boot stages as used on
existing hardware configurations for regular zipl IPL. And regular
boot testing will be performed as part of the Focal to validate LPAR,
z/VM, KVM platforms with/without secureboot where applicable.
65b9fc4 genprotimg: introduce new tool for the creation of PV images
d2f8f97 genprotimg: add relocator for stage3b
2d60057 genprotimg: boot: use C pre-processor for linker script generation
3356d6f genprotimg: boot: initial bootloader support
67aef9b Consolidate `ALIGN, __ALIGN_MASK, ARRAY_SIZE` macros
e51663b zipl/libc: printf: print on linemode and ASCII console
f99560f zipl/sclp: add `sclp_print_ascii`
303a370 zipl/sclp: add macros for the control-program masks
a37170b zipl: refactor all EBCDIC code into separate files
305235a include/boot/s390.h: fixes for -Werror=sign-conversion
2568863 include/boot/s390.h: move panic and panic_notify to libc.h
b0f82d2 zipl/libc: include 's390.h'
b83c894 zipl: move s390.h to include/boot/s390.h
f454c68 zipl: remove libc.h include in s390.h
c55ceab Consolidate MIN and MAX macros
2e28291 zipl: make BLK_PWRT unsigned int
24fe8c1 zipl: move __always_inline/barrier/__pa32/pa to zt_common.h
67e76b8 zipl/s390.h: rename `inline` macro into `__always_inline`
97ab8fb zipl: move loaders layout definitions into separate header
c07104d zipl: use STAGE3_ENTRY for STAGE3_LOAD_ADDRESS
c871050 zipl: tape0: use constants defined in linux_layout.h
7e37a1d zipl: move Linux layout definitions into separate header
d884fb8 zipl/stage3: make IPL_DEVICE definition consistent with tape0.S
0e385a8 zipl: add SIGP_SET_ARCHITECTURE to sigp.h and use it
675c854 zipl: move SIGP related functions and definitions into separate header
9d39a4b zipl: move IPL related definitions into separate header
400167f Support `lib/zt_common.h` to be used in assembler and add `_AC` macro
cc16e41 zipl: use STATIC_ASSERT macro for no padding verification
bac3f93 lib/zt_common: add STATIC_ASSERT macro
9719709 zipl/boot: fix comment in stage3.lds
** Changed in: s390-tools (Ubuntu)
Status: Incomplete => New
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to s390-tools in Ubuntu.
https://bugs.launchpad.net/bugs/1866866
Title:
[FFe] Please accept patches for secure guest feature
Status in Ubuntu on IBM z Systems:
New
Status in linux package in Ubuntu:
Confirmed
Status in qemu package in Ubuntu:
New
Status in s390-tools package in Ubuntu:
New
Bug description:
The secure guest feature (aka protvirt) affects multiple components (kernel, qemu and s390-tools - see below).
While dedicated tickets for the different components exist since quite a while, the code arrived late and/or discussion to get it upstream accepted took longer than expected.
(Even if we as of today didn't reached the kernel freeze, I'm already adding kernel to this FFe.)
Since this is a very important feature the current IBM Z and LinuxONE
family, it's requested to be included into focal, the next LTS
release, to become exploitable by long running systems.
The code is largely architecture specific.
No brand new packages or new upstream version are requested, only the cherry-pick of commits (or PR) - so far everything is 'cherry-pick'-able.
kernel:
The patch set for the kernel is huge (30+ commits), but has only one common code patch (two files).
The arch specific patches landed in between in linux-next, the arch specific one is expected to land there very soon (hours/days from now). The common-code patch ran through several hands and landed in between in Andrew Morton's mmots tree.
A pre-screening of the code was done by the kernel team and it looked acceptable.
(dedicated kernel ticket: https://bugs.launchpad.net/bugs/1835531)
qemu:
The entire code seems to be arch specific.
Again a pre-screening of the maintainer lead to the fact that it should be acceptable, too.
(dedicated qemu ticket: https://bugs.launchpad.net/bugs/1835546)
s390-tools:
The entire tool only exists for the s390x architecture.
Hence obviously everything is arch specific on that.
(dedicated s390-tools ticket: https://bugs.launchpad.net/bugs/1834534)
Currently work is going on to test this function end to end based on Ubuntu components (means based on our s390-tools, qemu and kernel [focal master-next] trees).
On top I applied the patches to the packages as well and did manual test buids.
With that a potential regression can be considered as low - and even
in case of a regression, it will affect s390x only.
The patches are being staged for this feature in:
https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/3970
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-z-systems/+bug/1866866/+subscriptions
More information about the foundations-bugs
mailing list