diff mbox series

[RFC,3/3] tests/qtest/vnc-display-test: Disable on Darwin

Message ID 20230119120514.28778-4-philmd@linaro.org
State Superseded
Headers show
Series tests/qtest/vnc-display-test: Silent warnings & explicit machine | expand

Commit Message

Philippe Mathieu-Daudé Jan. 19, 2023, 12:05 p.m. UTC
This test is failing in gtk-vnc on Darwin:

  $ make check-qtest-aarch64
  ...
  19/20 qemu:qtest+qtest-aarch64 / qtest-aarch64/vnc-display-test
  ERROR **: 10:42:35.488: vnc-error: Unsupported auth type 17973672

While QEMU picks the sigaltstack coroutine backend, gtk-vnc uses
the ucontext coroutine backend, which might be broken on Darwin.

Disable this test (current problem being investigated in this thread:
https://lore.kernel.org/qemu-devel/Y8kw6X6keB5l53nl@redhat.com/).

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 tests/qtest/vnc-display-test.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Daniel P. Berrangé Jan. 20, 2023, 9:09 a.m. UTC | #1
On Thu, Jan 19, 2023 at 01:05:14PM +0100, Philippe Mathieu-Daudé wrote:
> This test is failing in gtk-vnc on Darwin:
> 
>   $ make check-qtest-aarch64
>   ...
>   19/20 qemu:qtest+qtest-aarch64 / qtest-aarch64/vnc-display-test
>   ERROR **: 10:42:35.488: vnc-error: Unsupported auth type 17973672
> 
> While QEMU picks the sigaltstack coroutine backend, gtk-vnc uses
> the ucontext coroutine backend, which might be broken on Darwin.

s/might be/is completely and utterly/

The struct ucontext_t definition on macOS aarch64 is too small,
and so getcontext() smashes past the end of the struct overwriting
whatever follows the ucontext_t struct.



> 
> Disable this test (current problem being investigated in this thread:
> https://lore.kernel.org/qemu-devel/Y8kw6X6keB5l53nl@redhat.com/).
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  tests/qtest/vnc-display-test.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


But keep an eye on this bug:

  https://github.com/Homebrew/homebrew-core/issues/115413

if it gets fixed before you send a PULL request, we can drop
this patch, or failing that, revert it later.

With regards,
Daniel
diff mbox series

Patch

diff --git a/tests/qtest/vnc-display-test.c b/tests/qtest/vnc-display-test.c
index df468c7b22..e52a4326ec 100644
--- a/tests/qtest/vnc-display-test.c
+++ b/tests/qtest/vnc-display-test.c
@@ -19,7 +19,7 @@  typedef struct Test {
     GMainLoop *loop;
 } Test;
 
-#if !defined(WIN32)
+#if !defined(WIN32) && !defined(CONFIG_DARWIN)
 
 static void on_vnc_error(VncConnection* self,
                          const char* msg)
@@ -41,6 +41,9 @@  test_setup(Test *test)
 #ifdef WIN32
     g_test_skip("Not supported on Windows yet");
     return false;
+#elif defined(CONFIG_DARWIN)
+    g_test_skip("Broken on Darwin");
+    return false;
 #else
     int pair[2];