From patchwork Mon Jan 8 12:50:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella Netto X-Patchwork-Id: 1883669 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=vzQ6zamn; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=libc-alpha-bounces+incoming=patchwork.ozlabs.org@sourceware.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4T7v7N6c6gz1yP3 for ; Mon, 8 Jan 2024 23:50:56 +1100 (AEDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 9BC7B3858430 for ; Mon, 8 Jan 2024 12:50:54 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pf1-x42c.google.com (mail-pf1-x42c.google.com [IPv6:2607:f8b0:4864:20::42c]) by sourceware.org (Postfix) with ESMTPS id 0F1683858D35 for ; Mon, 8 Jan 2024 12:50:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0F1683858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 0F1683858D35 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::42c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704718235; cv=none; b=kNC8Cd+EohTL696g5asK0f6YEkPARqjbexdSllhHUghNOVFnBgujzzvS9zo0pCmfpbJRt5yewJbnBD95/SOW2+ZGM0HMJ9FQoD0mFUIAJzLwNFAw53uHcKynLPKMHwFO6SOd5hqKCyybg/5x+mrGI6wc92JTPaoLtMfC7C/00eI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704718235; c=relaxed/simple; bh=ZXgRjgBJomudbN0K+wZ+eyGivU/3wnmV4bjs0ki/s6M=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=bhyw/1s/54Dokz1bw4PZ+3NtbJNYT5R2f3TEIprOWsV6z8p9XBMb3Z63g9yUGLcmcMkreIN0NC81bPu+CLzWn1SW04O7YeYaIC6xeagTKlj1C+1vG1WLyaRhVWGSShf2or/QaNseQ/Grj1Fev+O/j/HRdaVhJjIoe+uy8vboNIY= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pf1-x42c.google.com with SMTP id d2e1a72fcca58-6da9c834646so1465072b3a.3 for ; Mon, 08 Jan 2024 04:50:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1704718230; x=1705323030; darn=sourceware.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=MUxYvfBAXu9jmGpCjDBjLhHgDsIVtsE7SFBZUlxKgQ8=; b=vzQ6zamnWLBbKphtBqI05VT4rh2aRabkwhrzgPIMFXUuHRP8eQ4RT5TjBiBcZhAj9t HIV0WanaV2IH4mTe00XrDszMlnCSXT4UtGCz0sn+hFk+hCAKHG5i3o4YGcVdAdMlW/Xh j/UV1sQ0kz/fm+3pCWx4SdktWFGzgv3NSiwyHYDMLyOiorFuvqOyS5hyovVpFe20z7K4 gE2HsTDyhVJuvfzNzulZbX1L/ILfuDWWC3Bv7vCR6D7yag6BocuKUVOBFcSiFllggDoC PiOmy1GAquZ/7xg/T/VJ55O/NvnrPoivo2fQpynp0czZCSCR9Z4Niwjca0zEcYngvFZH 86mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704718230; x=1705323030; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=MUxYvfBAXu9jmGpCjDBjLhHgDsIVtsE7SFBZUlxKgQ8=; b=V9dWC2fk2ioEe6uL/huBdogjTvwumqkXlxPjXGVq3H1+Q40nOoXWcl4OMCsMZGfpBy M2YgCdcgeAHLRKonxJ0k5SoO2hopKlCAyaBJJwZH0Ynnqaso3Z6p0zoqHuUd+tBg2OyO +oQvrAe5v7w4ZDVlR4aSjIsJBYvPnJsotd5NbUBBCpmhlBo9sLwhBxSZUZacJX5x0LLg 2StYf+LE/66STDsszzXFvxRZDkbiLbbgQ0PWRbGgogjpoPW65nJhmDRK8/EKNxal8bgc 3/yBQ1sZXgdYlaOHhXdS7zYNNY3hV8hNtYhR3gDEoUg5VCZ8oe2iiWTToQ9xo0HPzfuE ySEg== X-Gm-Message-State: AOJu0YzwBo4s4geFcPmo61Yqsd9vi7v0DITkLBPKASuCDTrZJ1FKoUDD UfXVQFU/C2B5hjcRynygpKWY/OwZxLrk10fe4l/zv6Dmt6E= X-Google-Smtp-Source: AGHT+IFbTW9hmU1xuM6sg2MLpRnd9X2J7F92foxHkECDcL7JQIF4uBWkrvs2L10or8x4cthx6F9o6g== X-Received: by 2002:a05:6a20:ba9a:b0:199:9c7e:a58b with SMTP id fb26-20020a056a20ba9a00b001999c7ea58bmr2414699pzb.118.1704718230067; Mon, 08 Jan 2024 04:50:30 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c1:9dd2:7f25:c108:2fff:5f8e]) by smtp.gmail.com with ESMTPSA id fk17-20020a056a003a9100b006d6b91c6eb6sm6138473pfb.13.2024.01.08.04.50.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jan 2024 04:50:29 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: "H . J . Lu" , Noah Goldstein Subject: [PATCH v3 0/3] x86: Move CET infrastructure to x86_64 Date: Mon, 8 Jan 2024 09:50:22 -0300 Message-Id: <20240108125025.1389849-1-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-5.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_NUMSUBJECT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no 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+incoming=patchwork.ozlabs.org@sourceware.org And removes i686 support now that CET is x86_64 only. The --enable-cet now issues an error with i686-linux-gnu. Adhemerval Zanella (3): x86: Move CET infrastructure to x86_64 i386: Remove CET support i386: Fail if configured with --enable-cet INSTALL | 3 +- NEWS | 4 +- manual/install.texi | 3 +- sysdeps/i386/__longjmp.S | 73 ------ sysdeps/i386/add_n.S | 25 -- sysdeps/i386/bsd-_setjmp.S | 21 -- sysdeps/i386/bsd-setjmp.S | 21 -- sysdeps/i386/configure | 8 +- sysdeps/i386/configure.ac | 7 +- sysdeps/i386/crti.S | 2 - sysdeps/i386/dl-tlsdesc.S | 3 - sysdeps/i386/dl-trampoline.S | 4 - sysdeps/i386/i386-mcount.S | 2 - sysdeps/i386/i686/add_n.S | 25 -- sysdeps/i386/i686/memcmp.S | 4 +- sysdeps/i386/i686/multiarch/memcmp-sse4.S | 4 +- .../i386/i686/multiarch/memcpy-ssse3-rep.S | 8 +- sysdeps/i386/i686/multiarch/memcpy-ssse3.S | 4 +- sysdeps/i386/i686/multiarch/memset-sse2-rep.S | 4 +- sysdeps/i386/i686/multiarch/memset-sse2.S | 4 +- sysdeps/i386/i686/multiarch/strcat-sse2.S | 4 +- sysdeps/i386/i686/multiarch/strcpy-sse2.S | 4 +- sysdeps/i386/setjmp.S | 21 -- sysdeps/i386/start.S | 1 - sysdeps/i386/sub_n.S | 25 -- sysdeps/i386/sysdep.h | 11 + .../unix/sysv/linux/i386/____longjmp_chk.S | 37 --- sysdeps/unix/sysv/linux/i386/getcontext.S | 56 ---- sysdeps/unix/sysv/linux/i386/makecontext.S | 123 --------- sysdeps/unix/sysv/linux/i386/setcontext.S | 101 +------- sysdeps/unix/sysv/linux/i386/swapcontext.S | 139 ---------- sysdeps/unix/sysv/linux/i386/sysdep.h | 5 - sysdeps/unix/sysv/linux/i386/ucontext_i.sym | 4 - sysdeps/unix/sysv/linux/i386/vfork.S | 24 +- sysdeps/unix/sysv/linux/x86/Makefile | 27 -- sysdeps/unix/sysv/linux/x86_64/Makefile | 27 ++ .../linux/{x86 => x86_64}/include/asm/prctl.h | 0 .../{x86 => x86_64}/tst-cet-property-1.c | 0 .../{x86 => x86_64}/tst-cet-property-2.c | 0 .../{x86 => x86_64}/tst-cet-property-dep-2.S | 0 .../{x86 => x86_64}/tst-cet-setcontext-1.c | 0 .../linux/{x86 => x86_64}/tst-cet-vfork-1.c | 0 sysdeps/x86/Makefile | 238 ----------------- sysdeps/x86/sysdep.h | 44 ---- sysdeps/x86_64/Makefile | 243 ++++++++++++++++++ sysdeps/x86_64/sysdep.h | 42 +++ sysdeps/{x86 => x86_64}/tst-cet-legacy-1.c | 0 .../tst-cet-legacy-10-static.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-10.c | 0 .../tst-cet-legacy-10a-static.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-10a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-1a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-2.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-2a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-3.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-4.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-4a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-4b.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-4c.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-5.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-5a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-5b.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-6.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-6a.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-6b.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-7.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-8.c | 0 .../{x86 => x86_64}/tst-cet-legacy-9-static.c | 0 sysdeps/{x86 => x86_64}/tst-cet-legacy-9.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-1.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-2.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-4.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-5.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-5a.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-5b.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-5c.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-6.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-6a.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-6b.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-6c.c | 0 .../{x86 => x86_64}/tst-cet-legacy-mod-6d.c | 0 .../tst-shstk-legacy-1-extra.S | 0 .../tst-shstk-legacy-1a-static.c | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1a.c | 0 .../tst-shstk-legacy-1b-static.c | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1b.c | 0 .../tst-shstk-legacy-1c-static.c | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1c.c | 0 .../tst-shstk-legacy-1d-static.c | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1d.c | 0 .../tst-shstk-legacy-1e-static.c | 0 .../tst-shstk-legacy-1e-static.sh | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1e.c | 0 .../{x86 => x86_64}/tst-shstk-legacy-1e.sh | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1f.c | 0 sysdeps/{x86 => x86_64}/tst-shstk-legacy-1g.c | 0 .../{x86 => x86_64}/tst-shstk-legacy-1g.sh | 0 .../{x86 => x86_64}/tst-shstk-legacy-mod-1.c | 0 98 files changed, 357 insertions(+), 1048 deletions(-) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/include/asm/prctl.h (100%) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/tst-cet-property-1.c (100%) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/tst-cet-property-2.c (100%) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/tst-cet-property-dep-2.S (100%) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/tst-cet-setcontext-1.c (100%) rename sysdeps/unix/sysv/linux/{x86 => x86_64}/tst-cet-vfork-1.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-1.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-10-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-10.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-10a-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-10a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-1a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-2.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-2a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-3.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-4.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-4a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-4b.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-4c.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-5.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-5a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-5b.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-6.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-6a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-6b.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-7.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-8.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-9-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-9.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-1.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-2.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-4.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-5.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-5a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-5b.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-5c.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-6.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-6a.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-6b.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-6c.c (100%) rename sysdeps/{x86 => x86_64}/tst-cet-legacy-mod-6d.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1-extra.S (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1a-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1a.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1b-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1b.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1c-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1c.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1d-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1d.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1e-static.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1e-static.sh (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1e.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1e.sh (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1f.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1g.c (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-1g.sh (100%) rename sysdeps/{x86 => x86_64}/tst-shstk-legacy-mod-1.c (100%)