Akihiko Odaki
bab6a301c5
ui/cocoa: Run qemu_init in the main thread
...
This work is based on:
https://patchew.org/QEMU/20220317125534.38706-1-philippe.mathieu.daude@gmail.com/
Simplify the initialization dance by running qemu_init() in the main
thread before the Cocoa event loop starts. The secondary thread only
runs only qemu_main_loop() and qemu_cleanup().
This fixes a case where addRemovableDevicesMenuItems() calls
qmp_query_block() while expecting the main thread to still hold
the BQL.
Overriding the code after calling qemu_init() is done by dynamically
replacing a function pointer variable, qemu_main when initializing
ui/cocoa, which unifies the static implementation of main() for
builds with ui/cocoa and ones without ui/cocoa.
Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Message-Id: <20220819132756.74641-2-akihiko.odaki@gmail.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2022-09-23 14:36:33 +02:00
..
2022-09-23 14:36:33 +02:00
2022-08-29 15:28:51 +02:00
2022-08-29 15:29:13 +02:00
2022-04-06 14:31:55 +02:00
2022-05-03 15:16:51 +04:00
2021-07-08 14:41:59 -05:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-07-14 16:24:38 +02:00
2022-05-03 09:13:17 -07:00
2022-07-14 16:24:38 +02:00
2022-07-18 13:25:13 +01:00
2022-06-09 19:32:49 -04:00
2022-09-20 12:34:31 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-08-25 15:16:13 +02:00
2021-01-29 15:54:42 +00:00
2021-01-29 15:54:42 +00:00
2021-01-29 15:54:44 +00:00
2022-04-06 14:31:55 +02:00
2022-08-25 15:24:09 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-08-29 15:28:51 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-09-20 11:23:02 +02:00
2022-08-29 15:28:51 +02:00
2022-05-03 15:16:51 +04:00
2021-06-17 07:10:32 -05:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-09-20 11:23:02 +02:00
2022-05-12 13:03:25 +02:00
2022-05-03 15:16:51 +04:00
2022-09-19 15:12:28 +02:00
2022-05-03 15:16:51 +04:00
2022-09-20 12:34:31 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-08-25 15:24:09 +02:00
2022-05-03 15:16:51 +04:00
2022-09-20 12:34:31 +02:00
2022-04-06 14:31:55 +02:00
2021-05-14 12:28:01 +02:00
2022-05-03 15:16:51 +04:00
2022-03-08 18:46:48 +01:00
2022-08-25 15:16:13 +02:00
2022-05-28 11:42:56 +02:00
2022-05-28 11:42:56 +02:00
2022-05-03 15:16:51 +04:00
2022-08-25 15:16:13 +02:00
2022-05-25 10:31:33 +02:00
2022-05-03 15:16:51 +04:00
2022-02-08 10:56:29 +00:00
2022-08-25 15:24:09 +02:00
2022-08-29 15:28:51 +02:00
2021-07-08 14:42:00 -05:00
2022-05-03 15:16:51 +04:00
2022-08-25 15:24:09 +02:00
2022-08-01 11:58:02 +02:00
2022-08-25 15:24:09 +02:00
2022-08-25 15:24:09 +02:00
2022-08-25 15:24:09 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-07-18 13:20:14 +01:00
2022-09-19 15:12:28 +02:00
2020-10-27 11:10:32 +00:00
2022-06-03 08:03:28 +02:00
2022-04-06 14:31:43 +02:00
2022-06-10 14:32:35 +01:00
2022-05-03 15:16:51 +04:00
2020-11-20 13:34:22 +01:00
2022-05-03 15:16:51 +04:00
2022-05-09 11:47:55 +01:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-08-29 15:28:51 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-07-20 12:15:08 +01:00
2022-08-25 15:16:13 +02:00
2022-05-03 15:16:51 +04:00
2022-08-29 15:28:51 +02:00
2022-08-16 11:36:21 +02:00
2022-05-03 15:16:51 +04:00
2022-08-25 15:24:09 +02:00
2022-04-06 14:31:55 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2021-03-08 17:20:03 +00:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2021-12-22 08:13:05 +01:00
2022-04-06 14:31:55 +02:00
2021-06-17 07:10:32 -05:00
2022-05-03 15:16:51 +04:00
2021-08-31 17:33:11 -04:00
2021-08-31 17:33:12 -04:00
2022-05-03 15:16:51 +04:00
2021-06-03 16:43:27 +01:00
2020-03-05 12:18:33 -05:00
2022-05-03 15:16:51 +04:00
2021-08-31 17:33:11 -04:00
2022-05-03 15:16:51 +04:00
2021-08-31 17:33:11 -04:00
2021-08-31 17:33:10 -04:00
2020-03-05 12:18:39 -05:00
2022-05-03 15:16:51 +04:00
2020-03-05 12:18:39 -05:00
2022-05-03 15:16:51 +04:00
2020-06-26 06:45:29 -04:00
2022-05-12 12:07:06 +02:00
2022-08-25 15:16:13 +02:00
2022-06-16 12:44:52 +02:00
2022-05-12 12:07:06 +02:00
2022-03-06 05:08:23 -05:00
2022-05-03 15:16:51 +04:00
2022-05-12 12:07:06 +02:00
2022-05-12 12:07:06 +02:00
2021-06-04 13:47:08 +02:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00
2022-05-03 15:16:51 +04:00