qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PULL for rc3 0/5] a few doc and testing tweaks
@ 2019-11-20 10:57 Alex Bennée
  2019-11-20 10:57 ` [PULL 1/5] tests/vm: make --interactive (and therefore DEBUG=1) unconditional Alex Bennée
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:57 UTC (permalink / raw)
  To: peter.maydell; +Cc: Alex Bennée, qemu-devel

The following changes since commit 39e2821077e6dcf788b7c2a9ef50970ec7995437:

  Update version for v4.2.0-rc2 release (2019-11-19 19:34:10 +0000)

are available in the Git repository at:

  https://github.com/stsquad/qemu.git tags/pull-rc3-testing-and-tcg-201119-1

for you to fetch changes up to 22c30b2d20e828edadbd992c1d4c4bfd0f3433ba:

  tests/tcg: modify multiarch tests to work with clang (2019-11-20 10:53:31 +0000)

----------------------------------------------------------------
A few test and doc fixes:

  - tweak DEBUG behaviour for vm-test-build
  - rename and update plug docs for versioning
  - slim down MAIN_SOFTMMU_TARGETS

----------------------------------------------------------------
Alex Bennée (4):
      tests/vm: make --interactive (and therefore DEBUG=1) unconditional
      docs/devel: rename plugins.rst to tcg-plugins.rst
      docs/devel: update tcg-plugins.rst with API versioning details
      .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS

Taylor Simpson (1):
      tests/tcg: modify multiarch tests to work with clang

 docs/devel/index.rst                        |  2 +-
 docs/devel/{plugins.rst => tcg-plugins.rst} | 27 +++++++++++++++++++++------
 tests/tcg/multiarch/float_helpers.c         |  2 --
 tests/tcg/multiarch/linux-test.c            |  6 +++++-
 .travis.yml                                 |  2 +-
 MAINTAINERS                                 |  1 +
 tests/vm/basevm.py                          |  2 +-
 7 files changed, 30 insertions(+), 12 deletions(-)
 rename docs/devel/{plugins.rst => tcg-plugins.rst} (83%)

-- 
2.20.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PULL 1/5] tests/vm: make --interactive (and therefore DEBUG=1) unconditional
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
@ 2019-11-20 10:57 ` Alex Bennée
  2019-11-20 10:57 ` [PULL 2/5] docs/devel: rename plugins.rst to tcg-plugins.rst Alex Bennée
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:57 UTC (permalink / raw)
  To: peter.maydell
  Cc: Fam Zheng, Philippe Mathieu-Daudé,
	Thomas Huth, Alex Bennée, qemu-devel

While the concept of only dropping to ssh if a test fails is nice it
is more useful for this to be unconditional. You usually just want to
get the build up and running and then noodle around debugging or
attempting to replicate.

Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>

diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py
index 91a9226026d..0b8c1b26576 100755
--- a/tests/vm/basevm.py
+++ b/tests/vm/basevm.py
@@ -403,7 +403,7 @@ def main(vmcls):
     exitcode = 0
     if vm.ssh(*cmd) != 0:
         exitcode = 3
-    if exitcode != 0 and args.interactive:
+    if args.interactive:
         vm.ssh()
 
     if not args.snapshot:
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PULL 2/5] docs/devel: rename plugins.rst to tcg-plugins.rst
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
  2019-11-20 10:57 ` [PULL 1/5] tests/vm: make --interactive (and therefore DEBUG=1) unconditional Alex Bennée
@ 2019-11-20 10:57 ` Alex Bennée
  2019-11-20 10:57 ` [PULL 3/5] docs/devel: update tcg-plugins.rst with API versioning details Alex Bennée
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:57 UTC (permalink / raw)
  To: peter.maydell; +Cc: Philippe Mathieu-Daudé, Alex Bennée, qemu-devel

This makes it a bit clearer what this is about.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>

diff --git a/docs/devel/index.rst b/docs/devel/index.rst
index 2ff058bae38..c86a3cdff2f 100644
--- a/docs/devel/index.rst
+++ b/docs/devel/index.rst
@@ -22,4 +22,4 @@ Contents:
    decodetree
    secure-coding-practices
    tcg
-   plugins
+   tcg-plugins
diff --git a/docs/devel/plugins.rst b/docs/devel/tcg-plugins.rst
similarity index 100%
rename from docs/devel/plugins.rst
rename to docs/devel/tcg-plugins.rst
diff --git a/MAINTAINERS b/MAINTAINERS
index dfb7932608d..5e5e3e52d61 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2371,6 +2371,7 @@ F: tcg/
 TCG Plugins
 M: Alex Bennée <alex.bennee@linaro.org>
 S: Maintained
+F: docs/devel/tcg-plugins.rst
 F: plugins/
 F: tests/plugin
 
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PULL 3/5] docs/devel: update tcg-plugins.rst with API versioning details
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
  2019-11-20 10:57 ` [PULL 1/5] tests/vm: make --interactive (and therefore DEBUG=1) unconditional Alex Bennée
  2019-11-20 10:57 ` [PULL 2/5] docs/devel: rename plugins.rst to tcg-plugins.rst Alex Bennée
@ 2019-11-20 10:57 ` Alex Bennée
  2019-11-20 10:58 ` [PULL 4/5] .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS Alex Bennée
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:57 UTC (permalink / raw)
  To: peter.maydell; +Cc: Alex Bennée, qemu-devel, Robert Foley

While we are at it fix up the quoted code sections with the inline ::
approach.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Robert Foley <robert.foley@linaro.org>

diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst
index b18fb6729e3..718eef00f22 100644
--- a/docs/devel/tcg-plugins.rst
+++ b/docs/devel/tcg-plugins.rst
@@ -25,6 +25,23 @@ process. However the project reserves the right to change or break the
 API should it need to do so. The best way to avoid this is to submit
 your plugin upstream so they can be updated if/when the API changes.
 
+API versioning
+--------------
+
+All plugins need to declare a symbol which exports the plugin API
+version they were built against. This can be done simply by::
+
+  QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION;
+
+The core code will refuse to load a plugin that doesn't export a
+`qemu_plugin_version` symbol or if plugin version is outside of QEMU's
+supported range of API versions.
+
+Additionally the `qemu_info_t` structure which is passed to the
+`qemu_plugin_install` method of a plugin will detail the minimum and
+current API versions supported by QEMU. The API version will be
+incremented if new APIs are added. The minimum API version will be
+incremented if existing APIs are changed or removed.
 
 Exposure of QEMU internals
 --------------------------
@@ -40,16 +57,14 @@ instructions and events are opaque to the plugins themselves.
 Usage
 =====
 
-The QEMU binary needs to be compiled for plugin support:
+The QEMU binary needs to be compiled for plugin support::
 
-::
-    configure --enable-plugins
+  configure --enable-plugins
 
 Once built a program can be run with multiple plugins loaded each with
-their own arguments:
+their own arguments::
 
-::
-    $QEMU $OTHER_QEMU_ARGS \
+  $QEMU $OTHER_QEMU_ARGS \
       -plugin tests/plugin/libhowvec.so,arg=inline,arg=hint \
       -plugin tests/plugin/libhotblocks.so
 
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PULL 4/5] .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
                   ` (2 preceding siblings ...)
  2019-11-20 10:57 ` [PULL 3/5] docs/devel: update tcg-plugins.rst with API versioning details Alex Bennée
@ 2019-11-20 10:58 ` Alex Bennée
  2019-11-20 10:58 ` [PULL 5/5] tests/tcg: modify multiarch tests to work with clang Alex Bennée
  2019-11-21 12:45 ` [PULL for rc3 0/5] a few doc and testing tweaks Peter Maydell
  5 siblings, 0 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:58 UTC (permalink / raw)
  To: peter.maydell
  Cc: Fam Zheng, Philippe Mathieu-Daudé,
	Thomas Huth, Alex Bennée, qemu-devel

The older clangs are still struggling to build and run everything
withing the 50 minute timeout so lets lighten the load a bit more. We
still have coverage for GCC and hopefully no obscure 32 bit guest only
breakages slip through the cracks.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>

diff --git a/.travis.yml b/.travis.yml
index b9a026c8eeb..c09b6a00143 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -79,7 +79,7 @@ env:
     - BASE_CONFIG="--disable-docs --disable-tools"
     - TEST_CMD="make check V=1"
     # This is broadly a list of "mainline" softmmu targets which have support across the major distros
-    - MAIN_SOFTMMU_TARGETS="aarch64-softmmu,arm-softmmu,i386-softmmu,mips-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
+    - MAIN_SOFTMMU_TARGETS="aarch64-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
     - CCACHE_SLOPPINESS="include_file_ctime,include_file_mtime"
     - CCACHE_MAXSIZE=1G
 
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PULL 5/5] tests/tcg: modify multiarch tests to work with clang
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
                   ` (3 preceding siblings ...)
  2019-11-20 10:58 ` [PULL 4/5] .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS Alex Bennée
@ 2019-11-20 10:58 ` Alex Bennée
  2019-11-21 12:45 ` [PULL for rc3 0/5] a few doc and testing tweaks Peter Maydell
  5 siblings, 0 replies; 7+ messages in thread
From: Alex Bennée @ 2019-11-20 10:58 UTC (permalink / raw)
  To: peter.maydell
  Cc: Thomas Huth, Alex Bennée, Taylor Simpson, Richard Henderson,
	qemu-devel

From: Taylor Simpson <tsimpson@quicinc.com>

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <1574032465-12186-1-git-send-email-tsimpson@quicinc.com>
[AJB: tweak header line]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

diff --git a/tests/tcg/multiarch/float_helpers.c b/tests/tcg/multiarch/float_helpers.c
index 8ee7903c785..bc530e5732d 100644
--- a/tests/tcg/multiarch/float_helpers.c
+++ b/tests/tcg/multiarch/float_helpers.c
@@ -79,11 +79,9 @@ char *fmt_16(uint16_t num)
 
 #ifndef SNANF
 /* Signaling NaN macros, if supported.  */
-# if __GNUC_PREREQ(3, 3)
 #  define SNANF (__builtin_nansf (""))
 #  define SNAN (__builtin_nans (""))
 #  define SNANL (__builtin_nansl (""))
-# endif
 #endif
 
 static float f32_numbers[] = {
diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c
index 673d7c8a1c2..8a7c15cd312 100644
--- a/tests/tcg/multiarch/linux-test.c
+++ b/tests/tcg/multiarch/linux-test.c
@@ -485,7 +485,11 @@ static void test_signal(void)
     act.sa_flags = SA_SIGINFO;
     chk_error(sigaction(SIGSEGV, &act, NULL));
     if (setjmp(jmp_env) == 0) {
-        *(uint8_t *)0 = 0;
+        /*
+         * clang requires volatile or it will turn this into a
+         * call to abort() instead of forcing a SIGSEGV.
+         */
+        *(volatile uint8_t *)0 = 0;
     }
 
     act.sa_handler = SIG_DFL;
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PULL for rc3 0/5] a few doc and testing tweaks
  2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
                   ` (4 preceding siblings ...)
  2019-11-20 10:58 ` [PULL 5/5] tests/tcg: modify multiarch tests to work with clang Alex Bennée
@ 2019-11-21 12:45 ` Peter Maydell
  5 siblings, 0 replies; 7+ messages in thread
From: Peter Maydell @ 2019-11-21 12:45 UTC (permalink / raw)
  To: Alex Bennée; +Cc: QEMU Developers

On Wed, 20 Nov 2019 at 10:58, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> The following changes since commit 39e2821077e6dcf788b7c2a9ef50970ec7995437:
>
>   Update version for v4.2.0-rc2 release (2019-11-19 19:34:10 +0000)
>
> are available in the Git repository at:
>
>   https://github.com/stsquad/qemu.git tags/pull-rc3-testing-and-tcg-201119-1
>
> for you to fetch changes up to 22c30b2d20e828edadbd992c1d4c4bfd0f3433ba:
>
>   tests/tcg: modify multiarch tests to work with clang (2019-11-20 10:53:31 +0000)
>
> ----------------------------------------------------------------
> A few test and doc fixes:
>
>   - tweak DEBUG behaviour for vm-test-build
>   - rename and update plug docs for versioning
>   - slim down MAIN_SOFTMMU_TARGETS
>


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/4.2
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-11-21 12:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-20 10:57 [PULL for rc3 0/5] a few doc and testing tweaks Alex Bennée
2019-11-20 10:57 ` [PULL 1/5] tests/vm: make --interactive (and therefore DEBUG=1) unconditional Alex Bennée
2019-11-20 10:57 ` [PULL 2/5] docs/devel: rename plugins.rst to tcg-plugins.rst Alex Bennée
2019-11-20 10:57 ` [PULL 3/5] docs/devel: update tcg-plugins.rst with API versioning details Alex Bennée
2019-11-20 10:58 ` [PULL 4/5] .travis.yml: drop 32 bit systems from MAIN_SOFTMMU_TARGETS Alex Bennée
2019-11-20 10:58 ` [PULL 5/5] tests/tcg: modify multiarch tests to work with clang Alex Bennée
2019-11-21 12:45 ` [PULL for rc3 0/5] a few doc and testing tweaks Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).