| c0f86125 | 13-Sep-2024 |
Matheus Tavares Bernardino <quic_mathbern@quicinc.com> |
docs/fuzz: fix outdated mention to enable-sanitizers
This options has been removed at cb771ac1f5 (meson: Split --enable-sanitizers to --enable-{asan, ubsan}, 2024-08-13), so let's update its last st
docs/fuzz: fix outdated mention to enable-sanitizers
This options has been removed at cb771ac1f5 (meson: Split --enable-sanitizers to --enable-{asan, ubsan}, 2024-08-13), so let's update its last standing mention in the docs.
Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com> Reviewed-by: Brian Cain <bcain@quicinc.com> Message-ID: <0ecf4e1ab26771009d74a2ce61e7c17ddc586ef7.1726226316.git.quic_mathbern@quicinc.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| cf7f61d1 | 13-Sep-2024 |
Peter Maydell <peter.maydell@linaro.org> |
target/s390: Convert CPU to Resettable interface
Convert the s390 CPU to the Resettable interface. This is slightly more involved than the other CPU types were (see commits 9130cade5fc22..d66e64dd0
target/s390: Convert CPU to Resettable interface
Convert the s390 CPU to the Resettable interface. This is slightly more involved than the other CPU types were (see commits 9130cade5fc22..d66e64dd006df) because S390 has its own set of different kinds of reset with different behaviours that it needs to trigger.
We handle this by adding these reset types to the Resettable ResetType enum. Now instead of having an underlying implementation of reset that is s390-specific and which might be called either directly or via the DeviceClass::reset method, we can implement only the Resettable hold phase method, and have the places that need to trigger an s390-specific reset type do so by calling resettable_reset().
The other option would have been to smuggle in the s390 reset type via, for instance, a field in the CPU state that we set in s390_do_cpu_initial_reset() etc and then examined in the reset method, but doing it this way seems cleaner.
The motivation for this change is that this is the last caller of the legacy device_class_set_parent_reset() function, and removing that will let us clean up some glue code that we added for the transition to three-phase reset.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Acked-by: Thomas Huth <thuth@redhat.com> Message-id: 20240830145812.1967042-4-peter.maydell@linaro.org
show more ...
|
| 4b7ea330 | 11-Sep-2024 |
Peter Maydell <peter.maydell@linaro.org> |
Merge tag 'pull-request-2024-09-11' of https://gitlab.com/thuth/qemu into staging
* Split --enable-sanitizers to --enable-{asan, ubsan} * Build MSYS2 job using multiple CPUs * Fix "make distclean" w
Merge tag 'pull-request-2024-09-11' of https://gitlab.com/thuth/qemu into staging
* Split --enable-sanitizers to --enable-{asan, ubsan} * Build MSYS2 job using multiple CPUs * Fix "make distclean" wrt contrib/plugins/ * Convert more Avocado tests to plain standalone functional tests * Fix bug that breaks "make check-functional" when tesseract is missing * Use builtin hashlib of Python in the functional tests * Update the FreeBSD CI jobs to 14.1
# -----BEGIN PGP SIGNATURE----- # # iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmbhY4YRHHRodXRoQHJl # ZGhhdC5jb20ACgkQLtnXdP5wLbU/aw/9HXl9H8BUDn8lnoEmxuuQSk8F19n/l5pt # en3L8pMBt4dGFe/9KaGes2GFfid+cp2zlx+qQhA4HW35ntMJorF/qinOH/JGDtoM # 3O6RGZrQPn60zD9P2EbFVCrVYysVYCEu0U3Uglj6tf33bE0L7SJsQxqcbIciyIj5 # aq3Te0yMM2lqzCdMqNpWHGn3VMZRvbRaGBPDU4RLP8V2Bpz1iiRE+6HCH9Kg7HzS # OmleeXtvcyInG+54onjfTcn4/XA27pl1UU04KFv5PrRPB3M2FspHn7oOT2yyQ+ls # 79mqIcd8PvycCT+3ch9p8KhVtbVBgZGmeemALLvk5FxysaWnl4KtSqmQNdqSvvpV # waDDKlLaSnjEHDUse3bCJX0m4d7/vTBY5fOYxqZ4z5dl63csDtgPY4/VF4XR08sP # tR1mW+2qEH9eygsxuKcBjx/j7Etpy+jL9pX2ii1V3ElhjjYuEnpEiURa+TaqPjpZ # jmPtBEszzUdPbrD707tDkW3/ezT7VAnASQeYneJXB/JQG6K6Z//05iX6oCzCbRm3 # ceW/fem3UaeGYpzbMdoZToTuNlXEyS7NDcr39xJjH4LyRTPJAX4zeqUEdzces9g/ # u4Dw6rJ0Yhj4rscKxRvGl3/BH6CTI+8IAsbju2B/CnVLTqaABB0q/MDB90aB44xX # bAVsl4P03Uk= # =5TR0 # -----END PGP SIGNATURE----- # gpg: Signature made Wed 11 Sep 2024 10:31:50 BST # 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
* tag 'pull-request-2024-09-11' of https://gitlab.com/thuth/qemu: (24 commits) Update FreeBSD CI jobs FreeBSD 14.1 tests/functional/qemu_test: Use Python hashlib instead of external programs tests/functional: Fix bad usage of has_cmd tests/functional: Convert the multiprocess avocado test into a standalone test tests/functional: Convert the or1k-sim Avocado test tests/functional: Convert the m68k MCF5208EVB Avocado test tests/functional: Convert the Alpha Clipper Avocado test tests/functional: Convert Aarch64 Raspi4 avocado tests tests/functional: Convert Aarch64 Raspi3 avocado tests tests/functional: Convert ARM Raspi2 avocado tests tests/functional: Convert mips32eb 4Kc Malta avocado tests tests/functional: Convert nanomips Malta avocado tests tests/functional: Convert mips32el Malta YAMON avocado test tests/functional: Convert mips64el 5KEc Malta avocado tests tests/functional: Convert mips64el I6400 Malta avocado tests tests/functional: Convert mips64el Fuloong2e avocado test (2/2) tests/functional: Convert the m68k Q800 Avocado test into a functional test tests/functional: Add the LinuxKernelTest for testing the Linux boot process MAINTAINERS: Remove myself from the Meson section MAINTAINERS: Remove myself as reviewer ...
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
show more ...
|
| cb771ac1 | 13-Aug-2024 |
Richard Henderson <richard.henderson@linaro.org> |
meson: Split --enable-sanitizers to --enable-{asan, ubsan}
We do not always want both address and undefined behavior sanitizers running at the same time.
For the gitlab custom-runners, drop to only
meson: Split --enable-sanitizers to --enable-{asan, ubsan}
We do not always want both address and undefined behavior sanitizers running at the same time.
For the gitlab custom-runners, drop to only --enable-ubsan. These jobs are not run by default, but as will be obvious in the next patch, we don't run ASan on x86 either, and it seems wrong to hold aarch64 and s390x to a different standard.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-ID: <20240813095216.306555-2-richard.henderson@linaro.org> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 613edf0c | 10-Sep-2024 |
Alex Bennée <alex.bennee@linaro.org> |
docs/devel: fix duplicate line
I guess the same change came in via two patch series. Remove the repetition.
Fixes: 2a851fca9f (docs/devel: remind developers to run CI container pipeline when updati
docs/devel: fix duplicate line
I guess the same change came in via two patch series. Remove the repetition.
Fixes: 2a851fca9f (docs/devel: remind developers to run CI container pipeline when updating images) Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240910173900.4154726-5-alex.bennee@linaro.org>
show more ...
|
| 85da4cbe | 30-Aug-2024 |
Yuan Liu <yuan1.liu@intel.com> |
docs/migration: add qatzip compression feature
add Intel QATzip compression method introduction
Reviewed-by: Nanhai Zou <nanhai.zou@intel.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by:
docs/migration: add qatzip compression feature
add Intel QATzip compression method introduction
Reviewed-by: Nanhai Zou <nanhai.zou@intel.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Fabiano Rosas <farosas@suse.de> Signed-off-by: Yuan Liu <yuan1.liu@intel.com> Signed-off-by: Yichen Wang <yichen.wang@bytedance.com> Link: https://lore.kernel.org/r/20240830232722.58272-2-yichen.wang@bytedance.com Signed-off-by: Peter Xu <peterx@redhat.com>
show more ...
|
| c3e24cff | 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
docs/devel/testing: Add documentation for functional tests
Document the new functional testing framework. The text is originally based on the Avocado documentation, but heavily modified to match the
docs/devel/testing: Add documentation for functional tests
Document the new functional testing framework. The text is originally based on the Avocado documentation, but heavily modified to match the new framework.
Message-ID: <20240830133841.142644-45-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 0abdd970 | 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
docs/devel/testing: Rename avocado_qemu.Test class
The avocado_qemu.Test class has been renamed a while back in commit 2283b627bc ("tests/avocado: Rename avocado_qemu.Test -> QemuSystemTest"), so we
docs/devel/testing: Rename avocado_qemu.Test class
The avocado_qemu.Test class has been renamed a while back in commit 2283b627bc ("tests/avocado: Rename avocado_qemu.Test -> QemuSystemTest"), so we should reflect this now in the documentation, too.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-ID: <20240830133841.142644-44-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 2133c2ab | 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
docs/devel/testing: Split the Avocado documentation into a separate file
The main testing documentation file got very overloaded already. Thus let's split the Avocado information into a separate fil
docs/devel/testing: Split the Avocado documentation into a separate file
The main testing documentation file got very overloaded already. Thus let's split the Avocado information into a separate file.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-ID: <20240830133841.142644-43-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| ff41da50 | 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
docs/devel: Split testing docs from the build docs and move to separate folder
Building and testing are two separate topics, so let's split the testing into a separate category and move the related
docs/devel: Split testing docs from the build docs and move to separate folder
Building and testing are two separate topics, so let's split the testing into a separate category and move the related files into a separate folder.
Message-ID: <20240830133841.142644-42-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 05caa062 | 30-Aug-2024 |
Thomas Huth <thuth@redhat.com> |
tests/functional: Convert the acpi-bits test into a standalone test
Mostly a straight-forward conversion. Looks like we can simply drop the avocado datadrainer stuff when not using the avocado frame
tests/functional: Convert the acpi-bits test into a standalone test
Mostly a straight-forward conversion. Looks like we can simply drop the avocado datadrainer stuff when not using the avocado framework anymore.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240830133841.142644-30-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 3f9f9a37 | 13-Aug-2024 |
Pierrick Bouvier <pierrick.bouvier@linaro.org> |
docs/devel: update tcg-plugins page
Reflect recent changes on API (inline ops) and new plugins.
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Message-Id: <20240812231945.169310-1-pi
docs/devel: update tcg-plugins page
Reflect recent changes on API (inline ops) and new plugins.
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Message-Id: <20240812231945.169310-1-pierrick.bouvier@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240813202329.1237572-21-alex.bennee@linaro.org>
show more ...
|
| 24c32ed3 | 13-Aug-2024 |
Stefan Weil <sw@weilnetz.de> |
docs: Fix some typos (found by typos) and grammar issues
Fix the misspellings of "overriden" also in code comments.
Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.may
docs: Fix some typos (found by typos) and grammar issues
Fix the misspellings of "overriden" also in code comments.
Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <20240813125638.395461-1-sw@weilnetz.de> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240813202329.1237572-20-alex.bennee@linaro.org>
show more ...
|
| 6484a3e5 | 29-Jul-2024 |
Alex Bennée <alex.bennee@linaro.org> |
docs: split TCG plugin usage from devel section
The devel section is getting quite messy with the breakdown of the example plugins which should be usable by users. As we mention plugins in the emula
docs: split TCG plugin usage from devel section
The devel section is getting quite messy with the breakdown of the example plugins which should be usable by users. As we mention plugins in the emulation section along with semihosting move the overview there leaving the development section about the details of writing plugins.
While we are at make the headings nicer and convert the option lists into nicely formatted tables.
Acked-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240729144414.830369-11-alex.bennee@linaro.org>
show more ...
|
| b4212068 | 29-Jul-2024 |
Alex Bennée <alex.bennee@linaro.org> |
docs/devel: document how to run individual TCG tests
Since 6f6ca067d2 (tests/tcg: add some help output for running individual tests) we made it easier to run individual tests for a given architectur
docs/devel: document how to run individual TCG tests
Since 6f6ca067d2 (tests/tcg: add some help output for running individual tests) we made it easier to run individual tests for a given architecture. Lets reference that in the developer documentation.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240729144414.830369-8-alex.bennee@linaro.org>
show more ...
|
| c8d6e042 | 29-Jul-2024 |
Alex Bennée <alex.bennee@linaro.org> |
docs/devel: update the testing introduction
Move the mention of "check-help" up to the intro text and also mention the meson test integration.
Reviewed-by: Richard Henderson <richard.henderson@lina
docs/devel: update the testing introduction
Move the mention of "check-help" up to the intro text and also mention the meson test integration.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240729144414.830369-7-alex.bennee@linaro.org>
show more ...
|
| 9263c417 | 19-Feb-2024 |
Hyman Huang <yong.huang@smartx.com> |
docs/devel: Add introduction to LUKS volume with detached header
Signed-off-by: Hyman Huang <yong.huang@smartx.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> |
| 58fc249d | 18-Jul-2024 |
Simon Hamelin <simon.hamelin@grenoble-inp.org> |
plugins/stoptrigger: TCG plugin to stop execution under conditions
This new plugin allows to stop emulation using conditions on the emulation state. By setting this plugin arguments, it is possible
plugins/stoptrigger: TCG plugin to stop execution under conditions
This new plugin allows to stop emulation using conditions on the emulation state. By setting this plugin arguments, it is possible to set an instruction count limit and/or trigger address(es) to stop at. The code returned at emulation exit can be customized.
This plugin demonstrates how someone could stop QEMU execution. It could be used for research purposes to launch some code and deterministically stop it and understand where its execution flow went.
Co-authored-by: Alexandre Iooss <erdnaxe@crans.org> Signed-off-by: Simon Hamelin <simon.hamelin@grenoble-inp.org> Signed-off-by: Alexandre Iooss <erdnaxe@crans.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Message-Id: <20240715081521.19122-2-simon.hamelin@grenoble-inp.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240718094523.1198645-5-alex.bennee@linaro.org>
show more ...
|
| 3c5f6114 | 16-Jul-2024 |
John Snow <jsnow@redhat.com> |
qapi: remove "Example" doc section
Fully eliminate the "Example" sections in QAPI doc blocks now that they have all been converted to arbitrary rST syntax using the ".. qmp-example::" directive. Upd
qapi: remove "Example" doc section
Fully eliminate the "Example" sections in QAPI doc blocks now that they have all been converted to arbitrary rST syntax using the ".. qmp-example::" directive. Update tests to match.
Migrating to the new syntax ---------------------------
The old "Example:" or "Examples:" section syntax is now caught as an error, but "Example::" is stil permitted as explicit rST syntax for an un-lexed, generic preformatted text block.
('Example' is not special in this case, any sentence that ends with "::" will start an indented code block in rST.)
Arbitrary rST for Examples is now possible, but it's strongly recommended that documentation authors use the ".. qmp-example::" directive for consistent visual formatting in rendered HTML docs. The ":title:" directive option may be used to add extra information into the title bar for the example. The ":annotated:" option can be used to write arbitrary rST instead, with nested "::" blocks applying QMP formatting where desired.
Other choices available are ".. code-block:: QMP" which will not create an "Example:" box, or the short-form "::" code-block syntax which will not apply QMP highlighting when used outside of the qmp-example directive.
Why? ----
This patch has several benefits:
1. Example sections can now be written more arbitrarily, mixing explanatory paragraphs and code blocks however desired.
2. Example sections can now use fully arbitrary rST.
3. All code blocks are now lexed and validated as QMP; increasing usability of the docs and ensuring validity of example snippets.
(To some extent - This patch only gaurantees it lexes correctly, not that it's valid under the JSON or QMP grammars. It will catch most small mistakes, however.)
4. Each qmp-example can be titled or annotated independently without bypassing the QMP lexer/validator.
(i.e. code blocks are now for *code* only, so we don't have to sacrifice exposition for having lexically valid examples.)
NOTE: As with the "Notes" conversion (d461c279737), this patch (and the three preceding) may change the rendering order for Examples in the current generator. The forthcoming qapidoc rewrite will fix this by always generating documentation in source order.
Signed-off-by: John Snow <jsnow@redhat.com> Message-ID: <20240717021312.606116-10-jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
show more ...
|
| d461c279 | 26-Jun-2024 |
John Snow <jsnow@redhat.com> |
qapi: convert "Note" sections to plain rST
We do not need a dedicated section for notes. By eliminating a specially parsed section, these notes can be treated as normal rST paragraphs in the new QMP
qapi: convert "Note" sections to plain rST
We do not need a dedicated section for notes. By eliminating a specially parsed section, these notes can be treated as normal rST paragraphs in the new QMP reference manual, and can be placed and styled much more flexibly.
Convert all existing "Note" and "Notes" sections to pure rST. As part of the conversion, capitalize the first letter of each sentence and add trailing punctuation where appropriate to ensure notes look sensible and consistent in rendered HTML documentation. Markup is also re-aligned to the de-facto standard of 3 spaces for directives.
Update docs/devel/qapi-code-gen.rst to reflect the new paradigm, and update the QAPI parser to prohibit "Note" sections while suggesting a new syntax. The exact formatting to use is a matter of taste, but a good candidate is simply:
.. note:: lorem ipsum ... ... dolor sit amet ... ... consectetur adipiscing elit ...
... but there are other choices, too. The Sphinx readthedocs theme offers theming for the following forms (capitalization unimportant); all are adorned with a (!) symbol () in the title bar for rendered HTML docs.
See https://sphinx-rtd-theme.readthedocs.io/en/stable/demo/demo.html#admonitions for examples of each directive/admonition in use.
These are rendered in orange:
.. Attention:: ... .. Caution:: ... .. WARNING:: ...
These are rendered in red:
.. DANGER:: ... .. Error:: ...
These are rendered in green:
.. Hint:: ... .. Important:: ... .. Tip:: ...
These are rendered in blue:
.. Note:: ... .. admonition:: custom title
admonition body text
This patch uses ".. note::" almost everywhere, with just two "caution" directives. Several instances of "Notes:" have been converted to merely ".. note::", or multiple ".. note::" where appropriate. ".. admonition:: notes" is used in a few places where we had an ordered list of multiple notes that would not make sense as standalone/separate admonitions. Two "Note:" following "Example:" have been turned into ordinary paragraphs within the example.
NOTE: Because qapidoc.py does not attempt to preserve source ordering of sections, the conversion of Notes from a "tagged section" to an "untagged section" means that rendering order for some notes *may change* as a result of this patch. The forthcoming qapidoc.py rewrite strictly preserves source ordering in the rendered documentation, so this issue will be rectified in the new generator.
Signed-off-by: John Snow <jsnow@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com> [for block*.json] Message-ID: <20240626222128.406106-11-jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> [Commit message clarified slightly, period added to one more note] Signed-off-by: Markus Armbruster <armbru@redhat.com>
show more ...
|
| b32a6b62 | 26-Jun-2024 |
John Snow <jsnow@redhat.com> |
qapi: nail down convention that Errors sections are lists
By unstated convention, Errors sections are rST lists. Document the convention, and make the one exception conform.
Signed-off-by: John Sn
qapi: nail down convention that Errors sections are lists
By unstated convention, Errors sections are rST lists. Document the convention, and make the one exception conform.
Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-ID: <20240626222128.406106-10-jsnow@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
show more ...
|
| 4408155a | 24-May-2024 |
Paolo Bonzini <pbonzini@redhat.com> |
meson: Drop the .fa library suffix
The non-standard .fa library suffix breaks the link source de-duplication done by Meson so drop it.
The lack of link source de-duplication causes AddressSanitizer
meson: Drop the .fa library suffix
The non-standard .fa library suffix breaks the link source de-duplication done by Meson so drop it.
The lack of link source de-duplication causes AddressSanitizer to complain ODR violations, and makes GNU ld abort when combined with clang's LTO.
Fortunately, the non-standard suffix is not necessary anymore for two reasons.
First, the non-standard suffix was necessary for fork-fuzzing. Meson wraps all standard-suffixed libraries with --start-group and --end-group. This made a fork-fuzz.ld linker script wrapped as well and broke builds. Commit d2e6f9272d33 ("fuzz: remove fork-fuzzing scaffolding") dropped fork-fuzzing so we can now restore the standard suffix.
Second, the libraries are not even built anymore, because it is possible to just use the object files directly via extract_all_objects().
The occurences of the suffix were detected and removed by performing a tree-wide search with 'fa' and .fa (note the quotes and dot).
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Message-ID: <20240524-xkb-v4-4-2de564e5c859@daynix.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
show more ...
|
| 414b180d | 24-May-2024 |
Akihiko Odaki <akihiko.odaki@daynix.com> |
meson: Pass objects and dependencies to declare_dependency()
We used to request declare_dependency() to link_whole static libraries. If a static library is a thin archive, GNU ld keeps all object fi
meson: Pass objects and dependencies to declare_dependency()
We used to request declare_dependency() to link_whole static libraries. If a static library is a thin archive, GNU ld keeps all object files referenced by the archive open, and sometimes exceeds the open file limit.
Another problem with link_whole is that suboptimal handling of nested dependencies.
link_whole by itself does not propagate dependencies. In particular, gnutls, a dependency of crypto, is not propagated to its users, and we currently workaround the issue by declaring gnutls as a dependency for each crypto user. On the other hand, if you write something like
libfoo = static_library('foo', 'foo.c', dependencies: gnutls) foo = declare_dependency(link_whole: libfoo)
libbar = static_library('bar', 'bar.c', dependencies: foo) bar = declare_dependency(link_whole: libbar, dependencies: foo) executable('prog', sources: files('prog.c'), dependencies: [foo, bar])
hoping to propagate the gnutls dependency into bar.c, you'll see a linking failure for "prog", because the foo.c.o object file is included in libbar.a and therefore it is linked twice into "prog": once from libfoo.a and once from libbar.a. Here Meson does not see the duplication, it just asks the linker to link all of libfoo.a and libbar.a into "prog".
Instead of using link_whole, extract objects included in static libraries and pass them to declare_dependency(); and then the dependencies can be added as well so that they are propagated, because object files on the linker command line are always deduplicated.
This requires Meson 1.1.0 or later.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Message-ID: <20240524-objects-v1-1-07cbbe96166b@daynix.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
show more ...
|
| 5f79abcf | 20-Jun-2024 |
Alexandre Iooss <erdnaxe@crans.org> |
docs: add precision about capstone for execlog plugin
Some people are wondering why they get an empty string as disassembly. Most of the time, they configured QEMU without Capstone support. Let's do
docs: add precision about capstone for execlog plugin
Some people are wondering why they get an empty string as disassembly. Most of the time, they configured QEMU without Capstone support. Let's document this behaviour to help users.
Signed-off-by: Alexandre Iooss <erdnaxe@crans.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Message-ID: <20240620135731.977377-1-erdnaxe@crans.org> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
| 21e89f7a | 19-Jun-2024 |
Peter Xu <peterx@redhat.com> |
migration/docs: Update postcopy recover session for SETUP phase
Firstly, the "Paused" state was added in the wrong place before. The state machine section was describing PostcopyState, rather than M
migration/docs: Update postcopy recover session for SETUP phase
Firstly, the "Paused" state was added in the wrong place before. The state machine section was describing PostcopyState, rather than MigrationStatus. Drop the Paused state descriptions.
Then in the postcopy recover session, add more information on the state machine for MigrationStatus in the lines. Add the new RECOVER_SETUP phase.
Reviewed-by: Fabiano Rosas <farosas@suse.de> Signed-off-by: Peter Xu <peterx@redhat.com> [fix typo s/reconnects/reconnect] Signed-off-by: Fabiano Rosas <farosas@suse.de>
show more ...
|