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 3C020C25B10 for ; Tue, 7 May 2024 00:14:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BF1FB6B0092; Mon, 6 May 2024 20:14:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BA29D6B0093; Mon, 6 May 2024 20:14:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A6A3E6B0095; Mon, 6 May 2024 20:14:54 -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 88C3F6B0092 for ; Mon, 6 May 2024 20:14:54 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 0E1D2804B3 for ; Tue, 7 May 2024 00:14:54 +0000 (UTC) X-FDA: 82089679308.07.E5EB562 Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com [209.85.208.54]) by imf21.hostedemail.com (Postfix) with ESMTP id 416121C0004 for ; Tue, 7 May 2024 00:14:52 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=KQy+x5mq; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf21.hostedemail.com: domain of maskray@google.com designates 209.85.208.54 as permitted sender) smtp.mailfrom=maskray@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1715040892; 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-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=B8oWcFWnZBGCM1E5sWUM+4SbAQ1guZn75qzZz72Y3AQ=; b=nPyEzR0rIZcwcnWxfiZLV0hEvjwKEFYMT2C3vh9n7nl16kohglJp7tpLDz9aRerfhibezd iAm+SjOKpb/L9exwYhaZDhG6CFUcsfXjDyvPcOQ0H2SbE60enSdSqnes0PIS/D7umrRaNg GOTK7M+RnFXD7w/3LmM4IKJPgKbzNEQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1715040892; a=rsa-sha256; cv=none; b=UzWjF1KeCftBMZIS9dU3HA/6hYic5ziXFyFHwNBa1s9vLTYe+dFq/9ErszTLUaUgd9BLy5 PrJ/fpIV4qCuJqTXDGAU4ossc+YtKPJoxIDxVGk0keSJ3HzfxsbHelo+XLtdvkH/Gxb35h uiC9/aOpxVERLo8x8CsQxjUD+CxBrxQ= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=KQy+x5mq; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf21.hostedemail.com: domain of maskray@google.com designates 209.85.208.54 as permitted sender) smtp.mailfrom=maskray@google.com Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-572aad902baso7172a12.0 for ; Mon, 06 May 2024 17:14:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1715040891; x=1715645691; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=B8oWcFWnZBGCM1E5sWUM+4SbAQ1guZn75qzZz72Y3AQ=; b=KQy+x5mqoV+2Gp5olu+RQm0VSd8BOO7silJFhYnO96pL7fFYLeZm9JilmFpQvtoaSY 29tjanCRfIbLBVzkL1R+67r3Tt5kavdgR3yL3PM7pq4m7bawU9CqQUeroauYZxRCe0OK Q89PRVAwyVtar9DiQ+qM0kI+KG0+K71N5vzAY8NANMTep/QmmBTsccmIuf72hqn+CV+7 HKW51Qw32ZgpFw8ZHfck3uH3Of3ruM3oyr3Prcc7aI8h4nBqtHcF5Sdffkc1o5i/awOG /3BRECK24kixKzB9OlvgcDyhBspbfn82jYO6L/UEtwWfcDI4U+1llks5385VoOMMUXCX jDkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715040891; x=1715645691; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=B8oWcFWnZBGCM1E5sWUM+4SbAQ1guZn75qzZz72Y3AQ=; b=a1aIGxYu/5Pwlsng4/KA2cCOIFeUH0awLUAiVEp0Zpy8q1WJllOLenQUffiGBaeqPL qK/vA/TFEenHQrUKHkCMlaLDCGVQJ56grWGQZswbo5kS3gXfNODO7USMenIUx+c80F+G jlwYOtyFIOdnYyjNpunEftM97ksU+UVkQJv/sT+VBMt/bIWBCKbYIDol64koMiSvrJWT UQ+NZCA/HKJH7KA9Ym5MjHSjUdCSnxMaHCGSdJAq/m4J490EkcHjp5BKd/pgduQDjHOw eCB2mkdkErt+UuNVMV+mW9FIutBEY1aYUM89Rz5Mau5D5Lh2ncj8B0UlH+TROVQuBU9P yx0w== X-Forwarded-Encrypted: i=1; AJvYcCXHf2JpCmyKrHc3X0LkW7Wfjf77MpfrQpW/Q0xkzDcNLHHLb9rXQENpJ1BzzSlRRB/10rfp1/dfF+4/F0vMl3IUTYA= X-Gm-Message-State: AOJu0YzdF1SgDV92ajpLYRAPAKs2LC/Siuv3PIkPD3ta/lLYErDomQRJ I5ZTpefB6sZlIcZG3OaZQsvB9eg7M5tk0JOVdGc/r4EgTOFaSAsRO5HUteahnaenJhNc2r52BAH /a18TGe6yz8l+erqjgBaWsdKohVJG2XBHzLI9 X-Google-Smtp-Source: AGHT+IE15l4LDBVGhfGcDhfoCmROQP28ylvV/hj/rCXLLp9j4EClG5UA1ylJkDneYk8xq7WPhDsbgZ8lCxp3B6gC3v0= X-Received: by 2002:a50:cddc:0:b0:572:988f:2f38 with SMTP id 4fb4d7f45d1cf-57311e083efmr96122a12.6.1715040890499; Mon, 06 May 2024 17:14:50 -0700 (PDT) MIME-Version: 1.0 References: <20240416152831.3199999-1-usama.anjum@collabora.com> <202404161027.63F4D4FDEB@keescook> <202405061704.DD3AF674@keescook> In-Reply-To: <202405061704.DD3AF674@keescook> From: Fangrui Song Date: Mon, 6 May 2024 17:14:36 -0700 Message-ID: Subject: Re: [PATCH v2] selftests: exec: make binaries position independent To: Kees Cook Cc: Muhammad Usama Anjum , John Hubbard , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andrew Morton , Yang Yingliang , kernel@collabora.com, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 416121C0004 X-Stat-Signature: b9dfb791qpospzrj6kunca1of3egohj6 X-Rspam-User: X-HE-Tag: 1715040892-659982 X-HE-Meta: U2FsdGVkX1+7VAa+loD+xlkCVZ+++0KJAMJs2uSfthM3GntCCUIJdutiN3fXHXtGRc3t2ZrdMAXkDMmpOXNw2Ybn9zgKejbndFRWFZzWy2TlHkSSKUxGJ4knh64+HUqF1X6qcw4bpejLhxTk+oE6FfBPatvYcy3impR/UiuN9AfdGf8pGTaCsRs6S//9RzT3BF+QNfBgQk6CGMmMwvgwJsWTckysIuf//4+c4r+0bE8Jj2HveHfrW/P3J1LakmtVBVtEki+73TUZLH3+9Nn6Smecf9ySau+VTrZ5zphwPJ51M9dSR3P2bwz7gMF3nrEgmZoCM4zFITZjf+J/iIB4LaPOfEw5eRj4TVbFyK4X80yxMlae+RQs7URbbomkdTxUuQcBnIx75zFeCbH1cD+2Y9Et3wavg+wm5jNwxHkwnppzcgAIBh7cBVCS2klqP+4MLNQU3vQGgFHDOYlQwSHJs/rlkeExGCfl+FL0+1aXPy5FwEPsyUAD1Rf5KYmATQH88zbHZpIIMSmo29UXCj2cMISjyOmgQO/oPVH9/OR6R3MiC3zdPbGsECpJbY5V3g5fNBEZsyskZEK8KIUwx/586qlFoK/vbgejeaqBd3NQt0cBJQwUpLb8a24iOkv98vOudKJc8CrH7N5BfSDdaW6fvV70Cjnvj6CsqUQKHcIr7MKUJJq1Y24hUMsgnszXJfwU5dM9mq+GQ4hCcaSQ4XyovZ8rej705/BPZpt7phauZVj36d+rHwwAbd6lmLngvCmovh+hrptWax1A6T6PRUZmQOs0OCucu7huueidVTUdKnwETEOyAPsCTBRpx0OHywPcV3ivcoO7jTOGk+yTqkyeR+GFFYkfurefruFrDq1PeBo6NvEppPcKcJSdeuaDGeiJ935ZqHdcCbz6FUamWLtugxLNTvKVSgewzVUIJRBxOHBSemqlB0eQTMegIRp4dNhuaEEiIQFc59c/OfV9fyj xO2BfqdZ 0nFjpnqTF4x2EiJkwtGGTerMlGd66H3BIYCe1M3bjJ/jVgM4O7Fy1mpnt3CEa3cyePJEia7Dy88s4bgmeyh95lMuonk0+qlpz5JyRpJvlMEgkzYOe61GYwujEJr4V9pSkXowBQWFHOV1sUOg+cJE3M2PQzS7Nzx35Y1R/l0P6V1kVJp40dtmm3V2AJHbcKtMeFgHmOzpor8zrD+A28jAcG9bFSlxQJN73fMSx8RJj319qVKmvfcs+c1gIXNUWey8Qt1JsWqCgTo4AjfVsGglQ5UdPyzP2PFjMhomx8k7TzesJ3N9GqCIdxDTCBPo/Ls86KirfLf4RHEZoqsbjeOmrA7JdPiTn1Ban6PS6fiC7VIfjAcRVxFGFhe6xqMW6wLAl1G/9mo8oLHPuIRbmURLYCVuqH4vBkK8wsOiNpz6KYRO1YZGyhdoCbrPPDVEw4Shkxjw4SyHTR080hi4GVF9lWvlojfb1Avfe8Ygr X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Mon, May 6, 2024 at 5:05=E2=80=AFPM Kees Cook wr= ote: > > On Mon, May 06, 2024 at 04:30:27PM -0700, Fangrui Song wrote: > > On Tue, Apr 16, 2024 at 10:28=E2=80=AFAM Kees Cook wrote: > > > > > > On Tue, Apr 16, 2024 at 08:28:29PM +0500, Muhammad Usama Anjum wrote: > > > > The -static overrides the -pie and binaries aren't position indepen= dent > > > > anymore. Use -static-pie instead which would produce a static and > > > > position independent binary. This has been caught by clang's warnin= gs: > > > > > > > > clang: warning: argument unused during compilation: '-pie' > > > > [-Wunused-command-line-argument] > > > > > > > > Tested with both gcc and clang after this change. > > > > > > > > Fixes: 4d1cd3b2c5c1 ("tools/testing/selftests/exec: fix link error"= ) > > > > Signed-off-by: Muhammad Usama Anjum > > > > > > Thanks for this! > > > > > > Reviewed-by: Kees Cook > > > > > > -- > > > Kees Cook > > > > GCC versions before 8.1 do not support -static-pie, > > while https://www.kernel.org/doc/html/next/process/changes.html says > > the minimal version is GCC 5.1. > > Is this a problem? > > > > If not, and CFLAGS is guaranteed to include -fpie/-fpic/-fPIE/-fPIC > > (PIC), using -static-pie looks good to me. > > Should we use this alternative, which may be more portable? > https://lore.kernel.org/all/20240504022301.35250-1-jhubbard@nvidia.com/ > > -Kees s/-fPIE -static/-static/ then it looks good to me:) -static creates a position-dependent executable. It doesn't matter whether the compiler uses -fno-pic/-fpie/-fpic codegen, so -fPIE can be removed. --=20 =E5=AE=8B=E6=96=B9=E7=9D=BF