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 0C270E7716E for ; Wed, 4 Dec 2024 12:56:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 989376B009C; Wed, 4 Dec 2024 07:56:55 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 938DE6B00AF; Wed, 4 Dec 2024 07:56:55 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 831CD6B00B0; Wed, 4 Dec 2024 07:56:55 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 619306B009C for ; Wed, 4 Dec 2024 07:56:55 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 1E7B341C71 for ; Wed, 4 Dec 2024 12:56:55 +0000 (UTC) X-FDA: 82857276096.16.4606EF4 Received: from mail-vs1-f45.google.com (mail-vs1-f45.google.com [209.85.217.45]) by imf07.hostedemail.com (Postfix) with ESMTP id 609AD4000C for ; Wed, 4 Dec 2024 12:56:38 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=none; spf=pass (imf07.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.217.45 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1733317003; 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; bh=VbtYfoOv44CKDHrcRWfEAiDZ+MRBtL//lmvQ40sWgA0=; b=JeTPelayXcrljxLbAUcILwtqQbuBv6YEQGhcqoM/0QyBk7Php95n40Pp8HJthq/K8ne7G8 6Zo7japAsLX8295uBuh2WJyFGaeQY+o3KBTQPKEha51zKe8x3EOhWHYEQGNiEEjmoWBpjv sWyh6kMy2ZaMoRGZhNTv+eyEwkmQEos= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1733317003; a=rsa-sha256; cv=none; b=MOkgiv0OmpeBVu1HDf4Hkw6uzuPO+7C1jVAbOaoPj8nlhQ108nM5PSXCzJgdCOBh9p+Nyo h/WD+BshAvo8ZHgSQRHZU7/y/eq5GSYQCuH2jTWfEcSsSLxxDrQ8GXNsu0nLOfYU1R4kri U5wjCQ4gutAnCMyW32loHXKYvO7S+U4= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=none; spf=pass (imf07.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.217.45 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none Received: by mail-vs1-f45.google.com with SMTP id ada2fe7eead31-4af10fcf22eso406966137.0 for ; Wed, 04 Dec 2024 04:56:52 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733317010; x=1733921810; 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=VbtYfoOv44CKDHrcRWfEAiDZ+MRBtL//lmvQ40sWgA0=; b=wlFS3DVmkt7J7ogBs0PBrsgBaDanCnWuwzMB7YPWsu87QMCPewHNxYFHXIGszmnaBQ jlvjRZZieoZsuCjdXFwS1wIse4nL1iOkeR20EpTvpapdUst67jtd5A1XtQyv+OSdwKLs hnOHPsP+jPH5Yk24lJeldUe/ymA3+HEXObFQ7lgu4lKXxy5rmbUdDb3ZTWhtRvTOL2I4 jj3ADN4gYSFvqrR09YHaKDo8XWRY6dizADGy9qlTXpGJ2moaSOAhGYXvWGeK3EB4YBC9 BYncOdvWaMtPucW7e98T9YTQbUminKu9QqjLQdGfwOVDb79yF6F6F/N+vGmmB5vhGMcq A+gg== X-Gm-Message-State: AOJu0YxqVz3qu7uLrbXzIG0xURloea6Mhi5UJH9Kn6zv5739ja2IF7Ka vhN4HwCP8j/9vWMgaIUmOibqCioIoITiXeOahHEvjn6h41Q4VCzElS3vHAi3 X-Gm-Gg: ASbGnctJuih0yrbknrPZsbWQ9M5Gj4Wiv20nZDDAIblUFeiofvVZksFNtzbwidyHeCQ FZSCTfAdaYS14NiQRoDPPPKW7mkx4SIRk4Xjdwk+oZs6vx/lPEc6bXukUi1eCdcOiIUNJTaBjg6 4mnyczg1eRhaZn9o8suWpYQh6QJQmRpka+WyDHwP9HUGCI/lokwWg7L9tOUducwiyHLWjsBbswu fmzAt3xZ92kd509r2KRSSkn6tKKZ+w/q7HaIaQNwGkDAjBx3s4OFzhZ/8J2yXS8gsT+jxEns6ec k0fv5sB5Yrr4kh0j X-Google-Smtp-Source: AGHT+IGgmQjbx25zsfvMmdBMf4Qr4VgvMwfHUqxRkE7XoILy66mbXZD4+Nt+ubsGUk9vr8u39r4o9w== X-Received: by 2002:a05:6102:2a7a:b0:4af:5634:d26f with SMTP id ada2fe7eead31-4af5634d73dmr24922381137.13.1733317009857; Wed, 04 Dec 2024 04:56:49 -0800 (PST) Received: from mail-vk1-f178.google.com (mail-vk1-f178.google.com. [209.85.221.178]) by smtp.gmail.com with ESMTPSA id a1e0cc1a2514c-85b82a0d3a3sm2408719241.1.2024.12.04.04.56.48 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 04 Dec 2024 04:56:48 -0800 (PST) Received: by mail-vk1-f178.google.com with SMTP id 71dfb90a1353d-51544e9a0abso460392e0c.1 for ; Wed, 04 Dec 2024 04:56:48 -0800 (PST) X-Received: by 2002:a05:6122:641b:10b0:515:4d6:5dad with SMTP id 71dfb90a1353d-5156a90332emr25552648e0c.6.1733317008435; Wed, 04 Dec 2024 04:56:48 -0800 (PST) MIME-Version: 1.0 References: <20241011150304.709590-1-ziy@nvidia.com> <89C00242-69F9-43E0-84E8-A4CF8369E86D@nvidia.com> In-Reply-To: <89C00242-69F9-43E0-84E8-A4CF8369E86D@nvidia.com> From: Geert Uytterhoeven Date: Wed, 4 Dec 2024 13:56:35 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] mm: avoid zeroing user movable page twice with init_on_alloc=1 To: Zi Yan Cc: linux-mm@kvack.org, Andrew Morton , David Hildenbrand , "Matthew Wilcox (Oracle)" , Miaohe Lin , Kefeng Wang , John Hubbard , "Huang, Ying" , Ryan Roberts , Alexander Potapenko , Kees Cook , linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 609AD4000C X-Stat-Signature: qbid95ibjpmrhw11wxogqoutarec78j3 X-Rspam-User: X-HE-Tag: 1733316998-590200 X-HE-Meta: U2FsdGVkX18HGh9FqTxyzHaVj2rX6GYP6XWy2B4CCADTe5Mg/0vJ2q0TnQixG9JlWZ6MJlSCi3gLx99JYduoezbWPRcDhuP8df0uIGpqR0vlcLXpfQO0OnXtLYUk6L6NqCZS4K3ytNLtau11qbplULPaUo/l03ErXw5+qWErbHE2NcqBBFZOQExvwDH85K+UU97DUkjYnHEvkmXW9tPJ0JZuXzZJw8DQxUOZ2RcT/vQOmX13ZqDXaH0Dd95WjDsTmmkcdRrj8E+Ve6Q1yBJgajUkM7Vc53dpCwNhbrdx6eCbVCYRILhVewH2LZlkYSir8CTQI57+M01n2mo3me6HukVeYwFUn4yB6ntLNtWrpVwI3bmP6prSqTApxsjwfmrRmf1p+Hhn7M8zEto7CvDS1yemZ5kGAwA1jRxTgxmDeFYy7/wJYU2gT5RUDXUN/G2bMCSt74VxGUq4fxRsYTtTS8nCpQDVzCJ3sV/BxZtNHCWufv4PO0J/kRQee7NrTK9uAEsNX8bR6JJt0yrDKCulq15ovU222A0XglHIQPcef06BWDSZ1S62mTa6PtmOCjw3hkD4J1I+seaasrWbAbL7Trzg4vSUdoCueb8bkryV4faaJVgxA6TSM0gIyDvcIeTbp9BJkD98HAFzmvftqYeQsFRTBnkICsMHx67H0KbJdGILRb9WHBowsXgxmaRc1ocWcb/4e089sx/1zOU3D/+Lh9DgqMOU0npRriC44jDQ2eHkTYAQ5m1/mrRngfkvN+eSLUsuPWHGNQ9AchYK8u8H+ftoUKAvtciwXosqaPamgOF3/5Uh+1GKXIyyDenQr0Kwnait9U7kBlzOx35brLnrNZuQ6OFgObPWH0e7s8lZ+NcB93sZZpiGKaZSw9S8D/549ShkTCVexYkLqYIsfmEJb/3ZZ1rHQToao7F89ThWDpuFGxJRMu266AId4mfrxfZ109XScqjhOse4EK5ozlg mGHmtgRa UWst3JZ23aDh772MxUsL94CiuokMR6hxI4+bqpt3rc4SMH9GK1TF9gL/kLe8DSukRpwwFhThktuA9QVON8oGtmgyUcoMJmR0SqteRglviev0dDh+AeTX4cVI2EUug+mDknkjKwrrpSq7hB8BkCwbGATKWtn7RM2b9WylT6ztCQtctzaFaF6KOidvXxC4OSNzhzf92h2NbZSQyCZ5OKdC5Kw2v82qHcvDp2lpJ5WglXlnApLTOYSqbBqYUxMZ0pqP9CxkzIOlCeCR2jFO4j0vow/LLiTDFIAsQZdfqFZoLdt7nr7m9Z/0vIGBPk7D8x/x4vmC9M9iQ+N2EiXnakxap/P9aTduu/VHZyEoaBDrVFcSmPZ1i5GxGm4YWD9bdVS6aYOMKlyv5lyIq73QJ7tJTzlx4Ca/1AsZdx+W/XyZ8WN44TANfIEbVcqkjIttlXeMPC/mToZ2GBma7SXFPUA/+RU8U8g2F5ZShMjFi 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 Wed, Dec 4, 2024 at 1:50=E2=80=AFPM Zi Yan wrote: > On 4 Dec 2024, at 5:41, Geert Uytterhoeven wrote: > > On Fri, Oct 11, 2024 at 5:13=E2=80=AFPM Zi Yan wrote: > >> Commit 6471384af2a6 ("mm: security: introduce init_on_alloc=3D1 and > >> init_on_free=3D1 boot options") forces allocated page to be zeroed in > >> post_alloc_hook() when init_on_alloc=3D1. > >> > >> For order-0 folios, if arch does not define > >> vma_alloc_zeroed_movable_folio(), the default implementation again zer= os > >> the page return from the buddy allocator. So the page is zeroed twice. > >> Fix it by passing __GFP_ZERO instead to avoid double page zeroing. > >> At the moment, s390,arm64,x86,alpha,m68k are not impacted since they > >> define their own vma_alloc_zeroed_movable_folio(). > >> > >> For >0 order folios (mTHP and PMD THP), folio_zero_user() is called to > >> zero the folio again. Fix it by calling folio_zero_user() only if > >> init_on_alloc is set. All arch are impacted. > >> > >> Added alloc_zeroed() helper to encapsulate the init_on_alloc check. > >> > >> Signed-off-by: Zi Yan > > > > Thanks for your patch, which is now commit 5708d96da20b99b4 ("mm: > > avoid zeroing user movable page twice with init_on_alloc=3D1") > > in v6.13-rc1. > > Thank you for reporting the error. > > > This causing a panic when starting userspace on MIPS64 RBTX4927: > Do you mind providing the full kernel log for this panic? And your kernel > config as well. I am trying to figure out why changing page zeroing from > twice to once can cause kernel panic. Both sent by PM. Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds