From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36602C04FFE for ; Wed, 8 May 2024 17:31:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A0C0D6B009B; Wed, 8 May 2024 13:31:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 96AF76B009F; Wed, 8 May 2024 13:31:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7F7426B009A; Wed, 8 May 2024 13:31:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 54C7A6B009A for ; Wed, 8 May 2024 13:31:55 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 066E6A1CF1 for ; Wed, 8 May 2024 17:31:55 +0000 (UTC) X-FDA: 82095921390.03.E6EE772 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by imf11.hostedemail.com (Postfix) with ESMTP id 2FBB94000C for ; Wed, 8 May 2024 17:31:52 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=RFxaFzA7; spf=pass (imf11.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.175 as permitted sender) smtp.mailfrom=keescook@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1715189513; a=rsa-sha256; cv=none; b=F/bgNkRa2fgnyisnt6QkGxMsdxHkG9XiarRdF7pOzOj18pseeWfX3mwCVl+3GEgGNBE7EM 8QozfQW71rLXxt80o8RviOrIEs811LF0nWVCttDo7EmnSyoOPg6/dJ1zaMSjgKpXhF/ooG mSOCWlRW1i2h7rlnJDyYuPfW39vKrTo= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=RFxaFzA7; spf=pass (imf11.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.175 as permitted sender) smtp.mailfrom=keescook@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1715189513; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=LryZi+4xwYKtyQkC5nMcWsfEgNGSH+ki5if1tY9mlg4=; b=VXfm7qyW1dgXw7dZ85LikZBAlMXKgq+ZGFtbNtmaadO09Jp4CEh/ON9QkGNPjvGDVCks4w GbZbITt6CnkSCHW1AhZoHKFmXl0Wi3vDe80nudk8mJxH4i+DuRyiI2qylzeCXd6JO+IRmm MjdKtWAs7tK+ZMAOXXyQ2Q/ruX/ezlU= Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-1eb0e08bfd2so28020865ad.1 for ; Wed, 08 May 2024 10:31:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1715189512; x=1715794312; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=LryZi+4xwYKtyQkC5nMcWsfEgNGSH+ki5if1tY9mlg4=; b=RFxaFzA70vqLTquksjym/Tsmbggv6MyB1urTS86Db0N8Eti/MWYwF9a6TtR7anvEcS m5pXKspaZCTHAzKyWlOuDEqS7zX1kFkGzcfcgXV40oZ+NQRNXOfzUtELo/I4aOkkI8pI qfjPHi6w7L50SV5vwc/1q81Dz46heNUc4OXRM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715189512; x=1715794312; 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=LryZi+4xwYKtyQkC5nMcWsfEgNGSH+ki5if1tY9mlg4=; b=omKLmIu0Sa/wrbJ6UBWeOTZNXYn2zuyYIQx8IzK4SHfk9lYaz1uG22c3XcZYb1gIlv fFtPu/gIVWe8naM7Ssgaat2u9UbUAZ9vwwkP3Xn0WmcvwU3tuDklqEv/+EbULxQqrezm w4RI60VhvE7oN/W6fH0XR9oPTiE5/f43MwFgiG8nXzeXfR38pSYXNJ7PVEUlHXxZQO8E xe6ZeDZjZ2t8dSIkz9dkrOIw7escT8zu9G+awMtXuAMiCJzC9OHpnKUqRl0IkgWy4gi9 b1f4VRuDJPDwgYRH32DG1p5Z3/WpVY8tCI0tm5cu5rAzgEv3/txGTKm7A8b3yvi0NI85 n1Pw== X-Forwarded-Encrypted: i=1; AJvYcCUUS0MA+jp5OzzzAxx2BJhhHpGd1EPHec3IGVIG0WYF0k5TRPFZE2N37c9odxJuGGRfan0pDM88iYbs2kjyQjqC8UU= X-Gm-Message-State: AOJu0YwJhFOKQCI6wLe7KL7vf4iSWsc++lMEp/oTdYR810IWdbsDUad7 v9OmCbsdnq+Pe/CBhjHln2rgrQzcds4wa37OGKlxhPsze+RML0na4P0IZ6iYhA== X-Google-Smtp-Source: AGHT+IEBz3iujEGHUiN6pMwCCHLnL29pazXkZjYSQaEFT4k7Uon0fGO9xIj8pPF7qEuotMY2ECs8Zg== X-Received: by 2002:a17:902:f681:b0:1ed:867:9ea0 with SMTP id d9443c01a7336-1eeb09959b0mr33516135ad.57.1715189512079; Wed, 08 May 2024 10:31:52 -0700 (PDT) Received: from www.outflux.net ([198.0.35.241]) by smtp.gmail.com with ESMTPSA id jv21-20020a170903059500b001e0e977f655sm12119608plb.159.2024.05.08.10.31.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 May 2024 10:31:50 -0700 (PDT) From: Kees Cook To: "H . J . Lu" Cc: Kees Cook , Chris Kennelly , Eric Biederman , Shuah Khan , Muhammad Usama Anjum , John Hubbard , Fangrui Song , Andrew Morton , Yang Yingliang , Mike Rapoport , Rui Salvaterra , Victor Stinner , Jan Palus , Al Viro , Christian Brauner , Jan Kara , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-hardening@vger.kernel.org Subject: [PATCH 0/3] binfmt_elf: Honor PT_LOAD alignment for static PIE Date: Wed, 8 May 2024 10:31:45 -0700 Message-Id: <20240508172848.work.131-kees@kernel.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=790; i=keescook@chromium.org; h=from:subject:message-id; bh=5xDT7DTBCjbbpPDtqZw3zek1av22h4oXew+hsl9hZOU=; b=owEBbQKS/ZANAwAKAYly9N/cbcAmAcsmYgBmO7cEADvYffN1IC7/pVMiNzZAqfw7Siu+Vh+L3 X1eDIp1zK6JAjMEAAEKAB0WIQSlw/aPIp3WD3I+bhOJcvTf3G3AJgUCZju3BAAKCRCJcvTf3G3A JmkbEACfFPYAlzDSyubCWagkKZa2qIhZ6/mp1d3/SgVGYzBvGQnXlJun4QXlTonBEGtFOXgxdpl ZwxYMmMKIVUgMU9c1MH/KPPOBmIaWpU9jjz/QrbWsNuu4VmFN1Gj7nl22S/nVG7HWsVv0jpC4lz 7Sqs1+HpviNBmb8g6pqStPU/D/Yi/UrYqEonlqv1ZwHATGOK38l338xxyK9Z1ojBFHo1X+Qcb7c TabR6GmdvbsmsUrMuBJ+grnobY0qs11GQoQuOcHeLRQ0l8rLh3QC5Byrc4BU/2CiJQ5uschDVvy ZLOgpYnBNtypoT2jgmSYL7W0U3m9Tud5jZMJo3nWeM0SWGFnQxCFIA9/G5yUPoXUDs/ChAO1ZFU WmAvz4xGhA2LFIJew4hyv9djB4hMTzOjgCmEWb5ruq86U/vV5xXGTw6p2XIXfGNmTJQ8A88U+aO DT+IWPlcpvcH2bIaabMPuVsazNTByLLuKaC4hWlxUsbcT2V2sFysugeQmnBu1AkmNPic8F6E0N7 m8PIo0vEubdPVFgKmSjqbnq+ggAollnp/GowN9s+7GGpWt8CYdw2JCLUkpz8ZjuqmT4TeBjspib +V6QOz0laYM4paS0xqONSlvrmCyanG2EFHXRFITXzG7F2xE/cH266l5bxOaoZi35b3UzS9Reeop xZN+QDCi hUsCcdA== X-Developer-Key: i=keescook@chromium.org; a=openpgp; fpr=A5C3F68F229DD60F723E6E138972F4DFDC6DC026 Content-Transfer-Encoding: 8bit X-Stat-Signature: 7zbf81u94jtmwg7433os9yntn73a7tat X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 2FBB94000C X-HE-Tag: 1715189512-868372 X-HE-Meta: U2FsdGVkX19LIvkTvd8ZQBqxlHcNzGA1R4zsBdFCCSrPSlYt802rwTLLbdKfH6Z3kExVgOSv5Ealyfg0W1rFN5e3wc4YhDOjlzcqO8GEijevMoC9f4zusAVp3oP8wi7ID2WhAe/B3jFNUp/s3DP78Uz/EzNWyc79KtxRgpGQeh4laQa8yqhM6S9TvSkIf/FKwQTz2l5bBU9wu8XEgIwyUA+mMIL/jFz2y7EhQT4U/WE+A7fEhjgViGZPhsAQ/d8a8EnI8FeEPNjSoFxyal+p97jv/brvhTCEJ+ps3/Wmw0iiK1wPbzE5aTz4S+uFJawtWG2pyRkdmELRnCC2RIu7bi2+HHVOD4bn2NJs+6QRSG8tcJkHDCZYc1CuX4iflrSLPXHfsDGwLTEYocGOPW1JP/synkeEvYoNW0Ro76y33yqN592bI3/lIGiEz+HKUYzf32arnU26PMyXwvNb7URLdruqhiSKpRigpo5nGjvJIaQZebDo7ocAcr0VSEAOXhEMZ343jRDjmKccZJGGx6hzJ1M03Ck5KGRL1fk71rCImOU7Av8iv2BpEskoXrJZUB2DOYO5lu7+OCCIaJLPx5AsXncTY7wCE09DSkcB+PpGG8XRBTxwV8mox5AXLqnwS9F3hlMrjl1W+hkC+brtV1UspSuTh/rsQZCO1Jv0Hbv4HswpPzFSDlN6HkCc+eS7IzN7A9ZUjBJmpvWO1srHxTHYjgHqgJKSgRpy1w9qUCFe69XtYtghmGaxI4VWLJ+2e/HN/Yc6UCsrtm/iqsNDvlEYi+lVKHaGlqcBYNFe0cfHfwrv5WkjBDLfZM44hqtZ6ElY6KNpLZ7f6tFRC1w2HcN2qKWr/7hjSnMjdsmslvsocF1tTUxy/FfdUAxlk2rkImidke3CxfhrNVsVObxEzTxiHIyT/W5nnIblx0g+ORNvMRzgDwhtTUS4tve+OcReDd5bJEiwOkXW3S4IpOprAYs 0GFO7spz 5oaJBvtmwfiiispr5HI+UvuxvcFcMhCm5EEZttECxxzUWsxR1kc3Vd1ri+xRW/24rQInrKx08yx8qXpylucx0fdjpnKxbEwYR4wb53U9svQpCjuwOeqnK60nyxEOgHimp4169uM1x9AXlcAnysb0PoghzOSgNt7DMQejnkJgp87VEQfRUsB8hAZ0QgpsYdf8/5KkI8viFPQVuoaxA+ktiXeEEg2PMadnrYGlSSaEHDUDKTZYW4F+t3xQxZ39Kazl7sbihMKQHf7FmnTEqmChsB1EYrz0POmn6yLITvyua27PnoPhMdS2am+coPkmvXND5ihXG1lKVYzJe9pfoKw6ANIT1dugS47GSObYRULPxACAR8N3B7lROLtaOPKqdzPa/5aQkpyxaSxOMQvRQgMFgX9EgPNJemikvr+RLquFtFnNp7PriSiEXVrgUAOULXKaVWeACbquX9qDIhvkPGrt+PSxIDCn+6dt4wPD/ X-Bogosity: Ham, tests=bogofilter, spamicity=0.000075, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi, This attempts to implement PT_LOAD p_align support for static PIE builds. I intend this to go into -next after the coming merge window so we can maximize bake time. In the past we've had regressions with both the selftests and the ELF loader. Hopefully we can shake everything out over a few months. :) Thanks! -Kees Kees Cook (3): selftests/exec: Build both static and non-static load_address tests binfmt_elf: Calculate total_size earlier binfmt_elf: Honor PT_LOAD alignment for static PIE fs/binfmt_elf.c | 94 ++++++++++++++------- tools/testing/selftests/exec/Makefile | 19 +++-- tools/testing/selftests/exec/load_address.c | 67 ++++++++++++--- 3 files changed, 130 insertions(+), 50 deletions(-) -- 2.34.1