From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D6F7A3AB283 for ; Mon, 8 Jun 2026 08:38:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780907940; cv=none; b=CKbWLXwK8TVOCRb0+IthTIqavbZbf+Ibo8rYjs7zeiuUi6M4M619MqSyjM1TzQlgwVbi5NdL8Ny7JEInXRtzyELGeyGuDgomGKmusPUq5euPJcX1zeQf2Iek+WU1dCCC3Ed/1UINI0b5wWx7CgQQA6SteuKNdGOCySJCg2SE4R0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780907940; c=relaxed/simple; bh=9G4viGLxhnf9wEDx0vlsgDGsNz6CjvZFH6MPF7/wsQQ=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=LF2c8xmkyhFOfRh2hIFDXKuMCKum+w7/300E2xypi5A8nI7kCIx/xyIQLPONHjVMKtvb2bzLR9iKB7EgIaLbK24vNqyr1E2sW4oxxUj1beC1vlNTjW7cJu5clg8rVeVg2tLAhbhOJKsTM+FeMYAZR98OhAtIQ9+zekXjCddUEVE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=AFH0W5OE; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=ijDAX9b4; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="AFH0W5OE"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="ijDAX9b4" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1780907937; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=EnA3ajreXHx2VoG4/VPZjRVpyyF9Dgnshjyr2lhZIq8=; b=AFH0W5OEo2Qn1vreC/ANDj0Uke9EOnTnojRzUPtxHwhOyPLsqyhbJ4vnDk42ye+2NOc7+Y neqDHwvsJuKvjmSnIv17X98aQvT9RweaR5F78FD2T9YDfLXAcmtCCVyGgNEsVEchwRisLC Bn/b9HFG6dQKzmA/7qMgDS/81TtC+L4= Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-561-0m0VvXA2O96Pc83WzYjKMg-1; Mon, 08 Jun 2026 04:38:55 -0400 X-MC-Unique: 0m0VvXA2O96Pc83WzYjKMg-1 X-Mimecast-MFC-AGG-ID: 0m0VvXA2O96Pc83WzYjKMg_1780907935 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-4601102c30dso2291581f8f.2 for ; Mon, 08 Jun 2026 01:38:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1780907934; x=1781512734; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=EnA3ajreXHx2VoG4/VPZjRVpyyF9Dgnshjyr2lhZIq8=; b=ijDAX9b4rIkoT5a+5IEOvIWNNedIsVXlVE+77nexwSi/Qub/l+pZxcOl9GkPvMwma/ HY+/mH+7O90TuuY8PmUmjjvMiPIny3NkhmicBjQ4wQIawwihRDrjcC0xrKywsVZYu/jp YA/kThzorg5II86GwOxn4VtKrnlbJACpZOGInfjqL4UbS+QyVPnuZcYjyioWYVWBawtE yhzvkTbDefbIdzw5T023MzH6bWmZ1vxzD1eOGmIqhSlZ1NHhcUJLmFh341M2Fw+U8ehT UG9+vsw9Gg5LKtJKO/1QI/C7vu9OQdqlHTie78XcV7vyVS9SfCUPb69YaZZnyct7b+hb NA5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780907934; x=1781512734; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EnA3ajreXHx2VoG4/VPZjRVpyyF9Dgnshjyr2lhZIq8=; b=TjxMc7xEe+lmwwrO35UmzpF1ha6Hponjl+Ya2ScMgGCbEqNy0pQ5QouDA08JTdGKGC qM/Lf95VREPg3pEbOfbhNXvx2LF2XcyNVgMnMkxM1XwUArG9PTDJDWNAK5sY68THm8jq E8wSR88iGf8Nc9y/u5f2gYTMFUp7XnKtTaEMPHQT5fvDGXeNqZsQgTt/dKwT7hj6Ka7Y aLsaGKNj+X30ECAZVyZ4sk7j04OOHuHRiZ+P9iM+DFzW234/YgjUfLU3gZEfEyHy715O Mv0o0fR9HNt1t6n5dZ0tQBsh0p+/4/Rfm16KE77GvVk6NhyStTGe+i/Bhl9SjRNaArWW Tp/Q== X-Gm-Message-State: AOJu0Yy8XwstTJE7fpOQ5V8v5etco6AmSyVUiI4idsye2k+LSbfIDa7U sQybBac7as61qCRkcfEgbY9/5HvDlAEEL6soFY9WreWXFoiwhKxQobxW5G1JWqZat8SMxDgREA/ i32BL922vb6qA1SadxiJ3s/jauTcC+lTvaELiIMWxKTltwtjC9GZtQ8diKr1u8fORy9E0sEfmHv 1W2oVjz2Au1K5hSfFCCiEZ7EY4ysR4JgvkynpWRgk82rc= X-Gm-Gg: Acq92OFFALfxRB+Ty8CGNl5LCID/2oiGW5fX8GzNiQk1HYhPYxPDNscSCULPTX6atF1 2Oo1unXENn1qfyffCVNXbLunHxoyxjFLC573cxTbT4/7bJSk1ZY+sIYZbYlfqCZJoeDMHaZAJuy Yuo/TDhwb0z9dv/FrnWLFeaitdFR06uXIVWoJGuaxoFnOI57VdaWhssUKD4Agqj7l0i4jw72Wv5 nrE5zQAK9v9+TphJNsdk7Xg/yQKZ243wZP/6ZBnfJo1I6cFTr+4AveqXrCXp2fADaHCKqQ7mErh 9HUoEip3m6HUDVb0p6GM7W0itkyNGKqdMhjS9sxb5FcOJM90ftgPYYtaxPaUOyEQo91rkrO7G37 8rTtqcmOhSXC0QZEbdSsxqt4= X-Received: by 2002:adf:fcce:0:b0:45e:df08:b18 with SMTP id ffacd0b85a97d-4603075ca65mr15338438f8f.32.1780907934439; Mon, 08 Jun 2026 01:38:54 -0700 (PDT) X-Received: by 2002:adf:fcce:0:b0:45e:df08:b18 with SMTP id ffacd0b85a97d-4603075ca65mr15338352f8f.32.1780907933822; Mon, 08 Jun 2026 01:38:53 -0700 (PDT) Received: from redhat.com ([31.152.37.159]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4601f3446aesm55104695f8f.24.2026.06.08.01.38.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Jun 2026 01:38:53 -0700 (PDT) Date: Mon, 8 Jun 2026 04:38:46 -0400 From: "Michael S. Tsirkin" To: linux-kernel@vger.kernel.org Cc: "David Hildenbrand (Arm)" , Jason Wang , Xuan Zhuo , Eugenio =?utf-8?B?UMOpcmV6?= , Muchun Song , Oscar Salvador , Andrew Morton , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Brendan Jackman , Johannes Weiner , Zi Yan , Baolin Wang , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Hugh Dickins , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , Alistair Popple , Christoph Lameter , David Rientjes , Roman Gushchin , Harry Yoo , Axel Rasmussen , Yuanchu Xie , Wei Xu , Chris Li , Kairui Song , Kemeng Shi , Nhat Pham , Baoquan He , virtualization@lists.linux.dev, linux-mm@kvack.org, Andrea Arcangeli Subject: [PATCH v10 23/37] mm: page_alloc: skip kernel_init_pages for FPI_ZEROED when safe Message-ID: <7de6959a0fb1b255dc9bee2de494f51a6c21e468.1780906288.git.mst@redhat.com> References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Mailer: git-send-email 2.51.2.2891.g4157995a80.dirty X-Mutt-Fcc: =sent In __free_pages_prepare(), when FPI_ZEROED is set the page is already known to be zero. We can skip kernel_init_pages() if page poisoning is not enabled (because poison would overwrite the zeroes). This avoids redundant zeroing work when freeing pages that are already known to contain all zeros. Signed-off-by: Michael S. Tsirkin Assisted-by: Claude:claude-opus-4-6 --- mm/page_alloc.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 008f1a311c40..e3a7c40c769c 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -1443,7 +1443,14 @@ __always_inline bool __free_pages_prepare(struct page *page, if (kasan_has_integrated_init()) init = false; } - if (init) + /* + * Skip redundant zeroing when the page is already known-zero + * (FPI_ZEROED) and page poisoning did not overwrite it. + * When page_poisoning is enabled, kernel_poison_pages above + * wrote PAGE_POISON (0xAA), so we must re-zero. + */ + if (init && !((fpi_flags & FPI_ZEROED) && + !page_poisoning_enabled_static())) kernel_init_pages(page, 1 << order); /* -- MST