From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id uOygKG2B3GGFAgEAgWs5BA (envelope-from ) for ; Mon, 10 Jan 2022 19:56:45 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id IGPUJW2B3GHHeQAA9RJhRA (envelope-from ) for ; Mon, 10 Jan 2022 19:56:45 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 3709A3AA6A for ; Mon, 10 Jan 2022 19:56:45 +0100 (CET) Received: from localhost ([::1]:57158 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n6zJJ-0003dP-Ib for larch@yhetil.org; Mon, 10 Jan 2022 13:22:25 -0500 Received: from eggs.gnu.org ([209.51.188.92]:54160) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n6zAT-0003o8-Rs for guix-devel@gnu.org; Mon, 10 Jan 2022 13:13:18 -0500 Received: from mx0e-00379502.gpphosted.com ([67.231.147.129]:23610) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n6zAP-0001ba-Jj; Mon, 10 Jan 2022 13:13:17 -0500 Received: from pps.filterd (m0218361.ppops.net [127.0.0.1]) by mx0f-00379502.gpphosted.com (8.16.1.2/8.16.1.2) with SMTP id 20AIBSar026510; Mon, 10 Jan 2022 10:13:07 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=llnl.gov; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-type : content-transfer-encoding : mime-version; s=02022021-podllnl; bh=hUqeO2WwOq73joL7/lLcv/mQNVNRiSRiySUG3iVIqog=; b=bVFzBVOrqSiWMgYM2QLXmzhb32Yi4FV2FgWXfk5BxKzbT37x+g2wzluWCSqnBZFROaPy IpOfOUFwzGqY8eeqfpfTpP9+YCe1cDH2idRacXI1VecnTT+OeDpSiUkxpUh0NsyfAFoR Twydnm9k0usUhAVza7DUN7b3iXY/MbsSwrHIdGI1y7/UnIsp0fUJRgKRwFfB/XJjE39d zGQgPHEZFHOvErNmeceToCQLrAeYQ/aKuePP2iVokoyvZtSIWczfpglsoxdPghmV32rb J3NDmA7tpU0U9+/r1xrIBOgtxvKRvDG7TQT7YEv1Rg4dcLs81l7ze/fCwa60C9Dtle9J /w== Received: from gcc02-dm3-obe.outbound.protection.outlook.com (mail-dm3gcc02lp2102.outbound.protection.outlook.com [104.47.65.102]) by mx0f-00379502.gpphosted.com with ESMTP id 3dgrb5ger6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 10 Jan 2022 10:13:07 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PYLB572nOgr2oYsTevn4vTmwMTGG2YXPVQOEOR2nk3aRg16/oCvHjEbciu9aoGirPB6AAVvGvWVgMUwgG4tspC6O1R4fGPTnNfnxmAyt0UAoVjAIsj5NEQD4pTjdXPoPqelS/0bFNt3s4VvCeTeFCPGC2kI1OJEloSLkBqJhB8EJDWIxjaz0/NPUVXBEmzZbwNTH5tR7AUahTvx9iOprPE1EpjSzCewusC3b180AWaLK5I0A8PNK03XKaOJmuo7f/wNafgHb/43PiFllqB/L1p2Fm/dqq05twCi2+TvizxHIxby/iycXMaJBtyRwj0A2MXhgTOjZ7p9+mX7O2G7Yrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hUqeO2WwOq73joL7/lLcv/mQNVNRiSRiySUG3iVIqog=; b=be/MJ8mKYx0gV4emHREA4q+nKruju1MqPThOac6b2dbFnUubj58HxPHLxrAVY5AxU7N8GwveJSBkZMatzN49Naim1yRQ4uxIpwFvj50lv2PrAknJC7kGOvHxb8ffOqLyNu046vnCRfcekkq4CnyuegX8d9wy/1GZOyVj4RHy2YW97eML/vfm+gZUGHCZsbMXdvErOE5DzLnP2rCxXlFEZVrQzzBF0toCxxhz/+mSXcLOBod2GeuD6DvJD5UYvjKlJlqpseQg6PefNt4ctX/RaowiqF+IV0un2wjj/43MY4vXj1cZuAZJzRdaDt4iQRZKRfrEnw+h2YWK0VPsLn+Urg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=llnl.gov; dmarc=pass action=none header.from=llnl.gov; dkim=pass header.d=llnl.gov; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=doellnl.onmicrosoft.com; s=selector1-doellnl-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hUqeO2WwOq73joL7/lLcv/mQNVNRiSRiySUG3iVIqog=; b=XLaL7JD8srfsXsBeT8Qwy5QgJDkyXKZTx7O1k4O2emoUAlNHYUsFQC6gVD4U5l6cy3iTdPJEtnqv0p8laQlhBBQZy5YqrtE06GQTLa14mzVoRSahNVL9tgQkw2y4SN5KvAZpjg0OCGais3Xd54dx7r9PrkfGZY/SSko5/YcKRGA= Received: from SJ0PR09MB7071.namprd09.prod.outlook.com (2603:10b6:a03:259::8) by SJ0PR09MB6879.namprd09.prod.outlook.com (2603:10b6:a03:260::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.9; Mon, 10 Jan 2022 18:13:05 +0000 Received: from SJ0PR09MB7071.namprd09.prod.outlook.com ([fe80::3002:ae8d:2b3:95d9]) by SJ0PR09MB7071.namprd09.prod.outlook.com ([fe80::3002:ae8d:2b3:95d9%2]) with mapi id 15.20.4867.012; Mon, 10 Jan 2022 18:13:05 +0000 From: Tom Scogland To: Farid Zakaria Cc: Ludovic =?utf-8?q?Court=C3=A8s?= , guix-devel@gnu.org, Carlos Maltzahn Subject: Re: Alternative solution to stat storm problem Date: Mon, 10 Jan 2022 10:13:03 -0800 X-Mailer: MailMate (1.14r5853) Message-ID: <77415614-71BF-4F54-BBE5-EAFAB10DC31D@llnl.gov> In-Reply-To: References: <878rvp53eg.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BY5PR17CA0053.namprd17.prod.outlook.com (2603:10b6:a03:167::30) To SJ0PR09MB7071.namprd09.prod.outlook.com (2603:10b6:a03:259::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9b42838e-c9de-40e7-4834-08d9d464d8c4 X-MS-TrafficTypeDiagnostic: SJ0PR09MB6879:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1X6cJiWvmzBXHq7BTiNJlnYJKyxG5U3pPpU4KL7hR6gdN9qsNT0DC7iRndjue2XE7FAaxxqjaRw++Y+Pbwy5m4/r2+xcx9XxsmS+aDY0hGFyHtrCJ9EruYga/x+6wJJTLBzdYHsuyQtOdxYk9h9GvHXvwkbnf3wPXJFAAaq/hoXNiCF9/uNlgmwAIxuZBox2qjoJx/E58Oa/wbl2kl7SaHcfdRIWMVPyHW4lyX8FM+I+SQVEy1XRFmvu1sM2r7Yz7GUeH3f/9KveBEbbQ72K0SreYnTDwB7/GH/h08x2TtQRWAbFEoNJjfzC8Xq3Rnm2Ox/0xsdBIy97CqdR20PaCeV6heGtBjjxL6Yf1Ct3Kd1mk2yhoOgSOAg24OwNewnzfVQVRaURDiG9BCn+Jg9p5jDQKN7GjGeRpy6ZsAZX9mN2JlahwLVl/K70DC85vh1dTzJG6p+A06ecnaXnEXmRZRgFGbmPCH672tPy+Gc4vEA+IgMeBvG+40MNhX/fads/v/kAtTcwQxdYlJDGawJwy/Yb0T3IIpSeEq3FfA/GmuyR/gUcwasz1OPLLMkV18AvZ+6JAfZLAZQoBx11o4SesLmYnrVobssNiogj4ki0v/ZV3hZi/UQ+pGOjkGk+LWhVkMo9CWr+OAU3Bulx4sPaLkdnMbSpCA6l67atR3Rim6mhCXz3GvfDK1a+IbuwjaXRmbNJN4rYvRv2fYZJGNj2pyIRBZEbE6BickQxjngf8rhTvUUjXIzL5SENYWmqyDF8VICBjSSUFgn3ixNImbDNES2Wc2jQcO4Q1kjiIeque7I= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR09MB7071.namprd09.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(6506007)(82960400001)(54906003)(26005)(186003)(8676002)(966005)(86362001)(33656002)(53546011)(66574015)(2906002)(5660300002)(508600001)(66556008)(66946007)(66476007)(83380400001)(8936002)(6512007)(316002)(2616005)(6916009)(36756003)(38100700002)(6486002)(4326008)(45980500001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bEg4WEJoQ1JJalpCSXlPM2tsRmVDK1FUOWpyamdxUjVlQ1hUZi96UytRUllL?= =?utf-8?B?bjlobG9SWkRkRVAwb3lKMjRDd2MzTEZYbkd2WGhHamlRQTV4ZEJsYjl6eDds?= =?utf-8?B?SVZrT0FxemtGd0tRZGtnK2dGc2NrL3lvYUgyN1QxZmx2TmU5aDlFNHlvdFEr?= =?utf-8?B?NDJmZkJ5MERVaTN2cExKSC9wVXRhWDNySisyMFBneWwyaFBIVHlLUWluWU1H?= =?utf-8?B?UG5XWmV0WW8rUVRkajlGMTRnbmw1UVowNHEybFlVSXovQ0I4WVV3WE02QTh6?= =?utf-8?B?MkNiT0p6TUVQMFlVSmZ6MWl4R3FyOHdsN1RMdjBwWElYZXZCOUFscDlHY3J6?= =?utf-8?B?bUlmaU51Q1JzL2ZqQ0syNFFpT0h0UjR3TVV6d2tvVzRyUTBQSGkrS0RlZGk5?= =?utf-8?B?QUFvaHRVbmdVZDRkL2lBTnYvWklwcmQxcFl2MGcxdkxkWEtDaitUZEtkWmxs?= =?utf-8?B?S21qZFFIbHN2dENOU3NrcWZRZ3RCQkhQd3hKVlFGOFlYNmRORDczWDdhZU5R?= =?utf-8?B?UzJQMFZQdUZ4UVpWSkp3QkJOZXVZQUZQYXYvRGQ1NllJd3hPTnZ6UHA4bkhi?= =?utf-8?B?WFZ4Rzl0aHhLYmpjM3RGRFhHRmp1SzRqRUprTlhSZXVLL2NONGhUWkc5WUNJ?= =?utf-8?B?Z2VkcGJ5Rno3VlJFWXExMStXWFJkMHN4dU1tNjJMVG5CbER6Wlo3VS9teFpK?= =?utf-8?B?Q2RrSGgzcEVrVWRvb016bVZhVmUxOG1Bd2VuWndqUlczWWNBZGg1RWZSM3BD?= =?utf-8?B?V1UvQ0RSQjZsRTFqQW1EZ1VGNExEUEE0MWVlTk11T2duNmNPN1dEYWs5Wkt4?= =?utf-8?B?TXYza25ncVBTbFNjU04wQnM0eDA5SFBkK2lmbVB0QUZVdzg4TUtIMWpDaEZH?= =?utf-8?B?Sm1IRlkyc1ZtdmVaZ0l6Ly9HV1ZJMXZwaTZRdFRvVmt5dHFURGRCRzFnK3NM?= =?utf-8?B?b2c5K3NZUklYb1BQOWYrbEhwWDE1cDh1TDA1dFB2Q2NZYnRzNnRrcENNSHA5?= =?utf-8?B?enhldU1kQ1pCYUNibHdSWFpneGU1RVJWcDdzMktYQzBmV0NkMDB3VHA2Y1pj?= =?utf-8?B?cHQrb0w1dG1RT0VoZ2lwVUdwSldiN1dhekpiNDYrUkp1UDc1TERlK0hTZG1k?= =?utf-8?B?MG04L0VlQjA1KzEvMVd2SFRwcHVUQ1RFdnp5dXdWQ0hHT25na0FuaElqZG1T?= =?utf-8?B?SHpZbDZLZkVFbVZzK1VrQktycmVWaTA3STV6TlFXdGNldGVnOWx3cUdqKzJn?= =?utf-8?B?ZXpMRGlLZ2ZlYVBlekJnQWEvSnQzV1BqbG4reWltdGdaZkZ2dnEwQWhRdDJO?= =?utf-8?B?bmY2K3crVytkRytGR3VDbFlmYzVaNDh5a21PaHowYXFnV1ZJejQxS2Q1UFpI?= =?utf-8?B?UmZGNzltYXE3UzdMc0V0UDRKN1JmazczWHlKWThuOGxkQjNrRFZsMjBIakps?= =?utf-8?B?WE0xK2pJNjlJZ3k1RXpvMlBlWnJrQ2s1UytlTU1jczIyM2UvZ0gvVS9RYjBJ?= =?utf-8?B?NTd1QU9nMHFPNEN6ZXRJQjQwZTI2Y2FOVGJwd2V4YzRka2JBTmxTUTBzbVFo?= =?utf-8?B?b2lwQVNuYXMxcG13TEdqWnc1ZVRNTXRubzJ5R2FLdFd4bld2RkxpblVGZjFk?= =?utf-8?B?VkNhRXZFZVl3Sm5MYk0vbll2d3Brd1dDR0tUZ3BVaCtZV05sNU1iWEM4ZHpX?= =?utf-8?B?eFRpbFhkK2dxYk5SV0d6YVp2TmRnUy9pVHFyL3VCVVNuei9TcnIxSHFzejdV?= =?utf-8?Q?Hmb8BYqEq0G2IbgIyCUz3/hYaX///4QjPt+PBW9?= X-OriginatorOrg: llnl.gov X-MS-Exchange-CrossTenant-Network-Message-Id: 9b42838e-c9de-40e7-4834-08d9d464d8c4 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR09MB7071.namprd09.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2022 18:13:05.0383 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a722dec9-ae4e-4ae3-9d75-fd66e2680a63 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR09MB6879 X-Proofpoint-ORIG-GUID: SIAtweRIkpCc5qGbSLxC2Ih1t4ql59Y5 X-Proofpoint-GUID: SIAtweRIkpCc5qGbSLxC2Ih1t4ql59Y5 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.425, 18.0.790 definitions=2022-01-10_07:2022-01-10, 2022-01-10 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 mlxlogscore=999 spamscore=0 lowpriorityscore=0 clxscore=1011 impostorscore=0 mlxscore=0 bulkscore=0 adultscore=0 malwarescore=0 phishscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2201100125 Received-SPF: pass client-ip=67.231.147.129; envelope-from=prvs=40099f0987=scogland1@llnl.gov; helo=mx0e-00379502.gpphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FROM_GOV_DKIM_AU=-0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Mon, 10 Jan 2022 13:21:16 -0500 X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1641841005; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=hUqeO2WwOq73joL7/lLcv/mQNVNRiSRiySUG3iVIqog=; b=aitXKP5EhDh9q8QOXYJDxHlp6xnnU4ivqr3LzmQ6pzCvxbm8h9ZFiZvSvDgDOFrSyJSjwX bhUbFMtkalMA4IQ6wD6buDCJ8gDgDA8s2lVO2WjlpwqEYhyL7OP7WHYxsTkEd+nmnI8jvN 6Bmbm2srBtj1b+YXwZHagY14XPyMmpU0l0fwlczq7c4XQtnah0EOvLNTRtFiBZgMqUO8BN bG5e4WdnH80OKBs9DalleBRbQORwKa9FBtv14Wl4O58GOJRXxBkM6LQSTUTYPMF9njos+G 14w9D9q7HaVl8Q3ZfysdG36JOPIkI+L4Dnchbr+Ua1lPY8m4Cn4akAsKL1/XfA== ARC-Seal: i=2; s=key1; d=yhetil.org; t=1641841005; a=rsa-sha256; cv=pass; b=OqiNbCUj1H7r07V7GTs4xRhy7KuAWPT2Dm+0rq2cSUwtSrF8pj7xLojwoFpZJG2b6uAY+j 35iIkdX87d75fi1cRRQavrqTX7SA/8/9q5xRJl6qblF4aSlvF1jH+2zjJnapZVr9HpYg3i 7oMwGEXPfY6mu+hUQE1YzmalHiqthSCQBN1eXIHCqTD1pZq9WAe0YIFrdOoVW+iEmJGt6u L4TcQW24Y6y0vJYECP+5jpxyUbN4qMIWPRZz0V39/iZYubuB0YDqm3mEYqU+lpodS6dYrm KSVXp/uaBqvvV22Pef4fQYzN6+Yj2k7CBhRQPLfghwTOUrW9qwJCKHrR6YdFWA== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=llnl.gov header.s=02022021-podllnl header.b=bVFzBVOr; dkim=pass header.d=doellnl.onmicrosoft.com header.s=selector1-doellnl-onmicrosoft-com header.b=XLaL7JD8; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=llnl.gov; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -16.31 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=llnl.gov header.s=02022021-podllnl header.b=bVFzBVOr; dkim=pass header.d=doellnl.onmicrosoft.com header.s=selector1-doellnl-onmicrosoft-com header.b=XLaL7JD8; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=llnl.gov; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 3709A3AA6A X-Spam-Score: -16.31 X-Migadu-Scanner: scn0.migadu.com X-TUID: v3RamuCUa+79 Hi Ludovic, thanks for your thoughts. You=E2=80=99re right, the LD_LIBRARY_PATH will not change the loading order= , but using LD_PRELOAD will by the same mechanism we=E2=80=99re using, pre-= filling the cache with a library at the same soname. As part of other expl= orations we=E2=80=99re doing around tweaking or wrapping the loader, it may= be possible to get semantics like LD_LIBRARY_PATH other ways, but at the m= oment the goal is to make a program that will correctly load all the depend= encies it would have loaded were it run in the same environment it was buil= t in, despite LD_LIBRARY_PATH or RUNPATH in dependencies or similar. Makin= g a little tool that would override the same way LD_LIBRARY_PATH would have= would be relatively straightforward though, would that be worth exploring = do you think? -Tom On 8 Jan 2022, at 19:05, Farid Zakaria wrote: > I did forget to mention the point of LD_LIBRARY_PATH, that you can > still make use of LD_PRELOAD and I am also thinking about maybe using > something like dlopen-resolver[1] to further expand the NEEDED > section. > > [1] https://urldefense.us/v3/__https://github.com/Mic92/dlopen-resolver__= ;!!G2kpM7uM-TzIFchu!gFf3bOVCBsw_Ld35XMHl8Y0nYb0k7ikmOrOuo5SGPLCLqrCqx5qaP3g= iJkQTBeRD1A$ > > On Sat, Jan 8, 2022 at 7:00 PM Farid Zakaria wrote: >> >> Hi Ludovic, >> >> On Sat, Jan 8, 2022 at 1:22 PM Ludovic Court=C3=A8s wrote= : >>> >>> Hi Farid, >>> >>> Farid Zakaria skribis: >>> >>>> I have written a tool _shrinkwrap_ [2] that takes all transitive >>>> dynamic shared object dependencies (only those listed in DT_NEEDED) >>>> and turns them into an absolute path. >>>> >>>> This has the same result as caching the entries and avoids the >>>> unnecessary failed attempts at trying each RUNPATH entry. >>>> >>>> Using the same demo application _emacs_ shows as much as well: >>> >>> Nice! I think that=E2=80=99s another interesting way to address the pr= oblem. >>> >>> I guess the advantage is that you don=E2=80=99t need the ld.so patch. = The >>> downside is that PatchELF needs to be able to write longer NEEDED >>> strings in the dynamic section, which it may not always be successful a= t >>> (I think?). >> >> I can't claim to be a ELF specification guru but I have not >> encountered that longer NEEDED strings to be a cause for failure. >> The emacs example is a pretty good test case because the transitive >> closure of all NEEDED libraries is quite large, which all seem to be >> added successfully to the ELF header. >> >> The benefit to me seems: >> 1 - does not need a glibc patch for functionality (although for other >> libc such as musl it might in this case >> https://urldefense.us/v3/__https://www.openwall.com/lists/musl/2021/12/2= 1/1__;!!G2kpM7uM-TzIFchu!gFf3bOVCBsw_Ld35XMHl8Y0nYb0k7ikmOrOuo5SGPLCLqrCqx5= qaP3giJkSfjFvBcw$ ) >> 2 - understanding the dependencies of an application become simpler >> 3 - there are esoteric cases where in fact libraries might link to the >> wrong libraries (although they are correct at build time) given a >> RUNPATH/RPATH since there are subtleties with the inheritance model. >> >> I'm actually researching ways to improve (3) as well through >> mentorship with Tom Scogland by researching alternative ways to do >> linking: >> - RUNPATH per NEEDED >> - the ability to specify whether a RUNPATH should be inherited or not >> to downstream dependencies >> >>> Also, I wonder if the absolute file names in NEEDED interfere with uses >>> of $LD_LIBRARY_PATH (making it impossible to force use of another >>> libxyz.so than the one that would be found in RUNPATH.) >> >> Correct. For a system with reproducibility in mind this can perhaps be >> a desired feature. >> It is the current limitation of the proposal. >> >> In fact, Carlos brought up a great philosophical question: >> "Is linking to libraries through a content-addressable value allowed >> for LGPL software?" >> What if the linked address also forced the content-address by having >> it resolve to something on IPFS ? >> >>> Thoughts? >>> >>> Thanks for sharing! >>> >>> Ludo=E2=80=99.