From: Ilya Leoshkevich <iii@linux.ibm.com>
To: Michael Tokarev <mjt@tls.msk.ru>
Cc: "Alex Bennée" <alex.bennee@linaro.org>,
qemu-devel@nongnu.org, "Peter Xu" <peterx@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Weiwei Li" <liwei1518@gmail.com>,
qemu-arm@nongnu.org, "Nicholas Piggin" <npiggin@gmail.com>,
"Liu Zhiwei" <zhiwei_liu@linux.alibaba.com>,
"Bin Meng" <bmeng.cn@gmail.com>,
"Tyrone Ting" <kfting@nuvoton.com>,
"Hao Wu" <wuhaotsh@google.com>, "Kyle Evans" <kevans@freebsd.org>,
"Alistair Francis" <alistair.francis@wdc.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Laurent Vivier" <laurent@vivier.eu>,
"Riku Voipio" <riku.voipio@iki.fi>,
"Harsh Prateek Bora" <harshpb@linux.ibm.com>,
"Fabiano Rosas" <farosas@suse.de>,
"Alexandre Iooss" <erdnaxe@crans.org>,
"Laurent Vivier" <lvivier@redhat.com>,
"Daniel Henrique Barboza" <danielhb413@gmail.com>,
"Warner Losh" <imp@bsdimp.com>,
"Pierrick Bouvier" <pierrick.bouvier@linaro.org>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Mahmoud Mandour" <ma.mandourr@gmail.com>,
qemu-ppc@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
qemu-rust@nongnu.org, qemu-riscv@nongnu.org
Subject: Re: [PATCH v2 11/17] gdbstub: Try unlinking the unix socket before binding
Date: Tue, 20 May 2025 23:21:37 +0100 [thread overview]
Message-ID: <56e0a35b5c53b416db130c414cd0f3d6@linux.ibm.com> (raw)
In-Reply-To: <ee091002-a552-49fe-ae5e-8916937dba15@tls.msk.ru>
On 2025-05-20 15:50, Michael Tokarev wrote:
> 07.02.2025 18:31, Alex Bennée wrote:
>> From: Ilya Leoshkevich <iii@linux.ibm.com>
>>
>> In case an emulated process execve()s another emulated process, bind()
>> will fail, because the socket already exists. So try deleting it. Use
>> the existing unix_listen() function which does this. Link qemu-user
>> with qemu-sockets.c and add the monitor_get_fd() stub.
>>
>> Note that it is not possible to handle this in do_execv(): deleting
>> gdbserver_user_state.socket_path before safe_execve() is not correct,
>> because the latter may fail, and afterwards we may lose control.
>
> Please note: this is linux-user stuff, which is usually linked
> statically.
> By linking it with qemu-sockets, we basically broke static linking,
> because
> qemu-sockets uses getaddrinfo() &Co. The previous code, I think, was
> there
> for a reason, - to avoid this linkage.
>
> How do you think about reverting this one and addressing the original
> problem without using qemu-sockets?
>
> Alternatively, it might be possible to split qemu-sockets.c into
> unix-related
> stuff and generic stuff.
>
> Thanks,
>
> /mjt
I can split it.
However, wasn't it already broken in this regard?
With fccb744f41c69fec6fd92225fe907c6e69de5d44^ I get:
[2/2] Linking target qemu-s390x
/usr/bin/ld: /usr/lib64/libglib-2.0.a(gutils.c.o): in function
`g_get_user_database_entry':
(.text+0xeb): warning: Using 'getpwnam_r' in statically linked
applications requires at runtime the shared libraries from the glibc
version used for linking
/usr/bin/ld: (.text+0x2be): warning: Using 'getpwuid' in statically
linked applications requires at runtime the shared libraries from the
glibc version used for linking
/usr/bin/ld: (.text+0x134): warning: Using 'getpwuid_r' in statically
linked applications requires at runtime the shared libraries from the
glibc version used for linking
This comes from glib, but the ultimate result is still the same.
Also, what are the symptoms of the breakage? IIUC as long as execution
does not reach getaddrinfo(), which it in this case should not, because
it is used only on inet paths, there should not be any issues, right?
In any case, the new warning is annoying and I better fix it for this
reason alone.
next prev parent reply other threads:[~2025-05-20 22:22 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-07 15:30 [PATCH v2 00/17] maintainer updates for feb25 (qtest, gdbstub, plugins) pre-PR Alex Bennée
2025-02-07 15:30 ` [PATCH v2 01/17] tests/docker: replicate the check-rust-tools-nightly CI job Alex Bennée
2025-02-07 18:06 ` Richard Henderson
2025-02-07 15:30 ` [PATCH v2 02/17] tests/qtest: don't attempt to clock_step while waiting for virtio ISR Alex Bennée
2025-02-07 16:02 ` Thomas Huth
2025-02-07 15:30 ` [PATCH v2 03/17] tests/qtest: don't step clock at start of npcm7xx periodic IRQ test Alex Bennée
2025-02-07 15:30 ` [PATCH v2 04/17] tests/qtest: simplify qtest_process_inbuf Alex Bennée
2025-02-07 15:31 ` [PATCH v2 05/17] tests/qtest: rename qtest_send_prefix and roll-up into qtest_send Alex Bennée
2025-02-07 16:04 ` Thomas Huth
2025-02-07 15:31 ` [PATCH v2 06/17] tests/qtest: tighten up the checks on clock_step Alex Bennée
2025-02-07 15:31 ` [PATCH v2 07/17] Revert "util/timer: avoid deadlock when shutting down" Alex Bennée
2025-02-07 15:31 ` [PATCH v2 08/17] tests/qtest/migration: Add --full option Alex Bennée
2025-02-07 15:31 ` [PATCH v2 09/17] tests/qtest/migration: Pick smoke tests Alex Bennée
2025-02-07 15:31 ` [PATCH v2 10/17] gdbstub: Allow the %d placeholder in the socket path Alex Bennée
2025-02-07 15:31 ` [PATCH v2 11/17] gdbstub: Try unlinking the unix socket before binding Alex Bennée
2025-05-20 14:50 ` Michael Tokarev
2025-05-20 15:52 ` Alex Bennée
2025-05-20 16:01 ` Peter Maydell
2025-05-20 22:21 ` Ilya Leoshkevich [this message]
2025-05-21 6:22 ` Alex Bennée
2025-05-21 15:34 ` Peter Maydell
2025-05-21 15:37 ` Daniel P. Berrangé
2025-05-21 15:41 ` Peter Maydell
2025-02-07 15:31 ` [PATCH v2 12/17] user: Introduce user/signal.h Alex Bennée
2025-02-07 15:31 ` [PATCH v2 13/17] user: Introduce host_interrupt_signal Alex Bennée
2025-02-07 15:31 ` [PATCH v2 14/17] osdep: Introduce qemu_kill_thread() Alex Bennée
2025-02-07 15:31 ` [PATCH v2 15/17] gdbstub: Allow late attachment Alex Bennée
2025-02-07 15:31 ` [PATCH v2 16/17] docs/user: Document the %d placeholder and suspend=n QEMU_GDB features Alex Bennée
2025-02-07 15:31 ` [PATCH v2 17/17] tests/tcg: Add late gdbstub attach test Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56e0a35b5c53b416db130c414cd0f3d6@linux.ibm.com \
--to=iii@linux.ibm.com \
--cc=alex.bennee@linaro.org \
--cc=alistair.francis@wdc.com \
--cc=bmeng.cn@gmail.com \
--cc=danielhb413@gmail.com \
--cc=erdnaxe@crans.org \
--cc=farosas@suse.de \
--cc=harshpb@linux.ibm.com \
--cc=imp@bsdimp.com \
--cc=kevans@freebsd.org \
--cc=kfting@nuvoton.com \
--cc=laurent@vivier.eu \
--cc=liwei1518@gmail.com \
--cc=lvivier@redhat.com \
--cc=ma.mandourr@gmail.com \
--cc=mjt@tls.msk.ru \
--cc=npiggin@gmail.com \
--cc=palmer@dabbelt.com \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=pierrick.bouvier@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=qemu-rust@nongnu.org \
--cc=riku.voipio@iki.fi \
--cc=thuth@redhat.com \
--cc=wuhaotsh@google.com \
--cc=zhiwei_liu@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).