From patchwork Tue Apr 30 20:05:02 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gabi Falk X-Patchwork-Id: 89205 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 0A13D3858D35 for ; Tue, 30 Apr 2024 20:05:52 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) by sourceware.org (Postfix) with ESMTPS id CB7563858D20 for ; Tue, 30 Apr 2024 20:05:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CB7563858D20 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org CB7563858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=212.227.15.18 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507529; cv=none; b=PTOceQ/u5CKbvpk1rtH4ExWtKDGTYWiIEXR2ReQ7gP/ZGaVtL5QLQKVIbZU2f298OMtg/sRs1o8dEJGiuw2vPmxvANJ/+JloiMUCGxB3uDv1MA9qe4jIGJSeaPkiNc6bgW4vHF+vDl4UlZJgzI2Ou+Bpy971mmR0uMyDBO+Nzbc= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507529; c=relaxed/simple; bh=GCv3BDZHSuS83H1ZWRpmI2q9+2B8lcg5Pbc3R6S9MuM=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=U6dupmnt6G9hbPDR24huN0zWqO0ENtrt5Ri7exDm9gFwopwrnfZG9kZ9k05DAtcnt4GPeUR9HqwFTH/ZYlYgy4NzgHunWnODBQA3B7NE5W8VycxUvoAGpq3InzbKbkU4iUoaa1sVT49ToFqSNbcimcDnLP8pjVLrP7TF0+mfezc= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.com; s=s31663417; t=1714507520; x=1715112320; i=gabifalk@gmx.com; bh=0F5t30AG2I4IdRCOMPdi+fE2Yy+GK70PEZtryhLaI6A=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=QZ1dYZ/TUW/TjY1dP8Ujr/wg1EXCjH+FYoeM7pc+qJ8g+B28jSLldLejXfy65sBS NHuakQ622aJtgGyIH0mBAMRi3YCSmOSgSUwy5yqVHlDdErFCEEG3QfPC5zgwTYkMb na/mKF48Q1cV2BqitTRWNMioigtD89UGqPCw4l3KEzmjLr+izKpbWLo+pL6ejT8qM hgMTDo3U4sPdHakHlccf5B0kGL5oVZOHqesswxQCYItGbpCv/jCo9AQ7EKgUiV9IJ HSroG3j3LOZb5H767GDu6BkuRLRuOen+s9+ZWuixGDdkTB5kMzfu6aRJKBonxnGWi BhqgpCZTo41Ke5ky0A== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from localhost ([46.120.23.13]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1M3DJv-1s4uOz0cxh-003cis; Tue, 30 Apr 2024 22:05:20 +0200 From: Gabi Falk To: libc-alpha@sourceware.org, "H.J. Lu" , Florian Weimer , "Dmitry V. Levin" , Sam James Cc: Gabi Falk Subject: [PATCH 1/3] i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk Date: Tue, 30 Apr 2024 20:05:02 +0000 Message-ID: <20240430200506.2717717-2-gabifalk@gmx.com> X-Mailer: git-send-email 2.43.2 In-Reply-To: <20240430200506.2717717-1-gabifalk@gmx.com> References: <20240430200506.2717717-1-gabifalk@gmx.com> MIME-Version: 1.0 X-Provags-ID: V03:K1:JqOik7GdhxOFIrAwMbHJ0O1zOUsHcVzRZtyAvVMjirFzA8ROfWn ftCbqhLpF4Q+9/BBDyWxhT5enqSVEtqdmZAeoFDx2B5BAFes71qK9gX4a37P7z+Hqe4rnLW nBDuKdUwgNCfdYw3hdsMbWuAphRocEJKqZlovisJ1L7qQ4TgfyQ+VreHBHtbJIff3B3w6f/ gP6JPiksxD/HbbZviPqVQ== UI-OutboundReport: notjunk:1;M01:P0:WrZc7CWDJ/E=;r9dMQt/fNeCsIy8DkNcem6Qj5au ayTdmefg8SwAQGZjhYIyB7xtbr7fhRiMC/KggcUq5LyS/tF+auzwAQZceeEdyEXpdgvK3hyTq +emBCSKH4iHCN5V9ecd3+US/QfDb1PpqQPka96NjFp2+5ztqgwuw/XAXaMC8sIZJwMfl7n2xv CuPLBaIJBo0IPKB5xzSgT0eCN8IQIldLqRcNeGcOAaeMa+nWwIrzRzaZxsDNPxryc9ceW8iYq ujeufTZtm7zmw1Kf98Begdg2WGbUlScRV1sCIczGr/iRf2yNW5eKrAwke3u9tKb+ssTT0y14S lGDEg1T6cAsm90gcbDca80znB9HXa9Uh6vPtX6XlXUvOmGOKjXZFiz1/cIGF1RF6ShEEppgiA x+C6IkI8udyAp9uVIEDQNqf2oODvBpFAeK9RIendnwfByA3esHL3Qy/+np5G1saNUGuIrgnh0 +bbsmFE0UXY5nVTbfOZkQbivLahlMa0lSkKAvh8I4E8wbbO7TEzXQUKMumGnWbXmFJ+eROQoI 7PtJZanZRkSrzMSRtwJnmJIjTrhjeKz8kzYX5qYPImv7Ew4SennNbMaMIWXfXSKDcxRNH7wf8 cFHMSLZEy2F/k2PAc6gZoDbuAewFaAT5fUmhP/q3GgVMIbT/h9PK5M29JKVUlnMko8dUl8Nt3 vonLMDaD8gExmvtKCmr6aCnRmcnXMvsDHoVIilw2ChxAyzrVA3jEO13MuZ6dVS2nqUOmyHC5j Ot9vtaj2jWA9Yt7Rdcsu/gUO8q0sGZrmI99n4extAWfmJMSFqYQRFUJ29YAOEm57cWhunGfzx GPWZdYHoKfW6a9rT5HSpw1xoZOCrKqwH4buh0hQIX4SKc= X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_BARRACUDACENTRAL, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org /home/bmg/install/compilers/x86_64-linux-gnu/lib/gcc/x86_64-glibc-linux-gnu/13.2.1/../../../../x86_64-glibc-linux-gnu/bin/ld: /home/bmg/build/glibcs/i586-linux-gnu/glibc/libc.a(memcpy_chk.o): in function `__memcpy_chk': /home/bmg/src/glibc/debug/../sysdeps/i386/memcpy_chk.S:29: multiple definition of `__memcpy_chk';/home/bmg/build/glibcs/i586-linux-gnu/glibc/libc.a(memcpy.o):/home/bmg/src/glibc/string/../sysdeps/i386/i586/memcpy.S:31: first defined here /home/bmg/install/compilers/x86_64-linux-gnu/lib/gcc/x86_64-glibc-linux-gnu/13.2.1/../../../../x86_64-glibc-linux-gnu/bin/ld: /home/bmg/build/glibcs/i586-linux-gnu/glibc/libc.a(mempcpy_chk.o): in function `__mempcpy_chk': /home/bmg/src/glibc/debug/../sysdeps/i386/mempcpy_chk.S:28: multiple definition of `__mempcpy_chk'; /home/bmg/build/glibcs/i586-linux-gnu/glibc/libc.a(mempcpy.o):/home/bmg/src/glibc/string/../sysdeps/i386/i586/memcpy.S:31: first defined here After this change, the static library built for i586, regardless of PIC options, contains implementations of these functions respectively from sysdeps/i386/memcpy_chk.S and sysdeps/i386/mempcpy_chk.S. This ensures that memcpy and mempcpy won't pull in __chk_fail and the routines it calls. Reported-by: Florian Weimer Signed-off-by: Gabi Falk Reviewed-by: H.J. Lu --- sysdeps/i386/i586/memcpy.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- gabi diff --git a/sysdeps/i386/i586/memcpy.S b/sysdeps/i386/i586/memcpy.S index 3e26f112d6..79856d498a 100644 --- a/sysdeps/i386/i586/memcpy.S +++ b/sysdeps/i386/i586/memcpy.S @@ -26,7 +26,7 @@ #define LEN SRC+4 .text -#if defined PIC && IS_IN (libc) +#if defined SHARED && IS_IN (libc) ENTRY (__memcpy_chk) movl 12(%esp), %eax cmpl %eax, 16(%esp) From patchwork Tue Apr 30 20:05:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gabi Falk X-Patchwork-Id: 89206 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 53B23384AB58 for ; Tue, 30 Apr 2024 20:06:07 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by sourceware.org (Postfix) with ESMTPS id 6BEA83858D1E for ; Tue, 30 Apr 2024 20:05:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6BEA83858D1E Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6BEA83858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=212.227.17.22 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507544; cv=none; b=uxWbwrxZHwi0oEYWhfFUozXj3VP19Ymw8gZ9o5BJMGGIrMMO+UocNU6Y5VARyD5VDQM8vFwdvfBy4lYI1mq+Q00kw3eWB3yjg5V2PI53/qLXP5dOAD+iX2KwcbU3TndrSShZWPmNEftQiKSbT0SCk55DEsWYXWUDZxi/OU0gfcI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507544; c=relaxed/simple; bh=zAIgAHhgGOo+N4Lu0lvyx7H6ZotxQo4sbNiTm76M8Jg=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=rnE8jIK1R/S0GJChqg10ku8uZlAAUlSC36yCwyc8TAQFZ1S3kq15N6tecAKxej/C4spTN4yPQ4/ap+I6dL4LfQZS8W8PBbgc3aErx57NET+VHo7Y7P9roJTBMQ6iiOAzL8ry1qVF4ft3O1Fx7HdQ0r6MO0RlnML9h/1KFeziMtQ= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.com; s=s31663417; t=1714507523; x=1715112323; i=gabifalk@gmx.com; bh=jGrB3U2SObtCufsPS40KLhHrFwTqfYI+nRqPa1UdsSU=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=k4XYknydWy2tBmWheT6yn4/S6xUu6KKCZALfyfAj085uYAnwMNnL288tlmklDTrA RTeZkbsFsUG3EjDtd3e/LSYdq+EC4QUG/leSr60rgLAR+4nCMXEWPxNaZLRlFngMm 4syC2FwY/QGzih20VZl2rbROJMmxWvjMYQxmASsZZtTv1LNv1mHuKeW3XivQ0NZjM XRI/gc+K7d2NrHrZ9Kt8avD6Hp1wB7fIwAXrbvLAoyBJQPef1oG78Yw5e0KAAnkAN /RWlfk6MQuPWlHvoRw7Ibqm/gYnb7Cea3p1+yD4APIqjcRcdA/tcxmnu2KuO9u1Q6 pNGZUbSEoFBtoLEVHQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from localhost ([46.120.23.13]) by mail.gmx.net (mrgmx104 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M2O2Q-1s5jTx0r9C-002Ljn; Tue, 30 Apr 2024 22:05:23 +0200 From: Gabi Falk To: libc-alpha@sourceware.org, "H.J. Lu" , Florian Weimer , "Dmitry V. Levin" , Sam James Cc: Gabi Falk Subject: [PATCH 2/3] i686: Fix multiple definitions of __memmove_chk and __memset_chk Date: Tue, 30 Apr 2024 20:05:03 +0000 Message-ID: <20240430200506.2717717-3-gabifalk@gmx.com> X-Mailer: git-send-email 2.43.2 In-Reply-To: <20240430200506.2717717-1-gabifalk@gmx.com> References: <20240430200506.2717717-1-gabifalk@gmx.com> MIME-Version: 1.0 X-Provags-ID: V03:K1:rq3XQYr2HBjKW985kdYWvMwATQH0l4tXSjfiHcjP9Oad0Rs+GOJ SYDcxGe1NNobTpXzp/2yqrR01jVqmJIVXraqwJ4a7iRjVUw2mwCh+SqnPW8KPoctqbwMBeQ veOdq3ox6tWBUo+UDizsYUAIwxPo4Av44yTu3fE/VzEf8+DZo0QhP2xKgjSs6EGqsy/qf0r ZIDlTZDDX/s+vMJjlXQkQ== UI-OutboundReport: notjunk:1;M01:P0:3CWDGtCnY3Y=;L7lJlaQo5emLyI+F/Hipkq8F2Gk jKJD3b5etAUS/Hi3NzbrjyAHu8R9jAkt+9/GUuy4jHxAgh1n3oehZwqD5elDxljQQYPuLUVxx LhMNi4IBs2MGZbqH4sBSUPp9S85utuVJ5Bh9mghHYLyrJo3qjhoN0mdirbe4YOG1etOZzAT+B AR2cuSyKv/TZRnpRf/Wdf0g7jSH4o3P4gIBDgIPa49bgVJUW7CycYnIh/YdComDW5rtbHUQaX 8OxlY7dhdkpNqhNU0ZIhNiWUKK7j53kWQ3Q8c+A1rtrOV+wY/HkNYq0g7OdvmbK9CpdJ+K/qE YkOwUD2I9xtkKNcKrWeLSeVR+D3mTHHmjUGX/DMInRXzvqO852p86nKF1SHJe+vq6L3FZT6eS key4oT/ZXxzXI9mLma9ftGFu6lRQlArTGu2LWWhzK21EgLgHkqpvq3VCzArYjiTWsf6TaoFCA Q9MLSQFPFyOX+e77g0L2kQTmBe27lMwvTraNRatHdrwLpUcRGEBL1Gfkcbc40do+Cz0s0HjAP LY+ju0w+9X69km684Xo00ADcNbblFTdtDi0IhhxN5cHi0ZrOtU9VdHTFzDxxZ+uv/2AiXItMB lbjmB1UJvsv9L5wxaU5wCoTviU0O7fWO28LFyrN/eZ5aKCArM21JgVJ0praC51Fq46RC1Ae2i tbUPHtSTOwOhECN5YRCHkTuqLv6oglu4VbibpuVANT1vxwVSKBGwRPueOe+bVh32dR+ojXK6d aJk27sPocofr1RNyD9jAZsZzJbwIZULhyG90RALYpU7/a7UVywu+UkGx1eixAL+VUrNuQ55o7 2zBDEjO6L4LMul1us6oTdI/paMZ/glw2TihqVC6Tk6Zj4= X-Spam-Status: No, score=-10.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_BARRACUDACENTRAL, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Commit c73c96a4a1af1326df7f96eec58209e1e04066d8 updated memcpy.S and mempcpy.S, but omitted memmove.S and memset.S. As a result, the static library built as PIC, whether with or without multiarch support, contains two definitions for each of the __memmove_chk and __memset_chk symbols. /usr/lib/gcc/i686-pc-linux-gnu/14/../../../../i686-pc-linux-gnu/bin/ld: /usr/lib/gcc/i686-pc-linux-gnu/14/../../../../lib/libc.a(memset-ia32.o): in function `__memset_chk': /var/tmp/portage/sys-libs/glibc-2.39-r3/work/glibc-2.39/string/../sysdeps/i386/i686/memset.S:32: multiple definition of `__memset_chk'; /usr/lib/gcc/i686-pc-linux-gnu/14/../../../../lib/libc.a(memset_chk.o):/var/tmp/portage/sys-libs/glibc-2.39-r3/work/glibc-2.39/debug/../sysdeps/i386/i686/multiarch/memset_chk.c:24: first defined here After this change, regardless of PIC options, the static library, built for i686 with multiarch contains implementations of these functions respectively from debug/memmove_chk.c and debug/memset_chk.c, and without multiarch contains implementations of these functions respectively from sysdeps/i386/memmove_chk.S and sysdeps/i386/memset_chk.S. This ensures that memmove and memset won't pull in __chk_fail and the routines it calls. Reported-by: Sam James Fixes: c73c96a4a1 ("i686: Fix build with --disable-multiarch") Signed-off-by: Gabi Falk Reviewed-by: H.J. Lu Reviewed-by: H.J. Lu --- sysdeps/i386/i686/memmove.S | 2 +- sysdeps/i386/i686/memset.S | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -- gabi diff --git a/sysdeps/i386/i686/memmove.S b/sysdeps/i386/i686/memmove.S index f230359ad6..effd958120 100644 --- a/sysdeps/i386/i686/memmove.S +++ b/sysdeps/i386/i686/memmove.S @@ -29,7 +29,7 @@ #define SRC DEST+4 #define LEN SRC+4 -#if defined PIC && IS_IN (libc) +#if defined SHARED && IS_IN (libc) ENTRY_CHK (__memmove_chk) movl 12(%esp), %eax cmpl %eax, 16(%esp) diff --git a/sysdeps/i386/i686/memset.S b/sysdeps/i386/i686/memset.S index f02f5a6df7..ab06771ea0 100644 --- a/sysdeps/i386/i686/memset.S +++ b/sysdeps/i386/i686/memset.S @@ -27,7 +27,7 @@ #define LEN CHR+4 .text -#if defined PIC && IS_IN (libc) +#if defined SHARED && IS_IN (libc) ENTRY_CHK (__memset_chk) movl 12(%esp), %eax cmpl %eax, 16(%esp) From patchwork Tue Apr 30 20:05:04 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gabi Falk X-Patchwork-Id: 89207 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CCB1A3858401 for ; Tue, 30 Apr 2024 20:06:43 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by sourceware.org (Postfix) with ESMTPS id 55A973858427 for ; Tue, 30 Apr 2024 20:05:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 55A973858427 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmx.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 55A973858427 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=212.227.17.20 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507546; cv=none; b=jLj/AA2RKlfDIIc/vARNmqC/Mi3vnj8OMDFgBhXfPWaQkKIIQWfaa1yuoXkGwGnxLxJMlWv55k+hYSyYGuQYiihdEi9ofO760WZSu3IHNTZvqVOXOfyVdBONZhmkNzwc8fSoo/MMRjBYl85bUJk0cqZfVOeFiKehKueM5uMSz+Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1714507546; c=relaxed/simple; bh=BLce9RS/uRrRvc8wzojnu7pHb0YYjrgeqX6TMCej83w=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=ukZeLty0lNSYxs5xBgIZw7rwV7KEfj2X1YG2+eNTSAv3u9KjwFPhmuP8vTcgW6/JwHGlE3rzqIs8vmHk9J5yUDUI6+XoB+gqVxdFfeYD1uHAlAMjkUFssfUSzfOQmrZXbbY7wE7TSZciURabl9ud/LdyMe+XnJPOBBZ1mcqQp+M= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.com; s=s31663417; t=1714507526; x=1715112326; i=gabifalk@gmx.com; bh=P03EJoJd/1LUqhNP4EXgG618xt3SYlpGZ5wyKh0lNG8=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:Message-ID:In-Reply-To: References:MIME-Version:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=fWthVptX7hnw2+4H1eDvQ4RwoKBmvBYDi6edXBLL6XK6UT00LgN84uyOiNVYDb50 6ON8luawXIQYrkvTTleILfnZdz1iQhNxaCiXo8Wv3OOipiZGnnAJNvH6Rj5RY2/UL l+xze/Aib/EXktwJ1Jxd4xjf/NnjO5WDVRSxfKURkDFz2XWyXfjkVyzhgRe4qy09K a9bc/vanYT1EYMN/Hullj8o9TZXvqM5qsl2TY+oyBxAbz2BefcqpojfyIxA6UkvoA wMAqBEJZOpzSsc1IMAH4meW0SZ2YkWvsfgnlf8PGPC502IGkld0Ux3WG8+kMcVY7a s3Gr42yYM9AeEo1nQg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from localhost ([46.120.23.13]) by mail.gmx.net (mrgmx104 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MNbox-1sHVbp0lyN-00PoSm; Tue, 30 Apr 2024 22:05:26 +0200 From: Gabi Falk To: libc-alpha@sourceware.org, "H.J. Lu" , Florian Weimer , "Dmitry V. Levin" , Sam James Cc: Gabi Falk Subject: [PATCH 3/3] Add a test to check for duplicate definitions in the static library Date: Tue, 30 Apr 2024 20:05:04 +0000 Message-ID: <20240430200506.2717717-4-gabifalk@gmx.com> X-Mailer: git-send-email 2.43.2 In-Reply-To: <20240430200506.2717717-1-gabifalk@gmx.com> References: <20240430200506.2717717-1-gabifalk@gmx.com> MIME-Version: 1.0 X-Provags-ID: V03:K1:dzxrZLWy+yHFmSaHiGUpya13rQ9izlb2fT//9gyjwR2JJRQbn8f J4mQbZ4mXs1zqH9GCRELjgRTxa8wVGV888RauFNt44QDqw2FoVV9BOxiCXvjUZgs/HNa9NB P9cedHarsaA0MeNkmfefJNzR6w4mMht7paa+hxwwgu5t0u8vGv0xSOdzxvo7Hq7oM5v/Bh6 MMvfH0NVHb44s9SkfDF9A== UI-OutboundReport: notjunk:1;M01:P0:qf/VYTo1esg=;/xiAa63WuWm4zSRCzNrLfLaGDL0 JCJMAyBBkJeL4G2yK/P/OGGmypKFx6bv6qK0UktSOQIo2byMTyl0AqOo9R+gM75nuJCHKhxL8 Gw+p+xxnnmTxd3OKxHh+qnaSqP/mMwXdXE+/WLz1Q47jRhdndzORIOWZQ2rccaMKvBOOrrTDt uM7BTfbdgRoji/JKsH+9aCX2rT7uCNkFyfkqvKU2csF/1zYUgorKron4tuou5gqYzpjS1aDwv EjlMEDMZ3FksjWfArnttRigwodVVk9uOBXCuK7SHnlxeKjzuBQHRh1S2UUSHqsLdcO8SKrdap DnvAa/fxxXsbMxHGR6sgZaxHKKL+VWqDDzO5wtTm1fDZk8DIQkDe2ZtVgWG5WdcpY6lgF0aGg p7chuWjVpw2H2qIHl8f8UK1n0hr21TkUEBUug3WplHPAA+HhXe7E1hD8dpPUEFJnLExaW9LmG 7YAGlxW+DMk6nZs1zxILiSr3x13bDEgWEt6EqkpkpG2RY+yVmi6qnWWq1zFctVUdO5hupaEyr m2n0fHCMd5X0cxTDFtkbnEl00uKojTS+/TylOHs8y++F9XeLNBjO+9h8SW+VB77CJU3rMvJgt U1uTyaw4NtdbbweKumstTni9DqyjXeGNwqbo2zj1ADvKPb7mrs4kTFi27P7EJnlDiS4C1YuUm 2xk+7VbaI5sO9YtqVhA1tl/plGroaoa3sHO2Q8W9kPnqAkmcSVE3N8L0uzdRz9lRzAQIcackP K3R2uuweLeL/beKwf7s+pcPJbRvHkLPg09vgKJhKmZYMYE95CUuLt5dCmuU21oRoGTE6NgW24 thXPCQupgP9wmKiYgUoFn2bFvVvWlr6soIc/O28I6hV7w= X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_BARRACUDACENTRAL, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org This change follows two previous fixes addressing multiple definitions of __memcpy_chk and __mempcpy_chk functions on i586, and __memmove_chk and __memset_chk functions on i686. The test is intended to prevent such issues from occurring in the future. Signed-off-by: Gabi Falk Reviewed-by: H.J. Lu Reviewed-by: H.J. Lu --- Makefile | 7 +++++++ 1 file changed, 7 insertions(+) -- gabi diff --git a/Makefile b/Makefile index b5ef98fb04..adf4749124 100644 --- a/Makefile +++ b/Makefile @@ -577,6 +577,13 @@ $(objpfx)lint-makefiles.out: scripts/lint-makefiles.sh $(SHELL) $< "$(PYTHON)" `pwd` > $@ ; \ $(evaluate-test) +# Link libc.a as a whole to verify that it does not contain multiple +# definitions of any symbols. +tests-special += $(objpfx)link-static-libc.out +$(objpfx)link-static-libc.out: + $(LINK.o) $(whole-archive) -r $(objpfx)libc.a -o /dev/null > $@ 2>&1; \ + $(evaluate-test) + # Print test summary for tests in $1 .sum file; # $2 is optional test identifier. # Fail if there are unexpected failures in the test results.