diff mbox series

[v2,17/21] tests: Fixes test-io-channel-socket.c tests under msys2/mingw

Message ID 20200909094617.1582-18-luoyonggang@gmail.com (mailing list archive)
State New, archived
Headers show
Series W32, W64 msys2/mingw patches | expand

Commit Message

Yonggang Luo Sept. 9, 2020, 9:46 a.m. UTC
Currently test-io-channel-socket doesn't init with
qemu_init_main_loop
and that's cause the qemu_aio_context not inited,
and the following is the stack when null pointer accessed:

qemu_fd_register (c:\work\xemu\qemu\util\main-loop.c:336)
qemu_try_set_nonblock (c:\work\xemu\qemu\util\oslib-win32.c:224)
qemu_set_nonblock (c:\work\xemu\qemu\util\oslib-win32.c:230)
socket_can_bind_connect (c:\work\xemu\qemu\tests\socket-helpers.c:93)
socket_check_protocol_support (c:\work\xemu\qemu\tests\socket-helpers.c:141)
main (c:\work\xemu\qemu\tests\test-io-channel-socket.c:568)
__tmainCRTStartup (@__tmainCRTStartup:142)
mainCRTStartup (@1400014f6..140001539:3)
BaseThreadInitThunk (@BaseThreadInitThunk:9)
RtlUserThreadStart (@RtlUserThreadStart:12)

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
---
 tests/test-io-channel-socket.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Daniel P. Berrangé Sept. 9, 2020, 1:08 p.m. UTC | #1
On Wed, Sep 09, 2020 at 05:46:13PM +0800, Yonggang Luo wrote:
> Currently test-io-channel-socket doesn't init with
> qemu_init_main_loop
> and that's cause the qemu_aio_context not inited,
> and the following is the stack when null pointer accessed:
> 
> qemu_fd_register (c:\work\xemu\qemu\util\main-loop.c:336)
> qemu_try_set_nonblock (c:\work\xemu\qemu\util\oslib-win32.c:224)
> qemu_set_nonblock (c:\work\xemu\qemu\util\oslib-win32.c:230)
> socket_can_bind_connect (c:\work\xemu\qemu\tests\socket-helpers.c:93)
> socket_check_protocol_support (c:\work\xemu\qemu\tests\socket-helpers.c:141)
> main (c:\work\xemu\qemu\tests\test-io-channel-socket.c:568)
> __tmainCRTStartup (@__tmainCRTStartup:142)
> mainCRTStartup (@1400014f6..140001539:3)
> BaseThreadInitThunk (@BaseThreadInitThunk:9)
> RtlUserThreadStart (@RtlUserThreadStart:12)
> 
> Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
> ---
>  tests/test-io-channel-socket.c | 2 ++
>  1 file changed, 2 insertions(+)

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


Regards,
Daniel
diff mbox series

Patch

diff --git a/tests/test-io-channel-socket.c b/tests/test-io-channel-socket.c
index d43083a766..743577d744 100644
--- a/tests/test-io-channel-socket.c
+++ b/tests/test-io-channel-socket.c
@@ -25,6 +25,7 @@ 
 #include "socket-helpers.h"
 #include "qapi/error.h"
 #include "qemu/module.h"
+#include "qemu/main-loop.h"
 
 
 static void test_io_channel_set_socket_bufs(QIOChannel *src,
@@ -556,6 +557,7 @@  int main(int argc, char **argv)
     bool has_ipv4, has_ipv6;
 
     module_call_init(MODULE_INIT_QOM);
+    qemu_init_main_loop(&error_abort);
     socket_init();
 
     g_test_init(&argc, &argv, NULL);