From nobody Fri May 2 07:39:22 2025 X-Original-To: threads@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 4ZpjVL64Xlz5vHb8 for ; Fri, 02 May 2025 07:39:22 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZpjVL5TcXz3v0C for ; Fri, 02 May 2025 07:39:22 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746171562; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nTz7ia/O7aAAZA5mtlqpNSq2hEp749m2V6rTw3611Hw=; b=aVRyu37CxmY+WLsBI8qLyUQVzKVQ32w5oiKVtdDuo6R5bG4CQaTWId+mNUaQqs0yPNqD6b tK+P5/DVBrM2iABopcd5uk2LeOk5D18Va871e/GLrAcuMaYM/4RVrysuT1W/HK6tZMO804 fKIT5IFrf+6fOYylF+6nWpr02Giu07ouD2SveD/LTCwvwste2hd3Ktmmgm8gEdtp0scvF+ GC7OM3j/y+ZhjCVmmdJVHagIQQClKBnYCCkhlFlyCd61N1m0tWtmy4d5Oe4ZqG55deMmfB eAet19M9ZKoVC8bdynIKwZ8Jhxv4Ca6IEZposch6VhR8lqcJH6ktTt2rCsWe3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746171562; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nTz7ia/O7aAAZA5mtlqpNSq2hEp749m2V6rTw3611Hw=; b=bYIVk0wMQp429ztxJa+LscXuC1zHQso4h63mGETI+IRubyCsdHQYgM7guGuTVHulTihtTs c7BkJTKL+NFhreKLbUD86ZwsGz9ngD578vxBFc9BV9h18r+QyaebQSrzlj+G4NEd9WO1Ou YtSmD3pw88Ib5JT5N8iDkxj3Sg1vJ8q/R95JGY4TE5CSN8BCI4qd2t8HXfIvVqAKLgzmk1 TqoXo2p063dPpjcoLRV3HGbNtV8P9v4EE0J0g5Rvq5NlBwHHEFkN2RsGnyOsKoKG1MNtIz uDlJYMU7N430/ApCIoWR1l7k5bmSnn7QzPLhzIRoQ82nlxn/tdm3j1pTE/1zTA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1746171562; a=rsa-sha256; cv=none; b=uylTSrXX28tV4Oi+S0QNg6H5YTY+4W4dcqthGzeXmcuFdqO3364yFfyV40DmpvSuxI5AFk bgeJMhnx4YjmeqqfIeGqHxJozeCYKiZyCf7m8GwlEp9myjsq+HItiafgalW/yxqqhVlMzP j+F0VlurqMC6y3OREaXi0FA8IXu5Br3e/czjYbxjX8S08xNSSjtkIQ3m1uvPVONdmbz3go 9a7DFG8mJPiLLACSHOiq5TrY0UN2r09s7qWjq5S5WQTHTeMXHU6UDWxZUoW6Q5Mj58MLfJ DSQLwbP83YVUcEMFr3pSoQGDXc4LyDvkZpI2v/Jn6Drm5sC/p4XraFv4UoV+Zg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZpjVL4pxgz13Hb for ; Fri, 02 May 2025 07:39:22 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 5427dM0C017107 for ; Fri, 2 May 2025 07:39:22 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 5427dMXT017106 for threads@FreeBSD.org; Fri, 2 May 2025 07:39:22 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: threads@FreeBSD.org Subject: [Bug 286505] dlopen deadlocks when target library contains IFUNC Date: Fri, 02 May 2025 07:39:22 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: threads X-Bugzilla-Version: Unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: kib@FreeBSD.org X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: threads@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: Threading List-Archive: https://lists.freebsd.org/archives/freebsd-threads List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-threads@freebsd.org Sender: owner-freebsd-threads@FreeBSD.org MIME-Version: 1.0 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D286505 --- Comment #3 from Konstantin Belousov --- (In reply to Dapeng Gao from comment #2) In some sense, yes. We already recurse on read locks (as any r/w lock allo= ws). Being able to rlock when wlock is already owned is also not a crime, just t= hat most current r/w locks implementations optimizations do not allow that. But dropping rtld locks around calls into the user code is generally good, since it avoids lot of problems besides rtld own locking. So yes, my intent is to keep that unlocks. Unfortunately, it is not easy to do for the ifunc resolvers in dlopen_object(). --=20 You are receiving this mail because: You are the assignee for the bug.=