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 648A3CE7AA5 for ; Mon, 25 Sep 2023 17:06:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7230C8D0030; Mon, 25 Sep 2023 13:06:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6AAB28D0001; Mon, 25 Sep 2023 13:06:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5251A8D0030; Mon, 25 Sep 2023 13:06:06 -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 413EE8D0001 for ; Mon, 25 Sep 2023 13:06:06 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 1620B1CA8A4 for ; Mon, 25 Sep 2023 17:06:06 +0000 (UTC) X-FDA: 81275747532.01.3FB99AB Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by imf12.hostedemail.com (Postfix) with ESMTP id 2AB914001F for ; Mon, 25 Sep 2023 17:06:03 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=hfDjXOPc; spf=pass (imf12.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.173 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=1695661564; 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=d5xMja9yFkheQHqE/iXRfDYgX6Arhzs6tk3qD/XhCzk=; b=HhtjsTTd4B/vrGLPPU45pop8qhD3O8OKV+pc7WJYt6m/L3YVhvCo2N6yTY6zsua9OMTs5B +gU9Jf5von8KUl6roWeZzWgDM0zjjBdG+FJqq/VRoO5BsKeiyuvXv+txmbh0Cx/azgbDEp 4kkf2WtZljxEx724zsngvUUNWuqbTWA= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=hfDjXOPc; spf=pass (imf12.hostedemail.com: domain of keescook@chromium.org designates 209.85.214.173 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=1695661564; a=rsa-sha256; cv=none; b=WZfIUbcxAA+6wcHsjbmp7x3qCn3AzSUwUqfYpDYM4enET04dJvaCL+fUVaBoYBQVDHcpGo KzimYpAp3CA7ZPt5UBVzl2CipU2Nd78UqF4Vwx9t5KZk+KhqmfihSk8tGUrZt3Ud++6IVA hLuGds5QtwdUc7iuuEoqXVHMN7fv6fc= Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1c1e3a4a06fso45952855ad.3 for ; Mon, 25 Sep 2023 10:06:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1695661563; x=1696266363; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=d5xMja9yFkheQHqE/iXRfDYgX6Arhzs6tk3qD/XhCzk=; b=hfDjXOPcPNBy3Eln3jSz7pQbsJ/S9D8AW2BfYPXgEXaysMXCvVTZuLA7uFpj6pkHp5 KileWxCtGvConzGoHUIVwqospRq9XKfin+AbF5SRJC7s9BOiPXdU8MuzyKQ3dJnBAXmf icOWkXDr8R4LRFLxhCLeNZ/4j2OrgmNCPGorE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695661563; x=1696266363; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=d5xMja9yFkheQHqE/iXRfDYgX6Arhzs6tk3qD/XhCzk=; b=TYbXnGP3ZWcQ6f9KgOX2GuEeAVfpopraA7UOtMbRJBav2y40tD3ajvLsSPUVvNgQzX koDHmAzk0g61b+Ms0of+3Oet5Q5O6NDKpgehKlIC9QN4WgiFcy9mRtv6YDzBTdK21OsG KsGng4V3bhgKd06ZRKGtnHzAxhmU9RJ1MZT8OxYqPaDuT40Jqnt0iL6Mj5QmbdEjYA0P s89gKwubI16dpfqRqQh6cXrL5UieY1e93d7B3MVYCjEEkJRELlR5XgDkp4gH/Rv6lpL3 NBB6PgEcogUvbotXNdDxhB4onNplhfs/nhlxYsbxIW+/mwgWJYMtfQPZkQ4VmY3VLkfl M5+g== X-Gm-Message-State: AOJu0YzX8Di3yCIiyqr8mL7hCBA4lL2gABV4ubWWgqyPjrgrpmVh1VRY nAyct3q5DVrrYDMBWpYIdAYLeg== X-Google-Smtp-Source: AGHT+IHpX/s355Isj57+S+omPh8sCxTjLdauW2heADkSvyIbh1n4SyJZJ9E+Cl2v/svT8YApVibwpg== X-Received: by 2002:a17:902:934a:b0:1bc:10cf:50d8 with SMTP id g10-20020a170902934a00b001bc10cf50d8mr4663367plp.23.1695661562783; Mon, 25 Sep 2023 10:06:02 -0700 (PDT) Received: from www.outflux.net (198-0-35-241-static.hfc.comcastbusiness.net. [198.0.35.241]) by smtp.gmail.com with ESMTPSA id d2-20020a170902cec200b001c5fc11c085sm5222785plg.264.2023.09.25.10.06.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Sep 2023 10:06:02 -0700 (PDT) Date: Mon, 25 Sep 2023 10:06:01 -0700 From: Kees Cook To: Sebastian Ott , "Eric W. Biederman" , Pedro Falcato Cc: Thomas =?iso-8859-1?Q?Wei=DFschuh?= , Alexander Viro , Christian Brauner , Mark Brown , Willy Tarreau , sam@gentoo.org, Rich Felker , linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: Re: [PATCH] binfmt_elf: Support segments with 0 filesz and misaligned starts Message-ID: <202309251001.C050864@keescook> References: <20230914-bss-alloc-v1-1-78de67d2c6dd@weissschuh.net> <36e93c8e-4384-b269-be78-479ccc7817b1@redhat.com> <87zg1bm5xo.fsf@email.froward.int.ebiederm.org> <37d3392c-cf33-20a6-b5c9-8b3fb8142658@redhat.com> <87jzsemmsd.fsf_-_@email.froward.int.ebiederm.org> <84e974d3-ae0d-9eb5-49b2-3348b7dcd336@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <84e974d3-ae0d-9eb5-49b2-3348b7dcd336@redhat.com> X-Rspamd-Queue-Id: 2AB914001F X-Rspam-User: X-Stat-Signature: bkrf1dici357cwjmzajaz555jhxdmb4b X-Rspamd-Server: rspam01 X-HE-Tag: 1695661563-424420 X-HE-Meta: U2FsdGVkX1/GmkajRlzkmvfbhIWXTjhs5lT8jmQ21ZXeNuEi8HRXCy7gxOpQgirawCDrqDqQjvRPZ9iCLAbZS12vD3AXYS3EOL5pkZ3Xs2c9sq8xF3rdgo+yJjz63iiwkJ5y9sHBEsq/LBKWGv2FTkmJc6PAMHTQPAXikLmLVl6kB1iMReovqZjnT6Bfvz+DQVPdB54HWG1sa34MLr0cGHFR01m7wgaJ0zpmWUZpTAa617rvpJwNq7O++cSER9eZshboKx8EGrEqwlGlE/v3E9MBcApQZqSvgb8wIWSPz0GwOuK2m/S8ghimN4yvsEJtc7s4xKSSAeP66GyRY5Dz5hGzYA/PfMvO6WKE9BclVgGkzCBvoSxiyr0RggIBhyOAQNYxkI3fXe8O8ZHM+/+kD/hMbZVUOcrTqaISj+PHj6IBkraXZluqNjTiEMjBxccd9sVf3JEqEJaH/cPdDvKYO/iBybfsOcJQurty6wb1sHjHFwPRIJx3CFyqneaoenoDz32rtoxN8bNt7TjtMSqvoqX4bSxDWDkDGVcBEA5+5yB54GJgmBvjLgpeJ6ByTKvz5IZOUn6G1rByR5srkrURgLSID6ToLri6QRH9rdpsZ4/83QF7bE5SKA42LZ1G6LZi9Y4gHJnARIAG2IqrKcC8CnD5re2DHLEo53rVh6RC7iUKLZQiMcTEFNtY6bpgGp22eRaee6nZ2QhSNPbgiUWuBpZdQe7/RqU+ovXULZAUO7T7EKkIB7W0wfJJJYe5vuVMcihvQEcOaYaUyr+DZr1LuWEPr4TuRsTMJmGmLgFeGYnzeJ5MIC3+IrgzqzLp/k8sr03wXvNpoITKasSLoFv2YpFbIKap8In6C0LlOurnykZ3O6raIONqT0h76Y9Kl5pdlQSUzJBTphxivyE6uvmU204T1JMTeJ2HF3zcfrmmRxVDbDHAgomciNoFtXNb0/yN83qan7XRO1C00U/IyZB lw/Txkgt DVoRpIh0LAIFNSf9sSmFJrpfE5mGyxsYn57aF9H7YBk7Q7kwGtPgx2bhNYawXVno/57m6FHM/AfzdkZmOMVtwVCpDqEMMUqO3n/FNUwVTIuby21EHD5Sb0kexIOs2n85QFbyeZyUxDu7WkN9GDLPVhrq92/V/8giERq+WeMlgBfg50Qux9TCX8UujH3mpHm48pwGofJ/jzDSH2xMc2df7sc8bp7g6cSRtfTuNz9C3ecnkOmHRDU4Dz07mW3cVgF/W2Z+pPcXZ6MRIyFZbPOdSz0UIqJwldI+lcnLw9nZhfABdZtHJwU2yyarxhx6ezGlx0t1r0EXB7JFpRfKterL5sUBnvLZbH3F4i1mQZEKzeJDqVDSeRYmIOuVYmqMClyF2sr/TaCJrJBRBFavcIO8RbIHSCHYqsKwq9xILR8zDaICCjggzmWnx92Zyf8o/8cQ4ROT3rJwLqzaZIElmrMwlJaBz5S8wE8nyxgTkXsEmN81IGLL6XaHZyrAreLFi2zGnNoflvmNPNGoX1OMwWhUeda4DndHN794A0mnkrOs7haSJBbJglXKgUNSd12UhLmwP+Z5KDGTuVik3/WKDq2NqIpfvk613bS6EXYxdHGfmby21qvNRBNwekz33sB67Uqtry8ENcRjNxpShxuZZ4+UceNyHcoARzbKrVcMp5Gy2eymGhPNpODv5Tu7SGw/HS63msHG1 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: On Mon, Sep 25, 2023 at 05:27:12PM +0200, Sebastian Ott wrote: > On Mon, 25 Sep 2023, Eric W. Biederman wrote: > > > > Implement a helper elf_load that wraps elf_map and performs all > > of the necessary work to ensure that when "memsz > filesz" > > the bytes described by "memsz > filesz" are zeroed. > > > > Link: https://lkml.kernel.org/r/20230914-bss-alloc-v1-1-78de67d2c6dd@weissschuh.net > > Reported-by: Sebastian Ott > > Reported-by: Thomas Weißschuh > > Signed-off-by: "Eric W. Biederman" > > --- > > fs/binfmt_elf.c | 111 +++++++++++++++++++++--------------------------- > > 1 file changed, 48 insertions(+), 63 deletions(-) > > > > Can you please test this one? Eric thanks for doing this refactoring! This does look similar to the earlier attempt: https://lore.kernel.org/lkml/20221106021657.1145519-1-pedro.falcato@gmail.com/ and it's a bit easier to review. > That one did the trick! The arm box booted successful, ran the binaries > that were used for the repo of this issue, and ran the nolibc compiled > binaries from kselftests that initially triggered the loader issues. Thanks for testing! I need to dig out the other "weird" binaries (like the mentioned ppc32 case) and see if I can get those tested too. Pedro, are you able to test ppc64le musl libc with this patch too? -Kees -- Kees Cook