[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 2df59b: s390x/css: fix PMCW invalid mask
From: |
Peter Maydell |
Subject: |
[Qemu-commits] [qemu/qemu] 2df59b: s390x/css: fix PMCW invalid mask |
Date: |
Wed, 19 Jan 2022 10:46:25 -0800 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 2df59b73e0864f021f6179f32f7ed364f6d4f38d
https://github.com/qemu/qemu/commit/2df59b73e0864f021f6179f32f7ed364f6d4f38d
Author: Nico Boehr <nrb@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M include/hw/s390x/ioinst.h
Log Message:
-----------
s390x/css: fix PMCW invalid mask
Previously, we required bits 5, 6 and 7 to be zero (0x07 == 0b111). But,
as per the principles of operation, bit 5 is ignored in MSCH and bits 0,
1, 6 and 7 need to be zero.
As both PMCW_FLAGS_MASK_INVALID and ioinst_schib_valid() are only used
by ioinst_handle_msch(), adjust the mask accordingly.
Fixes: db1c8f53bfb1 ("s390: Channel I/O basic definitions.")
Signed-off-by: Nico Boehr <nrb@linux.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20211216131657.1057978-1-nrb@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 521130f267240cb1ed8fd4635496493a153281db
https://github.com/qemu/qemu/commit/521130f267240cb1ed8fd4635496493a153281db
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M target/s390x/tcg/insn-data.def
Log Message:
-----------
target/s390x: Fix SLDA sign bit index
SLDA operates on 64-bit values, so its sign bit index should be 63,
not 31.
Fixes: a79ba3398a0a ("target-s390: Convert SHIFT DOUBLE")
Reported-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20220112165016.226996-2-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 57556b28afde4b039bb12bfc274bd8df9022d946
https://github.com/qemu/qemu/commit/57556b28afde4b039bb12bfc274bd8df9022d946
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M target/s390x/tcg/translate.c
Log Message:
-----------
target/s390x: Fix SRDA CC calculation
SRDA uses r1_D32 for binding the first operand and s64 for setting CC.
cout_s64() relies on o->out being the shift result, however,
wout_r1_D32() clobbers it.
Fix by using a temporary.
Fixes: a79ba3398a0a ("target-s390: Convert SHIFT DOUBLE")
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20220112165016.226996-3-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: df103c09bc2f549d36ba6313a69c18fc003ef1ee
https://github.com/qemu/qemu/commit/df103c09bc2f549d36ba6313a69c18fc003ef1ee
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M target/s390x/tcg/cc_helper.c
Log Message:
-----------
target/s390x: Fix cc_calc_sla_64() missing overflows
An overflow occurs for SLAG when at least one shifted bit is not equal
to sign bit. Therefore, we need to check that `shift + 1` bits are
neither all 0s nor all 1s. The current code checks only `shift` bits,
missing some overflows.
Fixes: cbe24bfa91d2 ("target-s390: Convert SHIFT, ROTATE SINGLE")
Co-developed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20220112165016.226996-4-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 6da170beda33f3e7f1d9242814acd9f428f0f0fb
https://github.com/qemu/qemu/commit/6da170beda33f3e7f1d9242814acd9f428f0f0fb
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M target/s390x/cpu-dump.c
M target/s390x/s390x-internal.h
M target/s390x/tcg/cc_helper.c
M target/s390x/tcg/insn-data.def
M target/s390x/tcg/translate.c
Log Message:
-----------
target/s390x: Fix shifting 32-bit values for more than 31 bits
According to PoP, both 32- and 64-bit shifts use lowest 6 address
bits. The current code special-cases 32-bit shifts to use only 5 bits,
which is not correct. For example, shifting by 32 bits currently
preserves the initial value, however, it's supposed zero it out
instead.
Fix by merging sh32 and sh64 and adapting CC calculation to shift
values greater than 31.
Fixes: cbe24bfa91d2 ("target-s390: Convert SHIFT, ROTATE SINGLE")
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Message-Id: <20220112165016.226996-5-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: f7cff0738d1bc66b530a6c200874eb86575048f4
https://github.com/qemu/qemu/commit/f7cff0738d1bc66b530a6c200874eb86575048f4
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2022-01-17 (Mon, 17 Jan 2022)
Changed paths:
M tests/tcg/s390x/Makefile.target
A tests/tcg/s390x/shift.c
Log Message:
-----------
tests/tcg/s390x: Test shift instructions
Add a test for each shift instruction in order to to prevent
regressions.
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Acked-by: David Hildenbrand <david@redhat.com>
Message-Id: <20220112165016.226996-6-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 56e34834029c7c6862cb0095d95ad83c50485f88
https://github.com/qemu/qemu/commit/56e34834029c7c6862cb0095d95ad83c50485f88
Author: Cornelia Huck <cohuck@redhat.com>
Date: 2022-01-18 (Tue, 18 Jan 2022)
Changed paths:
M MAINTAINERS
Log Message:
-----------
MAINTAINERS: split out s390x sections
Split out some more specialized devices etc., so that we can build
smarter lists of people to be put on cc: in the future.
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: David Hildenbrand <david@redhat.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Acked-by: Halil Pasic <pasic@linux.ibm.com>
Acked-by: Eric Farman <farman@linux.ibm.com>
Message-Id: <20211222105548.356852-1-cohuck@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 6a6d3dfd6ed57d624dbbef116c8328d70d49130f
https://github.com/qemu/qemu/commit/6a6d3dfd6ed57d624dbbef116c8328d70d49130f
Author: Eric Farman <farman@linux.ibm.com>
Date: 2022-01-18 (Tue, 18 Jan 2022)
Changed paths:
M MAINTAINERS
Log Message:
-----------
MAINTAINERS: Add myself to s390 I/O areas
After the recent restructuring, I'd like to volunteer to help
in some of the s390 I/O areas.
Built on "[PATCH RFC v2] MAINTAINERS: split out s390x sections"
Signed-off-by: Eric Farman <farman@linux.ibm.com>
Acked-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Acked-by: Halil Pasic <pasic@linux.ibm.com>
Message-Id: <20220112164044.2210508-1-farman@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: b2173046a64beed76715f310f98538f159276af1
https://github.com/qemu/qemu/commit/b2173046a64beed76715f310f98538f159276af1
Author: Marc Hartmayer <mhartmay@linux.ibm.com>
Date: 2022-01-18 (Tue, 18 Jan 2022)
Changed paths:
M hw/s390x/ipl.c
Log Message:
-----------
s390x/ipl: support extended kernel command line size
In the past s390 used a fixed command line length of 896 bytes. This has changed
with the Linux commit 5ecb2da660ab ("s390: support command lines longer than 896
bytes"). There is now a parm area indicating the maximum command line size. This
parm area has always been initialized to zero, so with older kernels this field
would read zero and we must then assume that only 896 bytes are available.
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Viktor Mihajlovski <mihajlov@de.ibm.com>
Message-Id: <20211122112909.18138-1-mhartmay@linux.ibm.com>
[thuth: Cosmetic fixes, and use PRIu64 instead of %lu]
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 59b9b5186e44a90088a91ed7a7493b03027e4f1f
https://github.com/qemu/qemu/commit/59b9b5186e44a90088a91ed7a7493b03027e4f1f
Author: Eric Farman <farman@linux.ibm.com>
Date: 2022-01-18 (Tue, 18 Jan 2022)
Changed paths:
M target/s390x/sigp.c
Log Message:
-----------
s390x: sigp: Reorder the SIGP STOP code
Let's wait to mark the VCPU STOPPED until the possible
STORE STATUS operation is completed, so that we know the
CPU is fully stopped and done doing anything. (When we
also clear the possible sigp_order field for STOP orders.)
Suggested-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Eric Farman <farman@linux.ibm.com>
Message-Id: <20211213210919.856693-2-farman@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 5e0214cdeee17de949f2565f4429c15173179ae3
https://github.com/qemu/qemu/commit/5e0214cdeee17de949f2565f4429c15173179ae3
Author: Peter Maydell <peter.maydell@linaro.org>
Date: 2022-01-19 (Wed, 19 Jan 2022)
Changed paths:
M MAINTAINERS
M hw/s390x/ipl.c
M include/hw/s390x/ioinst.h
M target/s390x/cpu-dump.c
M target/s390x/s390x-internal.h
M target/s390x/sigp.c
M target/s390x/tcg/cc_helper.c
M target/s390x/tcg/insn-data.def
M target/s390x/tcg/translate.c
M tests/tcg/s390x/Makefile.target
A tests/tcg/s390x/shift.c
Log Message:
-----------
Merge remote-tracking branch
'remotes/thuth-gitlab/tags/pull-request-2022-01-19' into staging
* Fix bits in one of the PMCW channel subsystem masks
* s390x TCG shift instruction fixes
* Re-organization for the MAINTAINERS file
* Support for extended length of kernel command lines
* Re-order the SIGP STOP code
# gpg: Signature made Wed 19 Jan 2022 08:26:01 GMT
# gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg: issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full]
# gpg: aka "Thomas Huth <thuth@redhat.com>" [full]
# gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full]
# gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5
* remotes/thuth-gitlab/tags/pull-request-2022-01-19:
s390x: sigp: Reorder the SIGP STOP code
s390x/ipl: support extended kernel command line size
MAINTAINERS: Add myself to s390 I/O areas
MAINTAINERS: split out s390x sections
tests/tcg/s390x: Test shift instructions
target/s390x: Fix shifting 32-bit values for more than 31 bits
target/s390x: Fix cc_calc_sla_64() missing overflows
target/s390x: Fix SRDA CC calculation
target/s390x: Fix SLDA sign bit index
s390x/css: fix PMCW invalid mask
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Compare: https://github.com/qemu/qemu/compare/3d228a741acc...5e0214cdeee1