Branch: refs/heads/staging-8.1 Home: https://github.com/qemu/qemu Commit: c95e38d33beb9e6a5563a951e3087ea5360ee598 https://github.com/qemu/qemu/commit/c95e38d33beb9e6a5563a951e3087ea5360ee598 Author: Michael Tokarev <m...@tls.msk.ru> Date: 2023-12-22 (Fri, 22 Dec 2023)
Changed paths: M VERSION Log Message: ----------- Update version for 8.1.4 release Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: b769a8e472be68215ba6431f6e91d4bf8f537ff4 https://github.com/qemu/qemu/commit/b769a8e472be68215ba6431f6e91d4bf8f537ff4 Author: Kevin Wolf <kw...@redhat.com> Date: 2023-12-22 (Fri, 22 Dec 2023) Changed paths: M block/snapshot.c Log Message: ----------- block: Fix crash when loading snapshot on inactive node bdrv_is_read_only() only checks if the node is configured to be read-only eventually, but even if it returns false, writing to the node may not be permitted at the moment (because it's inactive). bdrv_is_writable() checks that the node can be written to right now, and this is what the snapshot operations really need. Change bdrv_can_snapshot() to use bdrv_is_writable() to fix crashes like the following: $ ./qemu-system-x86_64 -hda /tmp/test.qcow2 -loadvm foo -incoming defer qemu-system-x86_64: ../block/io.c:1990: int bdrv_co_write_req_prepare(BdrvChild *, int64_t, int64_t, BdrvTrackedRequest *, int): Assertion `!(bs->open_flags & BDRV_O_INACTIVE)' failed. The resulting error message after this patch isn't perfect yet, but at least it doesn't crash any more: $ ./qemu-system-x86_64 -hda /tmp/test.qcow2 -loadvm foo -incoming defer qemu-system-x86_64: Device 'ide0-hd0' is writable but does not support snapshots Signed-off-by: Kevin Wolf <kw...@redhat.com> Message-ID: <20231201142520.32255-2-kw...@redhat.com> Signed-off-by: Kevin Wolf <kw...@redhat.com> (cherry picked from commit d3007d348adaaf04ee8b099a475282034a662414) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 4c8315ad50e5a91a0666a8a14887deffb5d7d981 https://github.com/qemu/qemu/commit/4c8315ad50e5a91a0666a8a14887deffb5d7d981 Author: Kevin Wolf <kw...@redhat.com> Date: 2023-12-22 (Fri, 22 Dec 2023) Changed paths: M softmmu/vl.c Log Message: ----------- vl: Improve error message for conflicting -incoming and -loadvm Currently, the conflict between -incoming and -loadvm is only detected when loading the snapshot fails because the image is still inactive for the incoming migration. This results in a suboptimal error message: $ ./qemu-system-x86_64 -hda /tmp/test.qcow2 -loadvm foo -incoming defer qemu-system-x86_64: Device 'ide0-hd0' is writable but does not support snapshots Catch the situation already in qemu_validate_options() to improve the message: $ ./qemu-system-x86_64 -hda /tmp/test.qcow2 -loadvm foo -incoming defer qemu-system-x86_64: 'incoming' and 'loadvm' options are mutually exclusive Signed-off-by: Kevin Wolf <kw...@redhat.com> Message-ID: <20231201142520.32255-3-kw...@redhat.com> Signed-off-by: Kevin Wolf <kw...@redhat.com> (cherry picked from commit 5a7f21efaf99c60614fe1967be1c0f9aa46c526e) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 60472f719ca5a6cb7dc494f4daf6d3c712dffe62 https://github.com/qemu/qemu/commit/60472f719ca5a6cb7dc494f4daf6d3c712dffe62 Author: Kevin Wolf <kw...@redhat.com> Date: 2023-12-22 (Fri, 22 Dec 2023) Changed paths: A tests/qemu-iotests/tests/qcow2-internal-snapshots A tests/qemu-iotests/tests/qcow2-internal-snapshots.out Log Message: ----------- iotests: Basic tests for internal snapshots We have a few test cases that include tests for corner case aspects of internal snapshots, but nothing that tests that they actually function as snapshots or that involves deleting a snapshot. Add a test for this kind of basic internal snapshot functionality. The error cases include a regression test for the crash we just fixed with snapshot operations on inactive images. Signed-off-by: Kevin Wolf <kw...@redhat.com> Message-ID: <20231201142520.32255-4-kw...@redhat.com> Signed-off-by: Kevin Wolf <kw...@redhat.com> (cherry picked from commit bb6e2511eb48539b7dcbcb5f47772e156b9c45d1) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 6c5dda7850082a78655ba4f11f6842d073423d07 https://github.com/qemu/qemu/commit/6c5dda7850082a78655ba4f11f6842d073423d07 Author: Pavel Pisa <p...@cmp.felk.cvut.cz> Date: 2024-01-05 (Fri, 05 Jan 2024) Changed paths: M hw/net/can/can_sja1000.c Log Message: ----------- hw/net/can/sja1000: fix bug for single acceptance filter and standard frame A CAN sja1000 standard frame filter mask has been computed and applied incorrectly for standard frames when single Acceptance Filter Mode (MOD_AFM = 1) has been selected. The problem has not been found by Linux kernel testing because it uses dual filter mode (MOD_AFM = 0) and leaves falters fully open. The problem has been noticed by Grant Ramsay when testing with Zephyr RTOS which uses single filter mode. Signed-off-by: Pavel Pisa <p...@cmp.felk.cvut.cz> Reported-by: Grant Ramsay <gram...@enphaseenergy.com> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2028 Fixes: 733210e754 ("hw/net/can: SJA1000 chip register level emulation") Message-ID: <20240103231426.5685-1-p...@fel.cvut.cz> (cherry picked from commit 25145a7d7735344a469551946fc2a7f19eb4aa3d) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 03382b91cb40ae02deeb711b6cd0f4c1a0830600 https://github.com/qemu/qemu/commit/03382b91cb40ae02deeb711b6cd0f4c1a0830600 Author: Xu Lu <luxu.ker...@bytedance.com> Date: 2024-01-08 (Mon, 08 Jan 2024) Changed paths: M target/riscv/csr.c Log Message: ----------- target/riscv: Fix mcycle/minstret increment behavior The mcycle/minstret counter's stop flag is mistakenly updated on a copy on stack. Thus the counter increments even when the CY/IR bit in the mcountinhibit register is set. This commit corrects its behavior. Fixes: 3780e33732f88 (target/riscv: Support mcycle/minstret write operation) Signed-off-by: Xu Lu <luxu.ker...@bytedance.com> Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com> Signed-off-by: Michael Tokarev <m...@tls.msk.ru> (cherry picked from commit 5cb0e7abe1635cb82e0033260dac2b910d142f8c) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 97d3be7bca49708a797b0a961b2a4dd99030910f https://github.com/qemu/qemu/commit/97d3be7bca49708a797b0a961b2a4dd99030910f Author: Michael Tokarev <m...@tls.msk.ru> Date: 2024-01-08 (Mon, 08 Jan 2024) Changed paths: M chardev/char.c Log Message: ----------- chardev/char.c: fix "abstract device type" error message Current error message: qemu-system-x86_64: -chardev spice,id=foo: Parameter 'driver' expects an abstract device type while in fact the meaning is in reverse, -chardev expects a non-abstract device type. Fixes: 777357d758d9 ("chardev: qom-ify" 2016-12-07) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Reviewed-by: Zhao Liu <zhao1....@intel.com> (cherry picked from commit 4ad87cd4b2254197b7ac12e3da824854e6a90f8f) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 6eb6bca73f54e7d88f7a705abf727fdcc9e51c9a https://github.com/qemu/qemu/commit/6eb6bca73f54e7d88f7a705abf727fdcc9e51c9a Author: Peter Maydell <peter.mayd...@linaro.org> Date: 2024-01-11 (Thu, 11 Jan 2024) Changed paths: M hw/intc/arm_gicv3_cpuif.c Log Message: ----------- hw/intc/arm_gicv3_cpuif: handle LPIs in in the list registers The hypervisor can deliver (virtual) LPIs to a guest by setting up a list register to have an intid which is an LPI. The GIC has to treat these a little differently to standard interrupt IDs, because LPIs have no Active state, and so the guest will only EOI them, it will not also deactivate them. So icv_eoir_write() must do two things: * if the LPI ID is not in any list register, we drop the priority but do not increment the EOI count * if the LPI ID is in a list register, we immediately deactivate it, regardless of the split-drop-and-deactivate control This can be seen in the VirtualWriteEOIR0() and VirtualWriteEOIR1() pseudocode in the GICv3 architecture specification. Without this fix, potentially a hypervisor guest might stall because LPIs get stuck in a bogus Active+Pending state. Cc: qemu-sta...@nongnu.org Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> Tested-by: Miguel Luis <miguel.l...@oracle.com> (cherry picked from commit 82a65e3188abebb509510b391726711606aca642) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 074b769c0bd48d19268ae3714202e320e9a31faa https://github.com/qemu/qemu/commit/074b769c0bd48d19268ae3714202e320e9a31faa Author: Natanael Copa <nc...@alpinelinux.org> Date: 2024-01-11 (Thu, 11 Jan 2024) Changed paths: M util/cpuinfo-ppc.c Log Message: ----------- util: fix build with musl libc on ppc64le Use PPC_FEATURE2_ISEL and PPC_FEATURE2_VEC_CRYPTO from linux headers instead of the GNU specific PPC_FEATURE2_HAS_ISEL and PPC_FEATURE2_HAS_VEC_CRYPTO. This fixes build with musl libc. Cc: qemu-sta...@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1861 Signed-off-by: Natanael Copa <nc...@alpinelinux.org> Fixes: 63922f467a ("tcg/ppc: Replace HAVE_ISEL macro with a variable") Fixes: 68f340d4cd ("tcg/ppc: Enable Altivec detection") Message-Id: <20231219105236.7059-1-nc...@alpinelinux.org> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> (cherry picked from commit 1d513e06d96697f44de4a1b85c6ff627c443e306) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: f62b55da87bf3278e4ef5c8c8696e2179498d37a https://github.com/qemu/qemu/commit/f62b55da87bf3278e4ef5c8c8696e2179498d37a Author: Samuel Tardieu <s...@rfc1149.net> Date: 2024-01-13 (Sat, 13 Jan 2024) Changed paths: M tests/qtest/virtio-ccw-test.c Log Message: ----------- tests/qtest/virtio-ccw: Fix device presence checking An apparent copy-paste error tests for the presence of the virtio-rng-ccw device in order to perform tests on the virtio-scsi-ccw device. Signed-off-by: Samuel Tardieu <s...@rfc1149.net> Message-ID: <20240106130121.1244993-1-...@rfc1149.net> Fixes: 65331bf5d1 ("tests/qtest: Check for virtio-ccw devices before using them") Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> Signed-off-by: Thomas Huth <th...@redhat.com> (cherry picked from commit c98873ee4a0c2694aac976ab9affcf55da8b7e61) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Commit: 5e190ed4152a1668f84cbf58b0daa65f3c5c2c0d https://github.com/qemu/qemu/commit/5e190ed4152a1668f84cbf58b0daa65f3c5c2c0d Author: Ilya Leoshkevich <i...@linux.ibm.com> Date: 2024-01-13 (Sat, 13 Jan 2024) Changed paths: M target/s390x/tcg/translate.c Log Message: ----------- target/s390x: Fix LAE setting a wrong access register LAE should set the access register corresponding to the first operand, instead, it always modifies access register 1. Co-developed-by: Ido Plat <ido.p...@ibm.com> Cc: qemu-sta...@nongnu.org Fixes: a1c7610a6879 ("target-s390x: implement LAY and LAEY instructions") Reviewed-by: David Hildenbrand <da...@redhat.com> Signed-off-by: Ilya Leoshkevich <i...@linux.ibm.com> Message-ID: <20240111092328.929421-2-...@linux.ibm.com> Signed-off-by: Thomas Huth <th...@redhat.com> (cherry picked from commit e358a25a97c71c39e3513d9b869cdb82052e50b8) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> (Mjt: target/s390x/tcg/translate.c: fixup for v8.1.0-1189-gad75a51e84 "tcg: Rename cpu_env to tcg_env") Commit: d6488e51867054f94e564fa6621933ab1437fe70 https://github.com/qemu/qemu/commit/d6488e51867054f94e564fa6621933ab1437fe70 Author: Peter Maydell <peter.mayd...@linaro.org> Date: 2024-01-13 (Sat, 13 Jan 2024) Changed paths: M .gitlab-ci.d/buildtest.yml Log Message: ----------- .gitlab-ci.d/buildtest.yml: Work around htags bug when environment is large Sometimes the CI "pages" job fails with a message like this from htags: $ htags -anT --tree-view=filetree -m qemu_init -t "Welcome to the QEMU sourcecode" htags: Negative exec line limit = -371 This is due to a bug in hflags where if the environment is too large it falls over: https://lists.gnu.org/archive/html/bug-global/2024-01/msg00000.html This happens to us because GitLab CI puts the commit message of the commit under test into the CI_COMMIT_MESSAGE and/or CI_COMMIT_TAG_MESSAGE environment variables, so the job will fail if the commit happens to have a verbose commit message. Work around the htags bug by unsetting these variables while running htags. Cc: qemu-sta...@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2080 Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> Message-ID: <20240111125543.1573473-1-peter.mayd...@linaro.org> Signed-off-by: Thomas Huth <th...@redhat.com> (cherry picked from commit 52a21689cd829c1cc931b59b5ee5bdb10dd578c1) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> Compare: https://github.com/qemu/qemu/compare/c06aef082f21...d6488e518670