[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] be3911: s390x/cpumodel: Add missing visit_fre
From: |
Peter Maydell |
Subject: |
[Qemu-commits] [qemu/qemu] be3911: s390x/cpumodel: Add missing visit_free |
Date: |
Tue, 22 Oct 2019 06:51:57 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: be39110d4cbf82bd4f9154d9958cd0a1aea57633
https://github.com/qemu/qemu/commit/be39110d4cbf82bd4f9154d9958cd0a1aea57633
Author: Andrew Jones <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/cpu_models.c
Log Message:
-----------
s390x/cpumodel: Add missing visit_free
Beata Michalska noticed this missing visit_free() while reviewing
arm's implementation of qmp_query_cpu_model_expansion(), which is
modeled off this s390x implementation.
Signed-off-by: Andrew Jones <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 8064af6b1dac60491df611e5c49199d2e1c368c4
https://github.com/qemu/qemu/commit/8064af6b1dac60491df611e5c49199d2e1c368c4
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/mmu_helper.c
Log Message:
-----------
s390x/mmu: Remove duplicate check for MMU_DATA_STORE
No need to double-check if we have a write.
Found by Coverity (CID: 1406404).
Fixes: 31b59419069e ("target/s390x: Return exception from mmu_translate_real")
Cc: Peter Maydell <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 49a7ce4e030a24c092c82076e23473ae9226fca9
https://github.com/qemu/qemu/commit/49a7ce4e030a24c092c82076e23473ae9226fca9
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/vec_int_helper.c
Log Message:
-----------
s390x/tcg: Fix VECTOR MULTIPLY LOGICAL ODD
We have to read from odd offsets.
Fixes: 2bf3ee38f1f8 ("s390x/tcg: Implement VECTOR MULTIPLY *")
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 8b952519478780ac26779018d3d7e9bf930d055a
https://github.com/qemu/qemu/commit/8b952519478780ac26779018d3d7e9bf930d055a
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/vec_int_helper.c
Log Message:
-----------
s390x/tcg: Fix VECTOR MULTIPLY AND ADD *
We missed that we always read a "double-wide even-odd element
pair of the fourth operand". Fix it in all four variants.
Fixes: 1b430aec4157 ("s390x/tcg: Implement VECTOR MULTIPLY AND ADD *")
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: b57b336876d08e303d5957d05bae77508ed0e4a2
https://github.com/qemu/qemu/commit/b57b336876d08e303d5957d05bae77508ed0e4a2
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/vec_int_helper.c
Log Message:
-----------
s390x/tcg: Fix VECTOR SHIFT RIGHT ARITHMETIC BY BYTE
We forgot to propagate the highest bit accross the high doubleword in
two cases (shift >=64).
Fixes: 5f724887e3dd ("s390x/tcg: Implement VECTOR SHIFT RIGHT ARITHMETIC")
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 23e797749fff754b8a136ee37607c6448b06cfca
https://github.com/qemu/qemu/commit/23e797749fff754b8a136ee37607c6448b06cfca
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/translate_vx.inc.c
M target/s390x/vec_int_helper.c
Log Message:
-----------
s390x/tcg: Fix VECTOR SUBTRACT COMPUTE BORROW INDICATION
Looks like my idea of what a "borrow" is was wrong. The PoP says:
"If the resulting subtraction results in a carry out of bit zero, a value
of one is placed in the corresponding element of the first operand;
otherwise, a value of zero is placed in the corresponding element"
As clarified by Richard, all we have to do is invert the result.
Fixes: 1ee2d7ba72f6 ("s390x/tcg: Implement VECTOR SUBTRACT COMPUTE BORROW
INDICATION")
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 2cb8a68d375450ab7be372d90e2ddf5a2a832cdc
https://github.com/qemu/qemu/commit/2cb8a68d375450ab7be372d90e2ddf5a2a832cdc
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/translate_vx.inc.c
Log Message:
-----------
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION
Testing this, there seems to be something messed up. We are dealing with
unsigned numbers. "Each operand is treated as an unsigned binary integer."
Let's just implement as written in the PoP:
"A subtraction is performed by adding the contents of
the second operand with the bitwise complement of
the third operand along with a borrow indication from
the rightmost bit position of the fourth operand and
the result is placed in the first operand."
We can reuse gen_ac2_i64().
Fixes: 48390a7c2716 ("s390x/tcg: Implement VECTOR SUBTRACT WITH BORROW
INDICATION")
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: 38ad4fa3de4a0e747940711f16028fc509a4a6b6
https://github.com/qemu/qemu/commit/38ad4fa3de4a0e747940711f16028fc509a4a6b6
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/translate_vx.inc.c
Log Message:
-----------
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW COMPUTE BORROW INDICATION
The numbers are unsigned, the computation is wrong. "Each operand is
treated as an unsigned binary integer".
Let's implement as given in the PoP:
"A subtraction is performed by adding the contents of the second operand
with the bitwise complement of the third operand along with a borrow
indication from the rightmost bit of the fourth operand."
Reuse gen_accc2_i64().
Fixes: bc725e65152c ("s390x/tcg: Implement VECTOR SUBTRACT WITH BORROW COMPUTE
BORROW INDICATION")
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: de60a92ea7b7977854420c58fd98f38cb6de6de6
https://github.com/qemu/qemu/commit/de60a92ea7b7977854420c58fd98f38cb6de6de6
Author: David Hildenbrand <address@hidden>
Date: 2019-10-21 (Mon, 21 Oct 2019)
Changed paths:
M target/s390x/kvm.c
Log Message:
-----------
s390x/kvm: Set default cpu model for all machine classes
We have to set the default model of all machine classes, not just for
the active one. Otherwise, "query-machines" will indicate the wrong
CPU model ("qemu-s390x-cpu" instead of "host-s390x-cpu") as
"default-cpu-type".
Doing a
{"execute":"query-machines"}
under KVM now results in
{"return": [
{
"hotpluggable-cpus": true,
"name": "s390-ccw-virtio-4.0",
"numa-mem-supported": false,
"default-cpu-type": "host-s390x-cpu",
"cpu-max": 248,
"deprecated": false},
{
"hotpluggable-cpus": true,
"name": "s390-ccw-virtio-2.7",
"numa-mem-supported": false,
"default-cpu-type": "host-s390x-cpu",
"cpu-max": 248,
"deprecated": false
} ...
Libvirt probes all machines via "-machine none,accel=kvm:tcg" and will
currently see the wrong CPU model under KVM.
Reported-by: Jiri Denemark <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Fixes: b6805e127c6b ("s390x: use generic cpu_model parsing")
Cc: Igor Mammedov <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
Commit: f9bec781379dd7ccf9d01b4b6a79a9ec82c192e5
https://github.com/qemu/qemu/commit/f9bec781379dd7ccf9d01b4b6a79a9ec82c192e5
Author: Peter Maydell <address@hidden>
Date: 2019-10-22 (Tue, 22 Oct 2019)
Changed paths:
M target/s390x/cpu_models.c
M target/s390x/kvm.c
M target/s390x/mmu_helper.c
M target/s390x/translate_vx.inc.c
M target/s390x/vec_int_helper.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20191022' into staging
s390x fixes in tcg vector instruction handling and in the
cpu model code
# gpg: Signature made Tue 22 Oct 2019 10:51:07 BST
# gpg: using RSA key C3D0D66DC3624FF6A8C018CEDECF6B93C6F02FAF
# gpg: issuer "address@hidden"
# gpg: Good signature from "Cornelia Huck <address@hidden>" [unknown]
# gpg: aka "Cornelia Huck <address@hidden>" [full]
# gpg: aka "Cornelia Huck <address@hidden>" [full]
# gpg: aka "Cornelia Huck <address@hidden>" [unknown]
# gpg: aka "Cornelia Huck <address@hidden>" [unknown]
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0 18CE DECF 6B93 C6F0 2FAF
* remotes/cohuck/tags/s390x-20191022:
s390x/kvm: Set default cpu model for all machine classes
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW COMPUTE BORROW INDICATION
s390x/tcg: Fix VECTOR SUBTRACT WITH BORROW INDICATION
s390x/tcg: Fix VECTOR SUBTRACT COMPUTE BORROW INDICATION
s390x/tcg: Fix VECTOR SHIFT RIGHT ARITHMETIC BY BYTE
s390x/tcg: Fix VECTOR MULTIPLY AND ADD *
s390x/tcg: Fix VECTOR MULTIPLY LOGICAL ODD
s390x/mmu: Remove duplicate check for MMU_DATA_STORE
s390x/cpumodel: Add missing visit_free
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/2152e740a893...f9bec781379d
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] be3911: s390x/cpumodel: Add missing visit_free,
Peter Maydell <=