* [PATCH] qga: Allow building of the guest agent without system emulators or tools
@ 2022-11-09 17:37 Thomas Huth
2022-11-09 17:50 ` Konstantin Kostiuk
2022-11-09 21:56 ` Philippe Mathieu-Daudé
0 siblings, 2 replies; 9+ messages in thread
From: Thomas Huth @ 2022-11-09 17:37 UTC (permalink / raw)
To: qemu-devel, Konstantin Kostiuk
Cc: qemu-trivial, Markus Armbruster, Michael Roth, Paolo Bonzini
If configuring with "--disable-system --disable-user --enable-guest-agent"
the linking currently fails with:
qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference to `qmp_command_name'
build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference to `qmp_command_is_enabled'
build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference to `qmp_has_success_response'
qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference to `qmp_for_each_command'
qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference to `qbase64_decode'
qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined reference to `unix_listen'
build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined reference to `socket_parse'
build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined reference to `socket_listen'
qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined reference to `qbase64_decode'
Let's make sure that we also compile and link the required files if
the system emulators have not been enabled.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
qapi/meson.build | 2 +-
stubs/meson.build | 2 +-
util/meson.build | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/qapi/meson.build b/qapi/meson.build
index 9a36c15c04..fbdb442fdf 100644
--- a/qapi/meson.build
+++ b/qapi/meson.build
@@ -13,7 +13,7 @@ util_ss.add(files(
if have_system
util_ss.add(files('qapi-type-helpers.c'))
endif
-if have_system or have_tools
+if have_system or have_tools or have_ga
util_ss.add(files(
'qmp-dispatch.c',
'qmp-event.c',
diff --git a/stubs/meson.build b/stubs/meson.build
index 4314161f5f..c96a74f095 100644
--- a/stubs/meson.build
+++ b/stubs/meson.build
@@ -49,7 +49,7 @@ stub_ss.add(files('vmstate.c'))
stub_ss.add(files('vm-stop.c'))
stub_ss.add(files('win32-kbd-hook.c'))
stub_ss.add(files('cpu-synchronize-state.c'))
-if have_block
+if have_block or have_ga
stub_ss.add(files('replay-tools.c'))
endif
if have_system
diff --git a/util/meson.build b/util/meson.build
index 59c1f467bb..b260539bd5 100644
--- a/util/meson.build
+++ b/util/meson.build
@@ -68,7 +68,7 @@ if have_system
util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
endif
-if have_block
+if have_block or have_ga
util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
util_ss.add(files('base64.c'))
util_ss.add(files('buffer.c'))
--
2.31.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-09 17:37 [PATCH] qga: Allow building of the guest agent without system emulators or tools Thomas Huth
@ 2022-11-09 17:50 ` Konstantin Kostiuk
2022-11-09 21:56 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 9+ messages in thread
From: Konstantin Kostiuk @ 2022-11-09 17:50 UTC (permalink / raw)
To: Thomas Huth
Cc: qemu-devel, qemu-trivial, Markus Armbruster, Michael Roth, Paolo Bonzini
[-- Attachment #1: Type: text/plain, Size: 3076 bytes --]
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
On Wed, Nov 9, 2022 at 7:37 PM Thomas Huth <thuth@redhat.com> wrote:
> If configuring with "--disable-system --disable-user --enable-guest-agent"
> the linking currently fails with:
>
> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference
> to `qmp_command_name'
> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference
> to `qmp_command_is_enabled'
> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference
> to `qmp_has_success_response'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference
> to `qmp_for_each_command'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference
> to `qbase64_decode'
> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined
> reference to `unix_listen'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined
> reference to `socket_parse'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined
> reference to `socket_listen'
> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined
> reference to `qbase64_decode'
>
> Let's make sure that we also compile and link the required files if
> the system emulators have not been enabled.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> qapi/meson.build | 2 +-
> stubs/meson.build | 2 +-
> util/meson.build | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/qapi/meson.build b/qapi/meson.build
> index 9a36c15c04..fbdb442fdf 100644
> --- a/qapi/meson.build
> +++ b/qapi/meson.build
> @@ -13,7 +13,7 @@ util_ss.add(files(
> if have_system
> util_ss.add(files('qapi-type-helpers.c'))
> endif
> -if have_system or have_tools
> +if have_system or have_tools or have_ga
> util_ss.add(files(
> 'qmp-dispatch.c',
> 'qmp-event.c',
> diff --git a/stubs/meson.build b/stubs/meson.build
> index 4314161f5f..c96a74f095 100644
> --- a/stubs/meson.build
> +++ b/stubs/meson.build
> @@ -49,7 +49,7 @@ stub_ss.add(files('vmstate.c'))
> stub_ss.add(files('vm-stop.c'))
> stub_ss.add(files('win32-kbd-hook.c'))
> stub_ss.add(files('cpu-synchronize-state.c'))
> -if have_block
> +if have_block or have_ga
> stub_ss.add(files('replay-tools.c'))
> endif
> if have_system
> diff --git a/util/meson.build b/util/meson.build
> index 59c1f467bb..b260539bd5 100644
> --- a/util/meson.build
> +++ b/util/meson.build
> @@ -68,7 +68,7 @@ if have_system
> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
> endif
>
> -if have_block
> +if have_block or have_ga
> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
> util_ss.add(files('base64.c'))
> util_ss.add(files('buffer.c'))
> --
> 2.31.1
>
>
[-- Attachment #2: Type: text/html, Size: 3896 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-09 17:37 [PATCH] qga: Allow building of the guest agent without system emulators or tools Thomas Huth
2022-11-09 17:50 ` Konstantin Kostiuk
@ 2022-11-09 21:56 ` Philippe Mathieu-Daudé
2022-11-10 5:49 ` Markus Armbruster
2022-11-10 8:31 ` Thomas Huth
1 sibling, 2 replies; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-09 21:56 UTC (permalink / raw)
To: Thomas Huth, qemu-devel, Konstantin Kostiuk
Cc: qemu-trivial, Markus Armbruster, Michael Roth, Paolo Bonzini
On 9/11/22 18:37, Thomas Huth wrote:
> If configuring with "--disable-system --disable-user --enable-guest-agent"
> the linking currently fails with:
>
> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference to `qmp_command_name'
> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference to `qmp_command_is_enabled'
> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference to `qmp_has_success_response'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference to `qmp_for_each_command'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference to `qbase64_decode'
> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined reference to `unix_listen'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined reference to `socket_parse'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined reference to `socket_listen'
> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined reference to `qbase64_decode'
>
> Let's make sure that we also compile and link the required files if
> the system emulators have not been enabled.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> qapi/meson.build | 2 +-
> stubs/meson.build | 2 +-
> util/meson.build | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
> diff --git a/util/meson.build b/util/meson.build
> index 59c1f467bb..b260539bd5 100644
> --- a/util/meson.build
> +++ b/util/meson.build
> @@ -68,7 +68,7 @@ if have_system
> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
> endif
>
> -if have_block
> +if have_block or have_ga
> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
> util_ss.add(files('base64.c'))
> util_ss.add(files('buffer.c'))
This can be eventually reduced for 'have_ga':
-- 8< --
diff --git a/util/meson.build b/util/meson.build
index 59c1f467bbe..690e8be903e 100644
--- a/util/meson.build
+++ b/util/meson.build
@@ -68,28 +68,30 @@
util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
endif
-if have_block
+if have_block or have_ga
util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
util_ss.add(files('base64.c'))
+
util_ss.add(files('coroutine-@0@.c'.format(config_host['CONFIG_COROUTINE_BACKEND'])))
+ util_ss.add(files('lockcnt.c'))
+ util_ss.add(files('main-loop.c'))
+ util_ss.add(files('qemu-coroutine.c', 'qemu-coroutine-lock.c',
'qemu-coroutine-io.c'))
+ util_ss.add(files('qemu-coroutine-sleep.c'))
+ util_ss.add(files('qemu-co-shared-resource.c'))
+ util_ss.add(files('qemu-co-timeout.c'))
+ util_ss.add(files('iov.c', 'qemu-sockets.c', 'uri.c'))
+ util_ss.add(files('thread-pool.c', 'qemu-timer.c'))
+endif
+if have_block
util_ss.add(files('buffer.c'))
util_ss.add(files('bufferiszero.c'))
-
util_ss.add(files('coroutine-@0@.c'.format(config_host['CONFIG_COROUTINE_BACKEND'])))
util_ss.add(files('hbitmap.c'))
util_ss.add(files('hexdump.c'))
util_ss.add(files('iova-tree.c'))
- util_ss.add(files('iov.c', 'qemu-sockets.c', 'uri.c'))
- util_ss.add(files('lockcnt.c'))
- util_ss.add(files('main-loop.c'))
util_ss.add(files('nvdimm-utils.c'))
- util_ss.add(files('qemu-coroutine.c', 'qemu-coroutine-lock.c',
'qemu-coroutine-io.c'))
util_ss.add(when: 'CONFIG_LINUX', if_true: [
files('vhost-user-server.c'), vhost_user
])
util_ss.add(files('block-helpers.c'))
- util_ss.add(files('qemu-coroutine-sleep.c'))
- util_ss.add(files('qemu-co-shared-resource.c'))
- util_ss.add(files('qemu-co-timeout.c'))
- util_ss.add(files('thread-pool.c', 'qemu-timer.c'))
util_ss.add(files('readline.c'))
util_ss.add(files('throttle.c'))
util_ss.add(files('timed-average.c'))
---
Regardless:
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-09 21:56 ` Philippe Mathieu-Daudé
@ 2022-11-10 5:49 ` Markus Armbruster
2022-11-10 8:35 ` Thomas Huth
2022-11-10 8:31 ` Thomas Huth
1 sibling, 1 reply; 9+ messages in thread
From: Markus Armbruster @ 2022-11-10 5:49 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Thomas Huth, qemu-devel, Konstantin Kostiuk, qemu-trivial,
Michael Roth, Paolo Bonzini
Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> On 9/11/22 18:37, Thomas Huth wrote:
>> If configuring with "--disable-system --disable-user --enable-guest-agent"
>> the linking currently fails with:
>>
>> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
>> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference to `qmp_command_name'
>> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference to `qmp_command_is_enabled'
>> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference to `qmp_has_success_response'
>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
>> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference to `qmp_for_each_command'
>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
>> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference to `qbase64_decode'
>> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined reference to `unix_listen'
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined reference to `socket_parse'
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined reference to `socket_listen'
>> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
>> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined reference to `qbase64_decode'
>>
>> Let's make sure that we also compile and link the required files if
>> the system emulators have not been enabled.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
I wonder for how long this has been broken.
Should we add such a configuration to CI?
>> ---
>> qapi/meson.build | 2 +-
>> stubs/meson.build | 2 +-
>> util/meson.build | 2 +-
>> 3 files changed, 3 insertions(+), 3 deletions(-)
>
>> diff --git a/util/meson.build b/util/meson.build
>> index 59c1f467bb..b260539bd5 100644
>> --- a/util/meson.build
>> +++ b/util/meson.build
>> @@ -68,7 +68,7 @@ if have_system
>> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
>> endif
>>
>> -if have_block
>> +if have_block or have_ga
>> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
>> util_ss.add(files('base64.c'))
>> util_ss.add(files('buffer.c'))
>
> This can be eventually reduced for 'have_ga':
>
> -- 8< --
> diff --git a/util/meson.build b/util/meson.build
> index 59c1f467bbe..690e8be903e 100644
> --- a/util/meson.build
> +++ b/util/meson.build
> @@ -68,28 +68,30 @@
> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
> endif
>
> -if have_block
> +if have_block or have_ga
> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
> util_ss.add(files('base64.c'))
> +
> util_ss.add(files('coroutine-@0@.c'.format(config_host['CONFIG_COROUTINE_BACKEND'])))
> + util_ss.add(files('lockcnt.c'))
> + util_ss.add(files('main-loop.c'))
> + util_ss.add(files('qemu-coroutine.c', 'qemu-coroutine-lock.c',
> 'qemu-coroutine-io.c'))
> + util_ss.add(files('qemu-coroutine-sleep.c'))
> + util_ss.add(files('qemu-co-shared-resource.c'))
> + util_ss.add(files('qemu-co-timeout.c'))
> + util_ss.add(files('iov.c', 'qemu-sockets.c', 'uri.c'))
> + util_ss.add(files('thread-pool.c', 'qemu-timer.c'))
> +endif
> +if have_block
> util_ss.add(files('buffer.c'))
> util_ss.add(files('bufferiszero.c'))
> -
> util_ss.add(files('coroutine-@0@.c'.format(config_host['CONFIG_COROUTINE_BACKEND'])))
> util_ss.add(files('hbitmap.c'))
> util_ss.add(files('hexdump.c'))
> util_ss.add(files('iova-tree.c'))
> - util_ss.add(files('iov.c', 'qemu-sockets.c', 'uri.c'))
> - util_ss.add(files('lockcnt.c'))
> - util_ss.add(files('main-loop.c'))
> util_ss.add(files('nvdimm-utils.c'))
> - util_ss.add(files('qemu-coroutine.c', 'qemu-coroutine-lock.c',
> 'qemu-coroutine-io.c'))
> util_ss.add(when: 'CONFIG_LINUX', if_true: [
> files('vhost-user-server.c'), vhost_user
> ])
> util_ss.add(files('block-helpers.c'))
> - util_ss.add(files('qemu-coroutine-sleep.c'))
> - util_ss.add(files('qemu-co-shared-resource.c'))
> - util_ss.add(files('qemu-co-timeout.c'))
> - util_ss.add(files('thread-pool.c', 'qemu-timer.c'))
> util_ss.add(files('readline.c'))
> util_ss.add(files('throttle.c'))
> util_ss.add(files('timed-average.c'))
Better!
> ---
>
> Regardless:
>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-09 21:56 ` Philippe Mathieu-Daudé
2022-11-10 5:49 ` Markus Armbruster
@ 2022-11-10 8:31 ` Thomas Huth
1 sibling, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-11-10 8:31 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel, Konstantin Kostiuk
Cc: qemu-trivial, Markus Armbruster, Michael Roth, Paolo Bonzini
On 09/11/2022 22.56, Philippe Mathieu-Daudé wrote:
> On 9/11/22 18:37, Thomas Huth wrote:
>> If configuring with "--disable-system --disable-user --enable-guest-agent"
>> the linking currently fails with:
>>
>> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
>> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference
>> to `qmp_command_name'
>> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference
>> to `qmp_command_is_enabled'
>> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference
>> to `qmp_has_success_response'
>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
>> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference
>> to `qmp_for_each_command'
>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
>> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference
>> to `qbase64_decode'
>> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined
>> reference to `unix_listen'
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined
>> reference to `socket_parse'
>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined
>> reference to `socket_listen'
>> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
>> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined
>> reference to `qbase64_decode'
>>
>> Let's make sure that we also compile and link the required files if
>> the system emulators have not been enabled.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> qapi/meson.build | 2 +-
>> stubs/meson.build | 2 +-
>> util/meson.build | 2 +-
>> 3 files changed, 3 insertions(+), 3 deletions(-)
>
>> diff --git a/util/meson.build b/util/meson.build
>> index 59c1f467bb..b260539bd5 100644
>> --- a/util/meson.build
>> +++ b/util/meson.build
>> @@ -68,7 +68,7 @@ if have_system
>> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
>> endif
>> -if have_block
>> +if have_block or have_ga
>> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
>> util_ss.add(files('base64.c'))
>> util_ss.add(files('buffer.c'))
>
> This can be eventually reduced for 'have_ga':
>
> -- 8< --
> diff --git a/util/meson.build b/util/meson.build
> index 59c1f467bbe..690e8be903e 100644
> --- a/util/meson.build
> +++ b/util/meson.build
> @@ -68,28 +68,30 @@
> util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
> endif
>
> -if have_block
> +if have_block or have_ga
> util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
Thanks for the idea! By breaking up the lines that contain multiple files,
it seems that it can even be refined further.
I'll send a v2.
Thomas
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-10 5:49 ` Markus Armbruster
@ 2022-11-10 8:35 ` Thomas Huth
2022-11-10 9:49 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 9+ messages in thread
From: Thomas Huth @ 2022-11-10 8:35 UTC (permalink / raw)
To: Markus Armbruster, Philippe Mathieu-Daudé
Cc: qemu-devel, Konstantin Kostiuk, qemu-trivial, Michael Roth,
Paolo Bonzini
On 10/11/2022 06.49, Markus Armbruster wrote:
> Philippe Mathieu-Daudé <philmd@linaro.org> writes:
>
>> On 9/11/22 18:37, Thomas Huth wrote:
>>> If configuring with "--disable-system --disable-user --enable-guest-agent"
>>> the linking currently fails with:
>>>
>>> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
>>> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference to `qmp_command_name'
>>> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference to `qmp_command_is_enabled'
>>> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference to `qmp_has_success_response'
>>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
>>> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference to `qmp_for_each_command'
>>> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
>>> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference to `qbase64_decode'
>>> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
>>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined reference to `unix_listen'
>>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined reference to `socket_parse'
>>> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined reference to `socket_listen'
>>> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
>>> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined reference to `qbase64_decode'
>>>
>>> Let's make sure that we also compile and link the required files if
>>> the system emulators have not been enabled.
>>>
>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>
> I wonder for how long this has been broken.
>
> Should we add such a configuration to CI?
Some month ago, I'd say: Sure! ... but considering that gitlab now limits
the available CI minutes and that apparently nobody really cares about this
configuration (otherwise someone would have complained about this earlier),
I think it's not that important to have a separate CI test for this
configuration.
Thomas
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-10 8:35 ` Thomas Huth
@ 2022-11-10 9:49 ` Philippe Mathieu-Daudé
2022-11-10 9:57 ` Thomas Huth
0 siblings, 1 reply; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-10 9:49 UTC (permalink / raw)
To: Thomas Huth, Markus Armbruster
Cc: qemu-devel, Konstantin Kostiuk, qemu-trivial, Michael Roth,
Paolo Bonzini
On 10/11/22 09:35, Thomas Huth wrote:
> On 10/11/2022 06.49, Markus Armbruster wrote:
>> Philippe Mathieu-Daudé <philmd@linaro.org> writes:
>>
>>> On 9/11/22 18:37, Thomas Huth wrote:
>>>> If configuring with "--disable-system --disable-user
>>>> --enable-guest-agent"
>>>> the linking currently fails with:
>>>>
>>>> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
>>>> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined
>>>> reference to `qmp_command_name'
>>>> Let's make sure that we also compile and link the required files if
>>>> the system emulators have not been enabled.
>>>>
>>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>
>> I wonder for how long this has been broken.
>>
>> Should we add such a configuration to CI?
>
> Some month ago, I'd say: Sure! ... but considering that gitlab now
> limits the available CI minutes and that apparently nobody really cares
> about this configuration (otherwise someone would have complained about
> this earlier), I think it's not that important to have a separate CI
> test for this configuration.
We could eventually add a job restricted to qemu-project CI (not in
forks).
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-10 9:49 ` Philippe Mathieu-Daudé
@ 2022-11-10 9:57 ` Thomas Huth
2022-11-10 10:05 ` Daniel P. Berrangé
0 siblings, 1 reply; 9+ messages in thread
From: Thomas Huth @ 2022-11-10 9:57 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, Markus Armbruster
Cc: qemu-devel, Konstantin Kostiuk, qemu-trivial, Michael Roth,
Paolo Bonzini
On 10/11/2022 10.49, Philippe Mathieu-Daudé wrote:
> On 10/11/22 09:35, Thomas Huth wrote:
>> On 10/11/2022 06.49, Markus Armbruster wrote:
>>> Philippe Mathieu-Daudé <philmd@linaro.org> writes:
>>>
>>>> On 9/11/22 18:37, Thomas Huth wrote:
>>>>> If configuring with "--disable-system --disable-user --enable-guest-agent"
>>>>> the linking currently fails with:
>>>>>
>>>>> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
>>>>> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined
>>>>> reference to `qmp_command_name'
>
>>>>> Let's make sure that we also compile and link the required files if
>>>>> the system emulators have not been enabled.
>>>>>
>>>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>>
>>> I wonder for how long this has been broken.
>>>
>>> Should we add such a configuration to CI?
>>
>> Some month ago, I'd say: Sure! ... but considering that gitlab now limits
>> the available CI minutes and that apparently nobody really cares about
>> this configuration (otherwise someone would have complained about this
>> earlier), I think it's not that important to have a separate CI test for
>> this configuration.
>
> We could eventually add a job restricted to qemu-project CI (not in
> forks).
The problem is: Who's going to create such jobs? Someone needs to write the
yaml stuff and test it first. And at least I pretty much lost motivation to
work on new yaml stuff, since this burns my private CI minutes (which I
rather need for my maintainer duties instead).
Thomas
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] qga: Allow building of the guest agent without system emulators or tools
2022-11-10 9:57 ` Thomas Huth
@ 2022-11-10 10:05 ` Daniel P. Berrangé
0 siblings, 0 replies; 9+ messages in thread
From: Daniel P. Berrangé @ 2022-11-10 10:05 UTC (permalink / raw)
To: Thomas Huth
Cc: Philippe Mathieu-Daudé,
Markus Armbruster, qemu-devel, Konstantin Kostiuk, qemu-trivial,
Michael Roth, Paolo Bonzini
On Thu, Nov 10, 2022 at 10:57:27AM +0100, Thomas Huth wrote:
> On 10/11/2022 10.49, Philippe Mathieu-Daudé wrote:
> > On 10/11/22 09:35, Thomas Huth wrote:
> > > On 10/11/2022 06.49, Markus Armbruster wrote:
> > > > Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> > > >
> > > > > On 9/11/22 18:37, Thomas Huth wrote:
> > > > > > If configuring with "--disable-system --disable-user --enable-guest-agent"
> > > > > > the linking currently fails with:
> > > > > >
> > > > > > qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
> > > > > > build/../../home/thuth/devel/qemu/qga/commands.c:70:
> > > > > > undefined reference to `qmp_command_name'
> >
> > > > > > Let's make sure that we also compile and link the required files if
> > > > > > the system emulators have not been enabled.
> > > > > >
> > > > > > Signed-off-by: Thomas Huth <thuth@redhat.com>
> > > >
> > > > I wonder for how long this has been broken.
> > > >
> > > > Should we add such a configuration to CI?
> > >
> > > Some month ago, I'd say: Sure! ... but considering that gitlab now
> > > limits the available CI minutes and that apparently nobody really
> > > cares about this configuration (otherwise someone would have
> > > complained about this earlier), I think it's not that important to
> > > have a separate CI test for this configuration.
> >
> > We could eventually add a job restricted to qemu-project CI (not in
> > forks).
>
> The problem is: Who's going to create such jobs? Someone needs to write the
> yaml stuff and test it first. And at least I pretty much lost motivation to
> work on new yaml stuff, since this burns my private CI minutes (which I
> rather need for my maintainer duties instead).
Top tip: if you're working on GitLab CI changes, create a separate
QEMU fork in a different namespace for your adhoc testing, separate
from your normal maintainer work.
CI minutes are limited per namespace, ie group or user account, and
AFAIK, there is no limit on the number of groups you can create.
eg, create a group called /thuth-ci, and fork QEMU into that and
you've doubled the number of CI minutes available, so you can afford
to mess around with CI changes and not risk ability to do your other
normal work.
Now of course this ability to create many groups can be abused and
I expect GitLab would take a dim view of such abuse. So I would only
use this creation of extra groups for this very specific use case of
needing to battle test CI YAML changes.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2022-11-10 10:05 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-09 17:37 [PATCH] qga: Allow building of the guest agent without system emulators or tools Thomas Huth
2022-11-09 17:50 ` Konstantin Kostiuk
2022-11-09 21:56 ` Philippe Mathieu-Daudé
2022-11-10 5:49 ` Markus Armbruster
2022-11-10 8:35 ` Thomas Huth
2022-11-10 9:49 ` Philippe Mathieu-Daudé
2022-11-10 9:57 ` Thomas Huth
2022-11-10 10:05 ` Daniel P. Berrangé
2022-11-10 8:31 ` Thomas Huth
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.