Message ID | 20220304062835.1429148-1-frank.heimes@canonical.com |
---|---|
Headers | show |
Series | Fix SIGP processing on KVM/s390 (LP: 1962578) | expand |
Sorry, but please NAK this submission, I found a some typos that I want to clean up. A v2 will follow soon ... On Fri, Mar 4, 2022 at 7:29 AM <frank.heimes@canonical.com> wrote: > BugLink: https://bugs.launchpad.net/bugs/1962578 > > SRU Justification: > > [Impact] > > * The SIGP processing on KVM/s390x is incorrect and not fully conformant to > the 'Principles of Operations', the IBM Z architecture definition > and documentation. > > * KVM: SIGP RESTART is reporting a CPU state 'stopped' after SIGP RESTART > was issued, while it should report a 'busy' condition until the CPU is > really started. > > * The fix for this consists of three patches: > 812de04661c4 "KVM: s390: Clarify SIGP orders versus STOP/RESTART" > 435d17955519 "KVM: s390: Add a routine for setting userspace CPU state" > 4563bcad46bf "KVM: s390: Simplify SIGP Set Arch handling" > whereas 812de04661c4 already landed via upstream stable, > hence only two are left and need to be cherry-picked: > > [Fix] > > * 67cf68b6a5ccac8bc7dfef0a220b59af4c83fd2c 67cf68b6a5cc "KVM: s390: Add a > routine for setting userspace CPU state" > > * 8eeba194a32e0f50329354a696baaa2e3d9accc5 8eeba194a32e "KVM: s390: > Simplify SIGP Set Arch handling" > > [Test Case] > > * Install an LPAR on IBM Z (z13+) or LinuxONE (Emperor / Rockhopper) > with Ubuntu Server 20.04 using kernel standard kernel 5.4. > > * Setup this LPAR as QEMU/KVM host and a focal VM as guest. > > * The test itself is the following unit test: > https://lore.kernel.org/r/20220303210425.1693486-1-farman@linux.ibm.com/ > > * The test and verification will be done by the IBM Z team. > > [Where problems could occur] > > <this is pretty high level and generic, anything more specific to add?> > > * A broken patch could harm KVM ioctl on s390x or the (virtual) CPU > state control in general. > > * The SIGP handing (on s390x) can become broken, which could lead to > incorrect (virtual) CPU states. > > * In worst case KVM can become broken on s390x entirely. > > * The modified code is all s390x specific QEMU/KVM code, > no common code is touched. > > [Other] > > * The two remaing patches are upstream since 5.16, > the first one already landed in 5.4 via upstream stable bug LP#1959701 > and in 5.13 via upstream stable bug LP#1960861. > > * The patches already landed in jammy (master-next) based on LP#1959735, > hence only SRU to impish and focal is needed. > > * This patches got discussed here: > > https://lore.kernel.org/all/20211008203112.1979843-2-farman@linux.ibm.com/ > > * This not only fixes the SIGP processing, but is also important in terms > of > long term maintainability. > > Eric Farman (2): > KVM: s390: Simplify SIGP Set Arch handling > KVM: s390: Add a routine for setting userspace CPU state > > arch/s390/kvm/kvm-s390.c | 6 +++--- > arch/s390/kvm/kvm-s390.h | 9 +++++++++ > arch/s390/kvm/sigp.c | 14 +------------- > 3 files changed, 13 insertions(+), 16 deletions(-) > > -- > 2.25.1 > > > -- > kernel-team mailing list > kernel-team@lists.ubuntu.com > https://lists.ubuntu.com/mailman/listinfo/kernel-team >