Bug 2111994
Summary: | RHEL9: skey test in kvm_unit_test got failed | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 9 | Reporter: | bfu <bfu> |
Component: | qemu-kvm | Assignee: | Thomas Huth <thuth> |
qemu-kvm sub component: | General | QA Contact: | bfu <bfu> |
Status: | CLOSED ERRATA | Docs Contact: | |
Severity: | medium | ||
Priority: | medium | CC: | cohuck, coli, dgilbert, hannsj_uhl, jinzhao, juzhang, knoel, lijin, pbonzini, ribarry, smitterl, stefanha, thuth, vgoyal, virt-maint, virt-qe-z, yiwei |
Version: | 9.1 | Keywords: | Regression, Triaged |
Target Milestone: | rc | ||
Target Release: | 9.1 | ||
Hardware: | s390x | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | qemu-kvm-7.0.0-10.el9 | Doc Type: | No Doc Update |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2022-11-15 09:54:42 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
bfu
2022-07-28 14:53:57 UTC
The "skey" test is even failing for me when I use upstream kernel 5.19.0-rc7 and QEMU 7.1-rc0 ... Claudio, could you maybe have a look at this since you've merged the last changes to the skey test in the kvm-unit-test suite? (In reply to Thomas Huth from comment #1) > The "skey" test is even failing for me when I use upstream kernel 5.19.0-rc7 > and QEMU 7.1-rc0 ... My bad, I was accidentally running the test with TCG - it works fine with upstream when using KVM. I think we're likely missing this in QEMU: https://git.qemu.org/?p=qemu.git;a=commitdiff;h=54354861d21b69ec0781 "target/s390x: kvm: Honor storage keys during emulation" Test result: (4/4) L1_kvm_unit_tests.Host_RHEL.m9.u1.v0.nographic.qcow2.virtio_scsi.up.virtio_net.Guest.RHEL.9.1.0.s390x.io-github-autotest-qemu.ansible_test.s390-virtio: PASS (323.67 s) [stdout] BUILD_HEAD=7362976d [stdout] timeout -k 1s --foreground 90s /usr/libexec/qemu-kvm -nodefaults -nographic -machine s390-ccw-virtio,accel=kvm -chardev stdio,id=con0 -device sclpconsole,chardev=con0 -kernel /tmp/tmp.jHigGmOzTm -smp 1 -device virtio-net-ccw # -initrd /tmp/tmp.70inHpK1iB [stdout] PASS: skey: privileged: sske: Program interrupt: expected(2) == received(2) [stdout] PASS: skey: privileged: skey did not change on exception [stdout] PASS: skey: privileged: iske: Program interrupt: expected(2) == received(2) [stdout] PASS: skey: invalid address: sske: Program interrupt: expected(5) == received(5) [stdout] PASS: skey: invalid address: iske: Program interrupt: expected(5) == received(5) [stdout] PASS: skey: invalid address: rrbe: Program interrupt: expected(5) == received(5) [stdout] PASS: skey: set key test [stdout] PASS: skey: multi block [stdout] PASS: skey: chg bit test [stdout] PASS: skey: TPROT: zero key: no protection [stdout] PASS: skey: TPROT: matching key: no protection [stdout] PASS: skey: TPROT: mismatching key: no fetch protection: store protection [stdout] PASS: skey: TPROT: mismatching key: fetch protection: fetch & store protection [stdout] PASS: skey: TPROT: mismatching key: fetch-protection override: disabled: fetch & store protection [stdout] PASS: skey: TPROT: mismatching key: fetch-protection override: enabled: store protection [stdout] PASS: skey: TPROT: mismatching key: fetch-protection override: invalid: fetch & store protection [stdout] PASS: skey: TPROT: mismatching key: storage-protection override: no protection [stdout] PASS: skey: STORE CPU ADDRESS: zero key: store occurred [stdout] PASS: skey: STORE CPU ADDRESS: matching key: store occurred [stdout] PASS: skey: STORE CPU ADDRESS: mismatching key: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: STORE CPU ADDRESS: mismatching key: TEID: valid access code [stdout] PASS: skey: STORE CPU ADDRESS: mismatching key: TEID: valid protection code [stdout] PASS: skey: STORE CPU ADDRESS: mismatching key: no store occurred [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override, invalid key: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override, invalid key: TEID: valid access code [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override, invalid key: TEID: valid protection code [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override, invalid key: no store occurred [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override, override key: override occurred [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override disabled, override key: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override disabled, override key: TEID: valid access code [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override disabled, override key: TEID: valid protection code [stdout] PASS: skey: STORE CPU ADDRESS: storage-protection override disabled, override key: no store occurred [stdout] PASS: skey: DIAG 308: no exception on fetch, response: invalid IPIB [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: zero key: Performed store-channel-subsystem-characteristics [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: matching key: Performed store-channel-subsystem-characteristics [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: no fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: no fetch protection: TEID: valid access code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: no fetch protection: TEID: valid protection code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: fetch protection: TEID: valid access code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: fetch protection: TEID: valid protection code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override, invalid key: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override, invalid key: TEID: valid access code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override, invalid key: TEID: valid protection code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override, override key: Performed store-channel-subsystem-characteristics [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override disabled, override key: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override disabled, override key: TEID: valid access code [stdout] PASS: skey: CHANNEL SUBSYSTEM CALL: mismatching key: storage-protection override disabled, override key: TEID: valid protection code [stdout] PASS: skey: SET PREFIX: zero key: set prefix [stdout] PASS: skey: SET PREFIX: matching key: set prefix [stdout] PASS: skey: SET PREFIX: mismatching key: no fetch protection: set prefix [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection: TEID: valid access code [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection: TEID: valid protection code [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection: did not set prefix [stdout] PASS: skey: SET PREFIX: mismatching key: remapped page, fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: SET PREFIX: mismatching key: remapped page, fetch protection: TEID: valid access code [stdout] PASS: skey: SET PREFIX: mismatching key: remapped page, fetch protection: TEID: valid protection code [stdout] PASS: skey: SET PREFIX: mismatching key: remapped page, fetch protection: did not set prefix [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection override applies: set prefix [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection override does not apply: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection override does not apply: TEID: valid access code [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection override does not apply: TEID: valid protection code [stdout] PASS: skey: SET PREFIX: mismatching key: fetch protection override does not apply: did not set prefix [stdout] INFO: skey: MSCH: Found subchannel 00010000 [stdout] INFO: skey: MSCH: Tested subchannels: 1, I/O subchannels: 1, I/O devices: 1 [stdout] PASS: skey: MSCH: zero key: fetched from SCHIB [stdout] PASS: skey: MSCH: matching key: fetched from SCHIB [stdout] PASS: skey: MSCH: mismatching key: no fetch protection: fetched from SCHIB [stdout] PASS: skey: MSCH: mismatching key: fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: MSCH: mismatching key: fetch protection: TEID: valid access code [stdout] PASS: skey: MSCH: mismatching key: fetch protection: TEID: valid protection code [stdout] PASS: skey: MSCH: mismatching key: fetch protection: did not modify subchannel [stdout] PASS: skey: MSCH: mismatching key: remapped page, fetch protection: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: MSCH: mismatching key: remapped page, fetch protection: TEID: valid access code [stdout] PASS: skey: MSCH: mismatching key: remapped page, fetch protection: TEID: valid protection code [stdout] PASS: skey: MSCH: mismatching key: remapped page, fetch protection: did not modify subchannel [stdout] PASS: skey: MSCH: mismatching key: fetch-protection override applies: fetched from SCHIB [stdout] PASS: skey: MSCH: mismatching key: fetch-protection override does not apply: Program interrupt: expected(4) == received(4) [stdout] PASS: skey: MSCH: mismatching key: fetch-protection override does not apply: TEID: valid access code [stdout] PASS: skey: MSCH: mismatching key: fetch-protection override does not apply: TEID: valid protection code [stdout] PASS: skey: MSCH: mismatching key: fetch-protection override does not apply: did not modify subchannel [stdout] SUMMARY: 80 tests [stdout] [stdout] EXIT: STATUS=1 [stdout] [32mPASS[0m skey (80 tests) [stderr] qemu-kvm: warning: nic virtio-net-ccw.0 has no peer As the test result, set this bz to verified Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: qemu-kvm security, bug fix, and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2022:7967 |