From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS3215 2.6.0.0/16 X-Spam-Status: No, score=-4.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (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) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 29A6C1F8C6 for ; Tue, 13 Jul 2021 13:09:17 +0000 (UTC) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 06F1E3955418 for ; Tue, 13 Jul 2021 13:09:16 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 06F1E3955418 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1626181756; bh=WJWqB6OPlqhBsvNbexPQZshaX0TmLozFes6nvzGiMvw=; h=To:Subject:Date:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=jfrElv6HXZF8++E0jGEWDvPone0gjOPObbPQgfvtrEigW62pZ2V3qSa08RpogSTN7 w8Y6h9L1mwhXyKxy2J+8Xn5P+yw8XhWTdVA5hUiqAbceIebyl4QtdVciReZQwFE5AU ovQhxIusIP5yRj9+J+lO92YXTiUPS8TvScE0vZHg= Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 4A1583850432 for ; Tue, 13 Jul 2021 13:08:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 4A1583850432 Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 16DD7S5X011593; Tue, 13 Jul 2021 13:08:48 GMT Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 39r9hckjjt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 13 Jul 2021 13:08:48 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 16DD6hHV179664; Tue, 13 Jul 2021 13:08:47 GMT Received: from nam04-mw2-obe.outbound.protection.outlook.com (mail-mw2nam08lp2169.outbound.protection.outlook.com [104.47.73.169]) by aserp3020.oracle.com with ESMTP id 39q3cb5nbe-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 13 Jul 2021 13:08:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UXrKroEpH7CnSNwqMCxY7L/Chza1LbqgIPLbRXXT9IEK5PxmDmOey4gT+7fwp34pEioH2PrFAo9rUxs2g1O3Cwd8+YEZjyy0NiHEheRXsgbGrd6EyM7khQQdNwIJtAJOD5IN0inoZJ9M7DfCPMJcd69BB5XzRjZk1+YveSz5xTzB3lsJ05BXqZ6h2c/SHiBVw0/Bj7BPB41uUY45Ale/m2OsCJrUm+VzGv5Sa5XYn8cibSDagAVe4reB8C2+X25j838hxoYvuo0u8oKwiZZ64YA6r72aRxZ/dN534hKQueutnH5tSSJFDVb452wEjoM1no9B9GUjKB9nysFcUMpE4Q== 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-SenderADCheck; bh=dc9WgOmGehHhHz83w3rPgQzo0QcytON+QtTVpTkPlP0=; b=C2kMAgiP4P0/S3AxcxSm1gv1LLRUJaNh+s9B9PFGHR/XzgPf4piOBxOGKlwNSKyszxkgdAWOnSjwfTeJvflwuhdwQmvN1oY/cLg8zkLzIkd3pvXwwWMu+4ivMrRbH4OAsmCLBpWkpZmwX60Qt2lwUGD5hEj9K8H5uFW9Ml9xsnhz9e06XS005sLjsGkBHYb+Phd48SlMsZx03na7h367vwivHw7AVCFb1zHizJsHITY94cqOiTUW62kDL+Gxe+S9+tNizcVZHlB2g20vNd94R7DvhgPVK6Q2OS7kLdKiEEgxMSVbR7Gf3AF0ffXyG1xotffcJsVpaygtt/ZeNF2HbQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from BYAPR10MB2792.namprd10.prod.outlook.com (2603:10b6:a03:87::22) by BYAPR10MB2760.namprd10.prod.outlook.com (2603:10b6:a02:a9::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.23; Tue, 13 Jul 2021 13:08:44 +0000 Received: from BYAPR10MB2792.namprd10.prod.outlook.com ([fe80::d818:cbb2:72b:12be]) by BYAPR10MB2792.namprd10.prod.outlook.com ([fe80::d818:cbb2:72b:12be%3]) with mapi id 15.20.4308.027; Tue, 13 Jul 2021 13:08:44 +0000 To: "libc-alpha@sourceware.org" , =?iso-8859-1?Q?Vivek_Das=A0Mohapatra?= Subject: Re: [External] : [RFC][PATCH v12 0/8] Implementation of RTLD_SHARED for dlmopen Thread-Topic: [External] : [RFC][PATCH v12 0/8] Implementation of RTLD_SHARED for dlmopen Thread-Index: AQHXdBdDwCCC1ulacUeNs4dfmqd4lqtA2UoW Date: Tue, 13 Jul 2021 13:08:44 +0000 Message-ID: References: <20210708163255.812-1-vivek@collabora.com> In-Reply-To: <20210708163255.812-1-vivek@collabora.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: eeac153d-c723-443b-06eb-08d945ff581b x-ms-traffictypediagnostic: BYAPR10MB2760: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4502; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: P+R7jR1/sWm7G++D7o06TFJ2uiTuG9HsvEJ99UeO2NAPkNO5ByMEJxlGZ3dq238DjpfsActXJw4Pmb0xIm7WznPpMh2sIyrG7LA/71v0wbKBy39+lOx5v19pxIP8DYrC5gc9ez0uXAY5vGNxTYv7cYMFdeO0tYleOEuOJi0KOoLYRxRyv7GmKJZSOeDGf0IrtasFFdMCqTj2sJcJTZNpi+NrZFHXfzjHtwdy3kufmd/tbxx9DC30U685tZ5zvWQn28Xjm2KC1vMrao1go6GKjNGgYCQTmqyj1yvhcXMhH7UrMIVOVSaPluWyiMdzwI5SjcuHDV+EXNo1YcGHjxV/WGSicUQCr8wki68MD5YGGStoiuhDrrVpEBvBXyf5z6RT6qiscbQhIPcuTLNU1ZHI2tvuc/DEEOO0LwWnPAjCk7jVOGOpZqePvzPd/mU8wgvV8Iji5fftVdNw7n8sh17CoRneorIExbkvzJ7J1weQnZYyZ+yAXv5Z7BTeDWCgYJiHlY/wIrVRJQ2xyAhQD9VSAdl9+26G4MnQHY4DOdfWz3qPrheGMN2cFKAJqdJu5Q0dVPVZtTrm6eCeXoGtajwGusgtVLa0wcJw+8g+HjywLuvSrUEGNHtIdW9KQxb1pFYbMUrNpMx/nyBvH8Ro1P8IKPCnF/IzwPCDuAEY3M8TVu6Qb08VjriDfF9qGqIepzeMWO8m48NHkePz4T1TzgGBOQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR10MB2792.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(346002)(396003)(366004)(376002)(136003)(39860400002)(478600001)(83380400001)(5660300002)(19627405001)(110136005)(122000001)(166002)(64756008)(26005)(8936002)(966005)(38100700002)(66446008)(8676002)(9686003)(33656002)(66476007)(66556008)(2906002)(76116006)(316002)(91956017)(86362001)(66946007)(52536014)(71200400001)(6506007)(7696005)(55016002)(186003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?IgKlaw4k9/lJfNst1wXMZM333/P4c8IcCKlDTjurKox1XO2nWFG5SKRr02?= =?iso-8859-1?Q?6Ik5uifiTpXGJakHyqZ7lLumH1PAVg1kXEaPA7wopOCCUJxQU+kfGG5jNn?= =?iso-8859-1?Q?6qQtxSfaIUt5ovAWbBR5OJyFzdk8BlgYQzwsROqzm1wAEY2sWV1hZKIog7?= =?iso-8859-1?Q?P/65yMvrcrIosvC/nUkbSswR0sEQXzdeROM3PQjfU1YhNyeB9AiizJjXwo?= =?iso-8859-1?Q?Edm4losOv5/hFC+ZrcznZ0hF97QkD5jYQALvWfdVVM3pyfUn6X/V5/0nYm?= =?iso-8859-1?Q?jmLpT0NQZBT+7a4vZJ6otpSwR4Oro8fXdVodfh4U9nQEmEHGzf/pUejfc+?= =?iso-8859-1?Q?7r6STvFCL1cq1QCqH3JF2rldzPL5PBhcwM2nwRDgtBcSJMXhxhsEqhvzxo?= =?iso-8859-1?Q?7SUEU9RJsrnmLr//xE7OvoatvWU8i+i7nDm10yPtkYeFf/MxDNfnkbsFFl?= =?iso-8859-1?Q?jBmk5FfdzfkjpxFlkeJCSNayNkBxcA6kLAvkgotrmg/dsUvExXfMCq5O7V?= =?iso-8859-1?Q?XORy5AMJDcg2Gke9sM0Hg0PdMTjqkAfkafwvACF59+9SbMN9IihZ7huKIi?= =?iso-8859-1?Q?cnkVJ4Rl7Ct7DVV/NqOy36VNYjwEqtreWDO5oki0dltSgzJIpdWYbBt/D+?= =?iso-8859-1?Q?9ClZ2ELsBOZabP0/YBY6oEDmPeNT4Duon85KiI0oNT6NkEUdaDQoW/Bh+n?= =?iso-8859-1?Q?Ya+jTFAqisKjTcnxvsn1r/sNmYH/3G0v/hQ5svk1YOFOiZpig8s6miYl57?= =?iso-8859-1?Q?vukkJ8E3dbnpfCXn3HfQ7GoHVUEoDnvyhG6CVVeHNtfJsSxZY26FCMVCQr?= =?iso-8859-1?Q?CeMA4/uJIOfN0R4NVHcg7eEcDPYwmY33i2UN5vUgdHbM+AyBUGyDCenG2D?= =?iso-8859-1?Q?tUx0hw2uU12EI/pgkZ1NhJdYEQdkGEAibt067LwpHO5xPM/93/bn6QQU5b?= =?iso-8859-1?Q?IXfQwT7Tlj1wpFjWcnEXOS3QENMgxwmpD35ogaBGnRHVVOMLlt0Asj767B?= =?iso-8859-1?Q?p+xN00pednOhX8u4O9VdcRbGntSS6rhRhHlAvboiOMKIdgRqfRCZ/WG7Xo?= =?iso-8859-1?Q?ZF0Vi8/Ppw1Ltay3CfBrb5MLw65g25yKNQ+Tx3GWoOV+VeyffCpX7r70RA?= =?iso-8859-1?Q?+ZD+nSMwLQC8iXZby27o+AXjZBsh+WEwSxR0jTZg4WSsbJj38kghxh2Plv?= =?iso-8859-1?Q?n1x4WbM4Wg7IfZ+EPRaz+hhJauzXepG2KCXQFmjEnA34a1PC3xo1q7Hn/l?= =?iso-8859-1?Q?psf/ghhIt0d5sjJy+h80MGMeo+ZJwbGV427rynXsIXlUpsnPAv8eklc/Wx?= =?iso-8859-1?Q?Hidee2ti01XJojTm+fZIg9gzQrMV6Z2hf1ALAVir12vr2qw=3D?= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB2792.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eeac153d-c723-443b-06eb-08d945ff581b X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jul 2021 13:08:44.6109 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: eUQo8qw0IkktPF+wiWH637zOSUewnAGIn4jySmSMr+LnzaQn+D/QTECE8tHqlYJmWE//czla5Nc9joZcmKhZZ5hO7E4EzoQkEFHVZvr/KPY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB2760 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10043 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 suspectscore=0 phishscore=0 adultscore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2107130084 X-Proofpoint-ORIG-GUID: 3s_BFLcG0M0qpxy_7umoQfA3rqNe6rvt X-Proofpoint-GUID: 3s_BFLcG0M0qpxy_7umoQfA3rqNe6rvt Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Alfonso Alfonso Peterssen via Libc-alpha Reply-To: Alfonso Alfonso Peterssen Errors-To: libc-alpha-bounces+e=80x24.org@sourceware.org Sender: "Libc-alpha" These patches + https://patchwork.sourceware.org/project/glibc/patch/202006= 26193228.1953-2-danielwa@cisco.com/ allow to spawn several isolated JVMs wi= thin the same process, each one with its own isolated set of native librari= es, including the Linux graphical stack, something that wasn't possible bef= ore. The JVM exercises MANY corner cases with its native libraries; we managed t= o run NetBeans, jEdit, MochaDoom, kotNES... (all graphical applications) in= side isolated namespaces, something we've been struggling for years and fin= ally we see some light. This is a huge milestone, if such complex applications can run, most likely= everything else will just work. We look forward to integrating these patches to make dlmopen fully usable a= nd bug-free. Best, Alfonso=B2 ________________________________ From: Libc-alpha on behalf of Vivek Das Mohapatra via Libc-alpha Sent: Thursday, July 8, 2021 6:32 PM To: libc-alpha@sourceware.org Subject: [External] : [RFC][PATCH v12 0/8] Implementation of RTLD_SHARED fo= r dlmopen This is a revision of a previous patchset that I posted here regarding https://urldefense.com/v3/__https://sourceware.org/bugzilla/show_= bug.cgi?id=3D22745__;!!ACWV5N9M2RV99hQ!eV1V1VkTp5FGE9qvHYkT0J0ksr5o_bFn6aR8= 8pY9tCmVNXczixTZHFkGZa5Fwr0cfbIaEw$ Introduction: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D As discussed in the URL above dlmopen requires a mechanism for [optionally] sharing some objects between more than one namespace. The following patchset provides an implementation for this: If an object is loaded with the new RTLD_SHARED flag we instead ensure that a "master" copy exists (and is flagged as no-delete) in the main namespace and a thin wrapper or clone is placed in the target namespace. This patch series should address all the comments received on the earlier (v1-v10) series. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Changes from v11: - If a DSO is required in a non-base namespace because it is mentioned in a DT_NEEDED entry and it is itself flagged DF_GNU_1_UNIQUE then a proxy is generated for it. - Relocations via non-base namespace proxies work reliably (some code paths did not do the address calculation relative to the DSO base correctly when a proxy was involved). - Tests extended cover the above two scenarios. Changes from v10: - A segfault in a dlmopen error pathway (which does not seem to have exist= ed when v10 was applied to the then-HEAD commit) has been fixed. - The fallback mechanism for adding DT_GNU_FLAGS_1 sections to the require= d binaries has had some infrastructure moved to the elf/ directory - The runstatedir setting introduced by recent autoconf has been omitted f= rom the patchset as it is not relevant to this feature. - libpthread no longer tagged DT_GNU_FLAGS_1/DF_GNU_1_UNIQUE. (with both -z unique supporting linkers and if the .os hack is used to add the new flag - this was inconsistent before). Not changed: - There is still some diagnostic info in the config.log when the linker layout is acceptable but -z unique is not yet supported. I believe this _is_ useful diagnostic information as a developer might otherwise wonder why the vanilla linker was being rejected when its layout output seemed fine. I have not yet implemented, but plan to address once this series is accepted/acceptable: - dl_iterate_ns_phdr (cf dl_iterate_phdr but taking a namespace argument) - Check RTLD_GLOBAL interacts properly and unsurprisingly with RTLD_SHARED= . Vivek Das Mohapatra (8): Define a new dynamic section tag - DT_GNU_FLAGS_1 (bug 22745) Abstract loaded-DSO search code into a helper function Use the new DSO finder helper function Add DT_GNU_FLAGS_1/DF_GNU_1_UNIQUE to glibc DSOs (bug 22745) Implement dlmopen RTLD_SHARED flag (bug 22745) Add dlmopen / RTLD_SHARED tests Restore separate libc loading for the TLS/namespace storage test Drop DT_GNU_FLAGS_1/DF_GNU_1_UNIQUE from the libpthread DSO Makeconfig | 3 + Makerules | 18 +- bits/dlfcn.h | 10 + config.make.in | 1 + configure | 42 +- configure.ac | 31 +- elf/Makefile | 109 +++- elf/dl-close.c | 43 +- elf/dl-deps.c | 17 + elf/dl-fini.c | 6 +- elf/dl-init.c | 4 +- elf/dl-load.c | 223 ++++++- elf/dl-lookup.c | 26 +- elf/dl-object.c | 78 +++ elf/dl-open.c | 121 +++- elf/dl-sym.c | 14 + elf/dynamic-notes.c | 4 + elf/elf.h | 7 +- elf/get-dynamic-info.h | 12 + elf/rtld.c | 2 +- elf/tst-dlmopen-auditmod.c | 23 + elf/tst-dlmopen-common.h | 33 + elf/tst-dlmopen-main.h | 879 +++++++++++++++++++++++++++ elf/tst-dlmopen-modules.h | 21 + elf/tst-dlmopen-rtld-audit-shared1.c | 8 + elf/tst-dlmopen-rtld-audit-shared2.c | 8 + elf/tst-dlmopen-rtld-audit-shared3.c | 7 + elf/tst-dlmopen-rtld-audit-shared4.c | 8 + elf/tst-dlmopen-rtld-audit-shared5.c | 8 + elf/tst-dlmopen-rtld-audit-shared6.c | 8 + elf/tst-dlmopen-rtld-audit-unique1.c | 7 + elf/tst-dlmopen-rtld-audit-unique2.c | 7 + elf/tst-dlmopen-rtld-audit-unique3.c | 7 + elf/tst-dlmopen-rtld-audit-unique4.c | 7 + elf/tst-dlmopen-rtld-audit-unique5.c | 7 + elf/tst-dlmopen-rtld-audit-unique6.c | 7 + elf/tst-dlmopen-rtld-shared1.c | 7 + elf/tst-dlmopen-rtld-shared1.h | 64 ++ elf/tst-dlmopen-rtld-shared2.c | 7 + elf/tst-dlmopen-rtld-shared2.h | 66 ++ elf/tst-dlmopen-rtld-shared3.c | 7 + elf/tst-dlmopen-rtld-shared3.h | 43 ++ elf/tst-dlmopen-rtld-shared4.c | 7 + elf/tst-dlmopen-rtld-shared4.h | 14 + elf/tst-dlmopen-rtld-shared5.c | 7 + elf/tst-dlmopen-rtld-shared5.h | 25 + elf/tst-dlmopen-rtld-shared6.c | 7 + elf/tst-dlmopen-rtld-shared6.h | 36 ++ elf/tst-dlmopen-rtld-unique1.c | 7 + elf/tst-dlmopen-rtld-unique1.h | 86 +++ elf/tst-dlmopen-rtld-unique2.c | 7 + elf/tst-dlmopen-rtld-unique2.h | 25 + elf/tst-dlmopen-rtld-unique3.c | 7 + elf/tst-dlmopen-rtld-unique3.h | 13 + elf/tst-dlmopen-rtld-unique4.c | 7 + elf/tst-dlmopen-rtld-unique4.h | 14 + elf/tst-dlmopen-rtld-unique5.c | 7 + elf/tst-dlmopen-rtld-unique5.h | 58 ++ elf/tst-dlmopen-rtld-unique6.c | 7 + elf/tst-dlmopen-rtld-unique6.h | 51 ++ elf/tst-dlmopen-sharedmod-norm.c | 34 ++ elf/tst-dlmopen-sharedmod-uniq.c | 33 + elf/tst-dlmopen-std-do-test.c | 12 + elf/tst-tls-ie-dlmopen.c | 4 +- extra-lib.mk | 5 + htl/Makefile | 4 + iconvdata/Makefile | 3 + iconvdata/extra-module.mk | 4 + include/elf.h | 2 + include/link.h | 7 +- nptl/Makefile | 8 +- sysdeps/generic/ldsodefs.h | 11 + sysdeps/mips/bits/dlfcn.h | 10 + 73 files changed, 2455 insertions(+), 77 deletions(-) create mode 100644 elf/dynamic-notes.c create mode 100644 elf/tst-dlmopen-auditmod.c create mode 100644 elf/tst-dlmopen-common.h create mode 100644 elf/tst-dlmopen-main.h create mode 100644 elf/tst-dlmopen-modules.h create mode 100644 elf/tst-dlmopen-rtld-audit-shared1.c create mode 100644 elf/tst-dlmopen-rtld-audit-shared2.c create mode 100644 elf/tst-dlmopen-rtld-audit-shared3.c create mode 100644 elf/tst-dlmopen-rtld-audit-shared4.c create mode 100644 elf/tst-dlmopen-rtld-audit-shared5.c create mode 100644 elf/tst-dlmopen-rtld-audit-shared6.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique1.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique2.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique3.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique4.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique5.c create mode 100644 elf/tst-dlmopen-rtld-audit-unique6.c create mode 100644 elf/tst-dlmopen-rtld-shared1.c create mode 100644 elf/tst-dlmopen-rtld-shared1.h create mode 100644 elf/tst-dlmopen-rtld-shared2.c create mode 100644 elf/tst-dlmopen-rtld-shared2.h create mode 100644 elf/tst-dlmopen-rtld-shared3.c create mode 100644 elf/tst-dlmopen-rtld-shared3.h create mode 100644 elf/tst-dlmopen-rtld-shared4.c create mode 100644 elf/tst-dlmopen-rtld-shared4.h create mode 100644 elf/tst-dlmopen-rtld-shared5.c create mode 100644 elf/tst-dlmopen-rtld-shared5.h create mode 100644 elf/tst-dlmopen-rtld-shared6.c create mode 100644 elf/tst-dlmopen-rtld-shared6.h create mode 100644 elf/tst-dlmopen-rtld-unique1.c create mode 100644 elf/tst-dlmopen-rtld-unique1.h create mode 100644 elf/tst-dlmopen-rtld-unique2.c create mode 100644 elf/tst-dlmopen-rtld-unique2.h create mode 100644 elf/tst-dlmopen-rtld-unique3.c create mode 100644 elf/tst-dlmopen-rtld-unique3.h create mode 100644 elf/tst-dlmopen-rtld-unique4.c create mode 100644 elf/tst-dlmopen-rtld-unique4.h create mode 100644 elf/tst-dlmopen-rtld-unique5.c create mode 100644 elf/tst-dlmopen-rtld-unique5.h create mode 100644 elf/tst-dlmopen-rtld-unique6.c create mode 100644 elf/tst-dlmopen-rtld-unique6.h create mode 100644 elf/tst-dlmopen-sharedmod-norm.c create mode 100644 elf/tst-dlmopen-sharedmod-uniq.c create mode 100644 elf/tst-dlmopen-std-do-test.c -- 2.20.1