From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: from second.openwall.net (second.openwall.net [193.110.157.125]) by inbox.vuxu.org (Postfix) with SMTP id 93FC7221E2 for ; Mon, 22 Jan 2024 00:33:34 +0100 (CET) Received: (qmail 25614 invoked by uid 550); 21 Jan 2024 23:31:30 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 24549 invoked from network); 21 Jan 2024 23:31:29 -0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MIt2BzrXFtUJkCyTOsvBmeBIO7b20jjYUWAMaQh98qDfWRb3pCytS8XHUlkMNS9bHqE2/FKpbte5DoXLQKeQ9NXSM4O2igi3jgnvhQe9x6JCrzJLEkPvhHY9Z4ii12pbzoFSu/1C8YppdM/D4s//IrPCBU8HyiITHvbG83F4RP1o7jDjzA5kxxy22VwmVcLbemmEEHXPX+Lf7GjEAYEPcXfUitD0Gh4WI/zUxCAnWIrUXikwvFCl0g4DyygKbUF7WM+JZHC6R47kuEtexlq8TQaTrdY/KKReBMRYcamdMnLgU46vw5qeS7DVfL4oJSYDChpew+h+VuRyuH4HRLT15A== 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=FjCsgRb+NeamDpt7GLv/1v5JLdTQAEGwrxt3XjeZ5lg=; b=PiUHxL6mj+PwWxXPQdcsAPkRtRcdKaVRV+tmqhguAbc3BYL7NK4NvWHBmVD+i9CcMkn/dENZggJIWjzaTruhHNQNoggjl5fpKpYOIWMBBtwcI6KyYEErYWPJw6rdrOyKJElO+S21pFVk1A9o1uzNCnhSZCj8qmIUpPsplaK5GeLLHte0Hj2gagK4lfIQkrS7tlkqYUldrYthDuS5gHWwDbnx5HmKy56LcAIF6vluFcu4RZFmnAp3zE9wuKJgAUxJPcYRC6W5Sl2PDzUDL/SRjJ3FEZ37WgNo/J50J8YYXUaDtNWHRpVVve0mM0aGqWbWjnUu9VXvrjizQDmlJhLs1g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none X-Gm-Message-State: AOJu0YwGBH4qIgQ0WZT80XEK5GyuRwJKGVp0q/Q/0hClcEBY3ohXOg/0 Ng6Som73WYpq60Zu74y3naN6uwuQ3dkHtaGHy7OTbJ5PeB/IaQ9J90UzFHgtkwnji0CBr9VyIgZ XLwKKjqZv6j5SgWS7hqCj2bBIM8A= X-Google-Smtp-Source: AGHT+IFxchFkeJfGa+ukocc6RQQxv31ss64SiOn67pAkLfHr0m80kEOOzWuoYU9YyhGXmBvzXaN8bgFshDtPdorNdhg= X-Received: by 2002:a0d:d455:0:b0:5ff:6134:da6a with SMTP id w82-20020a0dd455000000b005ff6134da6amr2066583ywd.49.1705879995992; Sun, 21 Jan 2024 15:33:15 -0800 (PST) From: Fangrui Song Date: Sun, 21 Jan 2024 15:33:05 -0800 X-Gmail-Original-Message-ID: Message-ID: To: musl@lists.openwall.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-TMN: [YMOA2c002sho3RK6shJRp36tkL25ycU8] X-ClientProxiedBy: BN9PR03CA0151.namprd03.prod.outlook.com (2603:10b6:408:f4::6) To DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB5765:EE_|MN6PR12MB8543:EE_ X-MS-Office365-Filtering-Correlation-Id: 774de59c-dff2-4a2e-9cbf-08dc1ad95888 X-MS-Exchange-SLBlob-MailProps: Z68gl6A5j2/yPdi+ntl9sOcYYSxWSxQMe5KuMxQJa9UBOcfIJLfo1Q45pPMr5amq7iCqNHi5Mh0+TduGvPhMuPi9vgcYsolSGaYD32G9m0S9lrbyJ7AAxFl8mqjxKAF1LnWqNj8+zkSocddDWZ5hux/FhhVWfpY36vXGKejM4fpRK4c977GT4EJ31uQQerjmz5Xpcu+UJV3vj1BPDoevscZDPGyftT4Ln8LzfOcDL+ecTfcvotjAP5fpeZCV0/aSGJtl8WD6oi3HuX4dYur59hfhCFWKeW+nyC0nUhm3SaYNbh0qQmsrUoQv2lRSYCvONHNvyYO/PpDjALWFIfIELj+u5zpwNRy6enY94KW5qr5xoaIMGn+HMATsOHuTqLjg0eL2CCSx0ZogRFu8918pCcroLfY3RpgZ0TdDbwvdKqjCm1KREA1deUxOwiHCDTmwPF63gkPzcSUpUZqnRZFZZ6Ob64PG3iCBKqbHSlnRjRXhvsyqNvlafR1Od/1RRRaH0fjIiyOjorEyNzCfwHITqBNix4VIntm3gtPVfBttJAkhVlekKRjvGCzb86a4cDOfjW3uz5Dl1NVt/Mgj38qf8URZZhJAuam6er7gYxduyYPzan0FjSwGaXBaZ/5QEEUeso5jVeLb5cJbZFFhCWEs/xHGiimD4xK7esjeHVpNJ77RML4aGluh3HLljbPLMkLm19H7WD8SjOmE6uypszzCkPY+a5TAjo59cVPsltgzLbnlwjuFBsVwopjmEN49/OhT+gdmAcPp0YPyVMtvb9ft/PFrRt0cH78XAXBXjiSjZPFv2Ek8w0psNt1WAD29uJf1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pxgUAcNGMECa0SUdJAUAPzY4ibNuI5ghjbTlm57jMOey5tsXs9r1FNI8tGCqFNkF3BB4RWqIlXk4GzQCwC8ORtpNXQnoxVsgiC8KFx3D5c8pEdxdVdrK7Z5b5gFV8rclsy5ulGwouNox4YoMOCSReftsdjuYQSAFaWVdDMhaxD1M9WNHKoi5FH10I8c94KjGqq6CF4JXigp+nK0kMoNw996AD5LAo8KjqckJtSWRR+MthEj2BYLbrEBTMLy1a1/xw8Ak1YN7Ca/zz4c4nmXjrs1pIF4QLr4BkJopgR4KzAvIX3cE+nZgW5ppvVKE2eWAtf/4o6mBEafFcCbkLv0cIvf4sxokwIVKDjTxfG4nSJRyB6n94xUZzSYjbcylQwkJHopqwOkzyVxMQZREKgU4JM9rkNyPhJocPJmSq58LFSGSRe77TrHS4uhcnFPBPxf15Xk6GZfvEvaNO9HuGWfv3C0yp96eS3gKznR3BYHAFpTrYNaZowXPB0HKSd43ggcc4eAGeFSH41QM7y2UwiyA35/3cY3QBetBYfauu4wjdaDOK15oldvkXSuAmXEwfuZE1a3PqAr07nUCWU1vrh7Xgc1NMxki5lhmNJAgdV5x+cY= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TDlyWDhGT1RVc0tYWDdSb3lqaUNRelVURVBmMUtCR0tKZmRHQ0drbU94YTJl?= =?utf-8?B?MUpsN3RRR01hTm1YQUNWTGFZNkJycnVUTjg3a2tvOGFIWmowNTlCM2Y2NlI0?= =?utf-8?B?YWt6SFVaMTgvODhPaDNJeFJDZjlxSFc0WmRFSG03NVIvcmgydCtrZUVYR2du?= =?utf-8?B?d01VNmw1cFl0M0c5dVptNnBDV2JTMFZLdjZodXdnY1hHSkYwc3craW9vREow?= =?utf-8?B?YUdwZ2gyK0gyZ0VxaXcvNFFITG5Db1pEMUJVRlpXQkgzTEVHbE85ck1qZXNj?= =?utf-8?B?UDIwWGRRR2l5MVlPaHpOMUFLNXhZUlFkVWlZNy9XN1lyTzk0RVRkT2VML1gr?= =?utf-8?B?T1NrSkMwNEVwdVlEQjNkQmdGckJnQ1c3TnR0RTUrWnp2VWJDQU52YTl4Szk1?= =?utf-8?B?amIyUTZsZEZ0Yk44b2R4Uk9rQXMyUXJydWZNc0M5bk50R2lpcGhQdmI1STl5?= =?utf-8?B?ckxudkJvVVJVbi9kN2ZSaXdCV29GVm9ZaW9YaHpJb3B6TEkzVGcyMThaU0o1?= =?utf-8?B?elhTdU8xdE52ZmdCdTdiUnBSK0ZFZzdZQWNmTFU1QzBhaEFaK3RoeVY1dm5V?= =?utf-8?B?UVYxV0h5SUxXTllQNDNpTWs2KzdGcjlYMXB6TnNpOGdBOUZ3Y25sdzg3bU10?= =?utf-8?B?Uy9GdlNwZVZ1RjFtUnNVQkNERTB3V1NaSzBwMEtkK1dEZFEyRVJQMm9QUjI0?= =?utf-8?B?YUczN0ZrVzd5NTNkcitvdGE0anByQVFFQm0wYzZTL2EwZHhrckxOWkcyb3Z4?= =?utf-8?B?UWtjM044TjVtdHlQNmhHTE1JZDF3bERaMlFDL3ludG5EOC84Q0ZhemRCaFpO?= =?utf-8?B?Q0lOOXJIdUVqZno3Qm92UDRjcVV2RXJhUFlVQ004MmZqVk1RdFBIbzl0d1Bz?= =?utf-8?B?bEoxWmI2R2srTldPOTBhY3lCN0hlVURLL1lrRHRkc3IvL3hjM1pCa2hXZmx3?= =?utf-8?B?MkFZWC9zYjYwMGRxa3JFK2VUVlJ1ek52VzRuMWxscVJDUGsvUWRNbVp0emR3?= =?utf-8?B?RFU5Qzl5NTkxQ09sTmlMRUwwSTFsUnAzZ0FCeTdvTEpiVTBoWHA5NHhKNDFl?= =?utf-8?B?M3pUbVQyS3gwQWQ0S2JaWjlzZ0h6bDNmcm1SVFlnRHpVa29lVUtKV21ORHkw?= =?utf-8?B?SGc1ek42dk5kTEpLV3pzcEpjVXpIdjZPVW52cGdFbDBGRGhnRi9ibERYZjRV?= =?utf-8?B?VmQzVi9Xa0JtaGU0c1BXLzNHMzJvcTdoMm84TiswUzRaaXNwUWl1T29KUHZR?= =?utf-8?B?cUJ0ZGdXU3BhSkIwMlgrdEp4N0xocWhKOXg3Uks3YXN2WmR0WU5rL1dUT0Zl?= =?utf-8?B?c2R4eWRyb1RrUTdXcDhmU3hYOHNjQXFQenZPK2RXL1BTVHBnbTFHelZhZzVL?= =?utf-8?B?d0ZWRzNMaThDb1hRYVRKRjQyajVSb1A0WFdPM2svbHdZSUpRTnBGTExiUUtz?= =?utf-8?B?UklRUzIwM1ZrbXlldnd1SEVxN1VRbTV3VFA3MUZnS2JqODlNZmhXOUcrNFFo?= =?utf-8?B?WURacXpjbUx1WmxRNktQTFhVQ2pyT1I1QkREejlEeStlZHEyNXBCNXg1ZjlY?= =?utf-8?Q?mqg1ajvZ7k8JRca/1ib5pcqi0pgewXoQ4XW52PM5WvoFz4?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-71ea3.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 774de59c-dff2-4a2e-9cbf-08dc1ad95888 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB5765.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jan 2024 23:33:17.7580 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR12MB8543 Subject: [musl] DT_PREINIT_ARRAY support There is a DT_PREINIT_ARRAY patch that falls through the cracks: https://www.openwall.com/lists/musl/2016/05/17/2 I wonder whether it can be visited again. I ported sanitizers to upstream compiler-rt. I have not had time to track the latest status for musl, but I know that quite a few sanitizers will benefit from musl supporting the feature and see another recent issue about tsan (https://github.com/llvm/llvm-project/issues/78452). --- Some notes about DT_PREINIT_ARRAY The linker defines DT_PREINIT_ARRAY and DT_PREINIT_ARRAYSZ according to the address and size of .preinit_array. The linker also defines __preinit_array_start and __preinit_array_end if referenced. The generic ABI says: > DT_PREINIT_ARRAY: This element holds the address of the array of pointers= to pre-initialization functions, discussed in ``Initialization and Termina= tion Functions'' below. The DT_PREINIT_ARRAY table is processed only in an = executable file; it is ignored if contained in a shared object. DT_PREINIT_ARRAY only applies to the executable. This feature gives the executable a way to run initialization functions before shared object dependencies. There is no .postfini_array. Most ld.so implementations support DT_PREINIT_ARRAY.