From nobody Mon Feb 12 09:53:57 2024 X-Original-To: current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TYKY84qFWz59SgL for ; Mon, 12 Feb 2024 09:54:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4TYKY833wyz4Lrh for ; Mon, 12 Feb 2024 09:54:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 41C9rvAt067580; Mon, 12 Feb 2024 11:54:00 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 41C9rvAt067580 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 41C9rvGi067579; Mon, 12 Feb 2024 11:53:57 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 12 Feb 2024 11:53:57 +0200 From: Konstantin Belousov To: Alexander Leidinger Cc: current@freebsd.org Subject: Re: segfault in ld-elf.so.1 Message-ID: References: <1707730081-90734-mlmmj-4d88f1fd@FreeBSD.org> List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4TYKY833wyz4Lrh X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated On Mon, Feb 12, 2024 at 10:35:56AM +0100, Alexander Leidinger wrote: > Hi, > > dovecot (and no other program I use on this machine... at least not that I > notice it) segfaults in ld-elf.so.1 after an update from 2024-01-18-092730 > to 2024-02-10-144617 (and now 2024-02-11-212006 in the hope the issue would > have been fixed by changes to libc/libsys since 2024-02-10-144617). The > issue shows up when I try to do an IMAP login. A successful authentication > starts the imap process which immediately segfaults. > > I didn't recompile dovecot for the initial update, but I did now to rule > out a regression in this area (and to get access via imap do my normal mail > account). > > > Backtrace: The backtrace looks incomplete. It might be the case of infinite recursion, but I cannot claim it from the trace. Does the program segfault if you run it manually? If yes, please provide me with the tarball of the binary and all required shared libs, including base system libraries, from your machine. > ---snip--- > (lldb) target create "/usr/local/libexec/dovecot/imap" --core > "/var/run/dovecot/imap.core" > Core file '/var/run/dovecot/imap.core' (x86_64) was loaded. > * thread #1, name = 'imap', stop reason = signal SIGSEGV > * frame #0: 0x00004d3dfa2a4761 ld-elf.so.1`load_object [inlined] > object_match_name(obj=0x000049a47c203408, name="") at rtld.c:5606:6 > frame #1: 0x00004d3dfa2a4742 ld-elf.so.1`load_object(name="", fd_u=-1, > refobj=0x000049a47c228008, flags=0) at rtld.c:2704:10 > frame #2: 0x00004d3dfa2a3eaa ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3747:8 > frame #3: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #4: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #5: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded011502e0, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #6: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded01150368, objlist=, > dlp=0x00001ded011504b0) at rtld.c:4637:13 > frame #7: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded01150470, > donelist=0x00001ded011504b0) at rtld.c:4541:8 > frame #8: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #9: 0x00004d3dfa2a4374 ld-elf.so.1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded01150988, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #10: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #11: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #12: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #13: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded01150a80, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #14: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded01150b08, objlist=, > dlp=0x00001ded01150c50) at rtld.c:4637:13 > frame #15: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded01150c10, > donelist=0x00001ded01150c50) at rtld.c:4541:8 > frame #16: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #17: 0x00004d3dfa2a4374 ld-elf.so.1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded01151128, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #18: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #19: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #20: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #21: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded01151220, obj=0x000049a47c228008) at > rtldc:4735:6 > frame #22: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded011512a8, objlist=, > dlp=0x00001ded011513f0) at rtld.c:4637:13 > frame #23: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded011513b0, > donelist=0x00001ded011513f0) at rtld.c:4541:8 > frame #24: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #25: 0x00004d3dfa2a4374 ld-elf.so.1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded011518c8, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #26: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #27: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #28: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #29: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded011519c0, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #30: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded01151a48, objlist=, > dlp=0x00001ded01151b90) at rtld.c:4637:13 > frame #31: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded01151b50, > donelist=0x00001ded01151b90) at rtld.c:4541:8 > frame #32: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #33: 0x00004d3dfa2a4374 ld-elf.so.1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded01152068, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #34: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #35: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #36: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #37: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded01152160, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #38: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded011521e8, objlist=, > dlp=0x00001ded01152330) at rtld.c:4637:13 > frame #39: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded011522f0, > donelist=0x00001ded01152330) at rtld.c:4541:8 > frame #40: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #41: 0x00004d3dfa2a4374 ld-elf.so.1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded01152808, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #42: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #43: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #44: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #45: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded01152900, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #46: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded01152988, objlist=, > dlp=0x00001ded01152ad0) at rtld.c:4637:13 > frame #47: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded01152a90, > donelist=0x00001ded01152ad0) at rtld.c:4541:8 > frame #48: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > frame #49: 0x00004d3dfa2a4374 ld-elf.so1`dlopen_object [inlined] > distribute_static_tls(list=0x00001ded01152fa8, > lockstate=0x00001ded0f98cb80) at rtld.c:5908:6 > frame #50: 0x00004d3dfa2a4364 ld-elf.so.1`dlopen_object(name="", fd=-1, > refobj=0x000049a47c228008, lo_flags=0, mode=1, > lockstate=0x00001ded0f98cb80) at rtld.c:3831:6 > frame #51: 0x00004d3dfa2a2274 ld-elf.so.1`symlook_obj [inlined] > load_filtee1(obj=, needed=0x000049a47c2007c8, > flags=, lockstate=) at rtld.c:2576:16 > frame #52: 0x00004d3dfa2a2245 ld-elf.so.1`symlook_obj [inlined] > load_filtees(obj=0x000049a47c228008, flags=0, lockstate=0x00001ded0f98cb80) > at rtld.c:2589:2 > frame #53: 0x00004d3dfa2a223e > ld-elf.so.1`symlook_obj(req=0x00001ded011530a0, obj=0x000049a47c228008) at > rtld.c:4735:6 > frame #54: 0x00004d3dfa2a6992 > ld-elf.so.1`symlook_list(req=0x00001ded01153128, objlist=, > dlp=0x00001ded01153270) at rtld.c:4637:13 > frame #55: 0x00004d3dfa2a680b > ld-elf.so.1`symlook_global(req=0x00001ded01153230, > donelist=0x00001ded01153270) at rtld.c:4541:8 > frame #56: 0x00004d3dfa2a6673 > ld-elf.so.1`get_program_var_addr(name=, > lockstate=0x00001ded0f98cb80) at rtld.c:4483:9 > ---snip--- > > Bye, > Alexander.