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 81869C83F34 for ; Sat, 19 Jul 2025 09:17:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 88B726B0088; Sat, 19 Jul 2025 05:17:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8150F6B0089; Sat, 19 Jul 2025 05:17:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7041D6B008A; Sat, 19 Jul 2025 05:17:18 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 59E736B0088 for ; Sat, 19 Jul 2025 05:17:18 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 96E0C802AF for ; Sat, 19 Jul 2025 09:17:17 +0000 (UTC) X-FDA: 83680460514.04.DE054FE Received: from out30-118.freemail.mail.aliyun.com (out30-118.freemail.mail.aliyun.com [115.124.30.118]) by imf24.hostedemail.com (Postfix) with ESMTP id F32D3180004 for ; Sat, 19 Jul 2025 09:17:13 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=S3+UMQDX; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf24.hostedemail.com: domain of fengwei_yin@linux.alibaba.com designates 115.124.30.118 as permitted sender) smtp.mailfrom=fengwei_yin@linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752916635; a=rsa-sha256; cv=none; b=FRAAsnJ/P5Qu8XHDws9eHEuPRi9TDQVRsm+SIWEwcfaQIjZh/yLnyv9gcDO8wnn/JYLtU6 pDQ1NE2s1meBxQ6WYcrqALLnCUVie2mGtM7srKaM/68oi60xZSHKH1Ax+2MOEwcKmzrruL ZpF37svBmqxdwH7nZorUCM0mDtbez1E= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=S3+UMQDX; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf24.hostedemail.com: domain of fengwei_yin@linux.alibaba.com designates 115.124.30.118 as permitted sender) smtp.mailfrom=fengwei_yin@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752916635; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=48j/Fiq/ITVOw3EkwwMwGlaSpdF2iiyoXb+kYVk+eX0=; b=TkDqj1WKVIr0LzAzyafe8EBJQ/9fyA9O6uY4OKAMN9gdyKUab/SbvCZFL0o/vUc5JgQ84Y RT0dcwHaVg/Vha7lTDGmKSffg7b7MIx+5zxL5tWuZA8j1PeT80zmY+9kVZ4jtS/owLp2bd cDhcojIh/OLIsx2HlkWyIrKZgbnhrxY= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1752916631; h=Date:From:To:Subject:Message-ID:MIME-Version:Content-Type; bh=48j/Fiq/ITVOw3EkwwMwGlaSpdF2iiyoXb+kYVk+eX0=; b=S3+UMQDXxwiPWKV+nr+cY64ntyi4EKf3xo0qWCAh30UEwDphum/QsLFCDfgqAPlQeJiWmbdM6WDVXA/6+XLQcwvZMD6Hfoq3tz17E8YZPtJyHp9J+WF1JvhJYPIXsr4bVyiBi+BHLEb8VwIZSgi4pqVCZa82RZ4GOnDocbu4JIU= Received: from U-V2QX163P-2032.local(mailfrom:fengwei_yin@linux.alibaba.com fp:SMTPD_---0WjEL8b0_1752916629 cluster:ay36) by smtp.aliyun-inc.com; Sat, 19 Jul 2025 17:17:09 +0800 Date: Sat, 19 Jul 2025 17:17:09 +0800 From: YinFengwei To: Kees Cook Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, zhourundong.zrd@linux.alibaba.com Subject: Re: [PATCH] binfmt_elf: remove the 4k limitation of program header size Message-ID: References: <20250717110108.55586-1-fengwei_yin@linux.alibaba.com> <175279510782.2985357.8915174612817966643.b4-ty@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <175279510782.2985357.8915174612817966643.b4-ty@kernel.org> X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: F32D3180004 X-Stat-Signature: ks78k9s9q5714s6ahs4c359rssyijzh5 X-Rspam-User: X-HE-Tag: 1752916633-372258 X-HE-Meta: U2FsdGVkX1/KlLWaJKlR/gbQb83JypjQlDkyOWk+vDl7zniafDOuH+m9Op1SJshFBgmEjphOcnqWd3h4Wuq8HHl7yP0h7CO+7stS7x31pjZBMFq9U11pXywXyCezZ09mef2y+wZG42zd2vQ3ClrLk0aovW5ebOenaOTJ/Mr+sL7B96tY4Qutlco8BaYjikow+s89CLB21WuswF3adSpt9JGKSR21hbR1tcSeX5pvreif+/n/TZcYSNrS49hqKVNbbxBnXV9Eiy51Z2XkK23+dznqjfN9xA+xR7HszoodvM1G4jd6jWvFEqDZXbKu/E28kMucUkASRsVGzC8jDKMGu8nM5iccumR2Hfm3qLk21fqDK9ft146QCKQ416AIy0EN+pMleY71B2yFZxexTuYtYfuMl9fN5iLjqekVh5u3CUfeTOKg8Thz1IOg47Yc12QlhWUqYCVYNcZNYkt66fz3rr68gNuD4YxV34vWLHAAQVC94fYIlWCQwA0542fu7cjWn4k0qcGxPcl2OiwDCQGmeIXlpZmqNhFyt/7TOxZyAMDHBJZ2XXgBFgyWX5ej0Qd1TWFsVy7mjREEI8oCpIyEu2SiTUDlTEdnfa0ucQpmmcobZZ3jzgKw3MAto6aZPP0G4MhSDU/fqVfj+IFYSJVsveMKpNLYEKWoXsKq4rRNtPfyO6B+x/apbjx08jXxQnjl/Y1yDG+xLY1jv4VCrXv1A13E/EsJ8LIEqim2N4Hoq67p4rHCrlGjJJSzYKMd+vKxjjJE9apREEH2ScntlpsPbnyccgFVX7XqKTkdrmjsb0ONSMwVI+vulVFcgCX6EsIX4BB44KptIvsI/ZQtAxkDiFL21vP1+97Ou40B/+26v+IFQv+W38vloTF2IzuOMHcoyzgsehHCHeaUEi1bZlvOxJQJ25HyOMbCwIfkWmWokzk82JPO26Z1+NZztFXHgA3IbKmT1VGKUchbSk5z++O NbKeZ6CH EzoWzHdN8yhhBxlIMJ/tbtWkVcp5yGX6fVBADSx7jUqvCDVx/faSD7LHjfQAe6zS0wyO/axR+6MsnvjUl7pjy8enhal0jet9PvNTGqPHQutKsXTniQgNaFuDfI+GkykkSWGcUH5INAs3FxO4DgX9D9YCttY7ft/yl4IJ21SOn40d0GHFMZc1Odw0HAAhBe0VhoryxyoOwSkOGau4GHr8986zFXaGPZTcfGlwa9GPznYuKWi0JDE1zkZtHT9sDqxPMEKSsR/6okY8UE2jyqyXSy1g77+PXltHWQQj5fxIx548nxKZ+hW36CbRjTMieRSO3ujCkwXoioe5ehuk3TB3bXNuPVf1OuLcT+5oS6BzW80ZUqGCXOHZ/A7rLyQ== 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 Thu, Jul 17, 2025 at 04:31:50PM +0800, Kees Cook wrote: > On Thu, 17 Jul 2025 19:01:08 +0800, fengwei_yin@linux.alibaba.com wrote: > > We have assembly code generated by a script. GCC successfully compiles > > it. However, the kernel cannot load it on an ARM64 platform with a 4K > > page size. In contrast, the same ELF file loads correctly on the same > > platform with a 64K page size. > > > > The root cause is the Linux kernel's ELF_MIN_ALIGN limitation on the > > program headers of ELF files. The ELF file contains 78 program headers > > (the script inserts many holes when generating the assembly code). On > > ARM64 with a 4K page size, the ELF_MIN_ALLIGN enforces a maximum of 74 > > program headers, causing the ELF file to fail. However, with a 64K page > > size, the ELF_MIN_ALIGN is relaxed to over 1,184 program headers, allowing > > the file to run correctly. > > > > [...] > > Applied to for-next/execve, thanks! Cook, thanks a lot. Regards Yin, Fengwei > > [1/1] binfmt_elf: remove the 4k limitation of program header size > https://git.kernel.org/kees/c/8030790477e8 > > Take care, > > -- > Kees Cook