summary refs log tree commit diff stats
path: root/scripts/qapi/source.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-10-18meson: add a note on why we use config_host for program pathsPaolo Bonzini1-0/+5
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18meson-buildoptions: document the data at the topPaolo Bonzini1-0/+8
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure, meson: use command line options to configure qemu-gaPaolo Bonzini4-10/+31
Preserve the functionality of the environment variables, but allow using the command line instead. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: unify handling of several Debian cross containersPaolo Bonzini1-36/+5
The Debian and GNU architecture names match very often, even though there are common cases (32-bit Arm or 64-bit x86) where they do not and other cases in which the GNU triplet is actually a quadruplet. But it is still possible to group the common case into a single case inside probe_target_compiler. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: move environment-specific defaults to config-meson.crossPaolo Bonzini3-24/+21
Store the -Werror and SMBD defaults in the machine file, which still allows them to be overridden on the command line and enables automatic parsing of the related options. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: move target-specific defaults to an external machine filePaolo Bonzini4-23/+34
Enable Windows-specific defaults with a machine file, so that related options can be automatically parsed and included in the help message. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: remove some dead cruftPaolo Bonzini1-6/+1
print_error is only invoked in one place, and $git is unused. Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: clean up PIE option handlingPaolo Bonzini1-20/+13
Keep together all the conditions that lead to disabling PIE. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: clean up plugin option handlingPaolo Bonzini3-28/+30
Keep together all the conditions that lead to disabling plugins, and remove now-dead code. Since the option was not in SKIP_OPTIONS, it was present twice in the help message, both from configure and from meson-buildoptions.sh. Remove the duplication and take the occasion to document the option as autodetected, which it is. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure, tests/tcg: simplify GDB conditionalsPaolo Bonzini6-46/+33
Unify HAVE_GDB_BIN (currently in config-host.mak) and HOST_GDB_SUPPORTS_ARCH into a single GDB variable in config-target.mak. Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18tests/tcg/arm: move non-SVE tests out of conditionalPaolo Bonzini1-6/+4
test-aes, sha1-vector and sha512-vector need not be conditional on $(CROSS_CC_HAS_SVE), reorganize the "if"s to move them outside. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18hw/remote: move stub vfu_object_set_bus_irq out of stubs/Paolo Bonzini3-2/+3
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18hw/xen: cleanup sourcesetsPaolo Bonzini3-9/+4
xen_ss is added unconditionally to arm_ss and i386_ss (the only targets that can have CONFIG_XEN enabled) and its contents are gated by CONFIG_XEN; xen_specific_ss has no condition for its constituent files but is gated on CONFIG_XEN when its added to specific_ss. So xen_ss is a duplicate of xen_specific_ss, though defined in a different way. Merge the two by eliminating xen_ss. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18configure: clean up handling of CFI optionPaolo Bonzini1-6/+7
Avoid that --enable-cfi --disable-cfi leaves b_lto set to true. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-18meson, cutils: allow non-relocatable installsPaolo Bonzini4-3/+33
Say QEMU is configured with bindir = "/usr/bin" and a firmware path that starts with "/usr/share/qemu". Ever since QEMU 5.2, QEMU's install has been relocatable: if you move qemu-system-x86_64 from /usr/bin to /home/username/bin, it will start looking for firmware in /home/username/share/qemu. Previously, you would get a non-relocatable install where the moved QEMU will keep looking for firmware in /usr/share/qemu. Windows almost always wants relocatable installs, and in fact that is why QEMU 5.2 introduced relocatability in the first place. However, newfangled distribution mechanisms such as AppImage (https://docs.appimage.org/reference/best-practices.html), and possibly NixOS, also dislike using at runtime the absolute paths that were established at build time. On POSIX systems you almost never care; if you do, your usecase dictates which one is desirable, so there's no single answer. Obviously relocatability works fine most of the time, because not many people have complained about QEMU's switch to relocatable install, and that's why until now there was no way to disable relocatability. But a non-relocatable, non-modular binary can help if you want to do experiments with old firmware and new QEMU or vice versa (because you can just upgrade/downgrade the firmware package, and use rpm2cpio or similar to extract the QEMU binaries outside /usr), so allow both. This patch allows one to build a non-relocatable install using a new option to configure. Why? Because it's not too hard, and because it helps the user double check the relocatability of their install. Note that the same code that handles relocation also lets you run QEMU from the build tree and pick e.g. firmware files from the source tree transparently. Therefore that part remains active with this patch, even if you configure with --disable-relocatable. Suggested-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17meson: do not use set10Paolo Bonzini4-4/+19
Make all items of config-host.h consistent. To keep the --disable-coroutine-pool code visible to the compiler, mutuate the IS_ENABLED() macro from Linux. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17meson: do not build shaders by defaultPaolo Bonzini1-0/+1
They are not needed when building user-mode emulators. Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17tracetool: avoid invalid escape in Python stringPaolo Bonzini2-8/+8
This is an error in Python 3.12; fix it by using a raw string literal. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17tests/vm: avoid invalid escape in Python stringPaolo Bonzini1-3/+3
This is an error in Python 3.12; fix it by using a raw string literal or by double-escaping the backslash. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17tests/avocado: avoid invalid escape in Python stringPaolo Bonzini1-1/+1
This is an error in Python 3.12; fix it by using a raw string literal. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17target/hexagon: avoid invalid escape in Python stringPaolo Bonzini1-2/+2
This is an error in Python 3.12; fix it by using a raw string literal. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17docs/sphinx: avoid invalid escape in Python stringPaolo Bonzini1-1/+1
This is an error in Python 3.12; fix it by using a raw string literal. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17tests/docker: avoid invalid escape in Python stringPaolo Bonzini1-1/+1
This is an error in Python 3.12; fix it by using a raw string literal. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17scripts/get_maintainer.pl: don't print parenthesesEmmanouil Pitsidianakis1-0/+1
When called from git-send-email, some results contain unclosed parentheses from the subsystem title, for example: (cc-cmd) Adding cc: qemu-ppc@nongnu.org (open list:PowerNV (Non-Virt...) from: 'scripts/get_maintainer.pl --nogit-fallback' (cc-cmd) Adding cc: qemu-devel@nongnu.org (open list:All patches CC here) from: 'scripts/get_maintainer.pl --nogit-fallback' Unmatched () '(open list:PowerNV (Non-Virt...)' '' at /usr/lib/git-core/git-send-email line 642. error: unable to extract a valid address from: qemu-ppc@nongnu.org (open list:PowerNV (Non-Virt...) What to do with this address? ([q]uit|[d]rop|[e]dit): d This commit removes all parentheses from results. Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20231013091628.669415-1-manos.pitsidianakis@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17scripts: Mark feature_to_c.py as non-executable to fix a build issueThomas Huth1-0/+0
Meson tries to run scripts via the shebang line if they files are marked as executable. If "python3" is not in the $PATH, or if it is a version that is too old, then the script execution fails. We should make sure to run scripts via the python3 interpreter that is used for Meson itself. For this, the files need to be marked as non-executable, then meson will use the python3 binary that has been used to run itself. Fixes: 956af7daad ("gdbstub: Introduce GDBFeature structure") Signed-off-by: Thomas Huth <thuth@redhat.com> Message-ID: <20231016094917.19044-1-thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17tests/vm: netbsd: install dtcPaolo Bonzini1-1/+5
Install dtc as it is now a mandatory external dependency in order to build QEMU. Co-developed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17target/i386: check intercept for XSETBVPaolo Bonzini2-0/+2
Note that this intercept is special; it is checked before the #GP exception. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17target/i386/cpu: Fix CPUID_HT exposureXiaoyao Li2-0/+3
When explicitly booting a multiple vcpus vm with "-cpu +ht", it gets warning of warning: host doesn't support requested feature: CPUID.01H:EDX.ht [bit 28] Make CPUID_HT as supported unconditionally can resolve the warning. However it introduces another issue that it also expose CPUID_HT to guest when "-cpu host/max" with only 1 vcpu. To fix this, need mark CPUID_HT as the no_autoenable_flags. Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com> Message-ID: <20231010060539.210258-1-xiaoyao.li@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17Revert "configure: Add workaround for ccache and clang"Yonggang Luo1-32/+0
This reverts commit fd0e60530f10078f488fa3e9591cc7db5732989c. According to https://peter.eisentraut.org/blog/2014/12/01/ccache-and-clang-part-3 it's already fixed in new version of ccache According to https://ccache.dev/manual/4.8.html#config_run_second_cpp CCACHE_CPP2 are default to true for new version ccache Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-ID: <20231009165113.498-1-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17iotests: use the correct python to run lintersJohn Snow1-1/+1
Whichever python is used to run iotest 297 should be the one used to actually run the linters. Signed-off-by: John Snow <jsnow@redhat.com> Message-ID: <20230621002121.1609612-5-jsnow@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-17iotests: get rid of '..' in path environment outputJohn Snow1-1/+1
Resolve the build_root before we append more items onto it so that the environment output is more concise with less parent directory confetti in it. Signed-off-by: John Snow <jsnow@redhat.com> Message-ID: <20230621002121.1609612-4-jsnow@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-10-13hw/ufs: Fix incorrect register fieldsJeuk Kim1-2/+2
This patch fixes invalid ufs register fields. This fixes an issue reported by Bin Meng that caused ufs to fail over riscv. Fixes: bc4e68d362ec ("hw/ufs: Initial commit for emulated Universal-Flash-Storage") Signed-off-by: Jeuk Kim <jeuk20.kim@samsung.com> Reported-by: Bin Meng <bmeng@tinylab.org> Reviewed-by: Bin Meng <bmeng@tinylab.org> Tested-by: Bin Meng <bmeng@tinylab.org>
2023-10-13hw/ufs: Fix code coverity issuesJeuk Kim3-15/+13
Fixed four ufs-related coverity issues. The coverity issues and fixes are as follows 1. CID 1519042: Security issue with the rand() function Changed to use a fixed value (0xab) instead of rand() as the value for testing 2. CID 1519043: Dereference after null check Removed useless (redundant) null checks 3. CID 1519050: Out-of-bounds access issue Fix to pass an array type variable to find_first_bit and find_next_bit using DECLARE_BITMAP() 4. CID 1519051: Out-of-bounds read issue Fix incorrect range check for lun Fix coverity CID: 1519042 1519043 1519050 1519051 Signed-off-by: Jeuk Kim <jeuk20.kim@samsung.com>
2023-10-13LoongArch: step down as general arch maintainerXiaojuan Yang1-2/+0
I haven't really been working on LoongArch for some time now, so let's remove myself from this entry. Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn> Acked-by: Song Gao <gaosong@loongson.cn> Message-Id: <20231012095135.1423071-1-yangxiaojuan@loongson.cn> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-13hw/loongarch/virt: Remove unused 'loongarch_virt_pm' regionSong Gao2-50/+5
The system test shutdown uses the 'loongarch_virt_pm' region. We can use the write AcpiFadtData.sleep_clt register to realize the shutdown. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Song Gao <gaosong@loongson.cn> Message-ID: <20231012072351.1409344-1-gaosong@loongson.cn> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-13hw/loongarch/virt: Remove unused ISA BusPhilippe Mathieu-Daudé3-9/+0
The LoongArch 'virt' machine doesn't use its ISA I/O region. If a ISA device were to be mapped there, there is no support for ISA IRQ. Unlikely useful. Simply remove. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Song Gao <gaosong@loongson.cn> Message-Id: <20231010135342.40219-3-philmd@linaro.org> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-13hw/loongarch/virt: Remove unused ISA UARTPhilippe Mathieu-Daudé1-1/+0
The LoongArch 'virt' machine doesn't use any ISA UART. No need to build the device model, remove its Kconfig entry. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Song Gao <gaosong@loongson.cn> Message-Id: <20231010135342.40219-2-philmd@linaro.org> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-13hw/loongarch: remove global loaderparams variableThomas Weißschuh1-23/+27
Passing the struct around explicitly makes the control-flow more obvious. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Song Gao <gaosong@loongson.cn> Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de> Message-Id: <20231010-loongarch-loader-params-v2-1-512cc7959683@t-8ch.de> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-13target/loongarch: Add preldx instructionSong Gao3-0/+15
Resolve the issue of starting the Loongnix 20.5[1] system failure. Logs: Loading Linux 4.19.0-19-loongson-3 ... Loading initial ramdisk ... PROGRESS CODE: V02010004 I0 PROGRESS CODE: V03101019 I0 Error: unknown opcode. 90000000003a3e6c: 0x382c6d82 [1] http://pkg.loongnix.cn/loongnix/isos/Loongnix-20.5/Loongnix-20.5.cartoon.gui.loongarch64.en.qcow2 Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Song Gao <gaosong@loongson.cn> Message-Id: <20230905123910.3052023-1-gaosong@loongson.cn>
2023-10-13target/loongarch: fix ASXE flag conflictJiajie Chen1-2/+2
HW_FLAGS_EUEN_ASXE acccidentally conflicts with HW_FLAGS_CRMD_PG, enabling LASX instructions even when CSR_EUEN.ASXE=0. Closes: https://gitlab.com/qemu-project/qemu/-/issues/1907 Signed-off-by: Jiajie Chen <c@jia.je> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Song Gao <gaosong@loongson.cn> Message-Id: <20230930112837.1871691-1-c@jia.je> Signed-off-by: Song Gao <gaosong@loongson.cn>
2023-10-12python: use vm.cmd() instead of vm.qmp() where appropriateVladimir Sementsov-Ogievskiy44-1462/