Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3722163pxu; Mon, 30 Nov 2020 09:00:40 -0800 (PST) X-Google-Smtp-Source: ABdhPJw61bi+gTIdFB/Cq9SlCIJ0LJjZA8Ek2C63t+ZpzjxkDr7auxx7BF2GdsFchH2D+YQmiBiM X-Received: by 2002:a17:906:3ad5:: with SMTP id z21mr21490330ejd.35.1606755632958; Mon, 30 Nov 2020 09:00:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606755632; cv=none; d=google.com; s=arc-20160816; b=rSfWad8KK0Lq//6uq70fwQYxG74fCBBrA86Tc7RRgmWR3Z3SU3XKTnTIa5DoEQaUQh HgKsvsENEseNIfVYqmQjx14aZyhvJNqhsv11ZYM+zPEoKFx6id4YkAMf2rlTPRR3jKsJ LFs+aHqaNepkgrPZ07Y+iixYu6d92HFpRwU2FNSN+TXAGOowH5eutNtujddufs6hL5Kg nWp2YZpTrw7JsqxeFa2m45c14v6H8QC05K0pnempXbaF1802IkrJhnbDcCk9wWfDFNzr /2WKRLPJIxkckktknFuZQdX5X4uWtIiunlU1tbyGWCqzkIcJlZpV79BLvmGIsQwBANNM A9QA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=fVgqX/OcJX6JFwP1sX1hr80IRCSO4yicDkTzTwrqyp8=; b=0fSzqQUqIrEOaSwSpdCMmTsjm72DcmoQmo6EG01X9yQRCCTcp+5IPRIMnVT8kBO7cY 9Q7Y9vnjLiA1yeMYrKm7KoBDMwcLlOuOTUrjVs/0+TSV4Wti9+YHkysK61KscmtNdrYG EKmGxirMjOTHzhXUBCoNVfVqpnTmlNJ1Hr5WemkX67+ZjtOaDKFieINTUBIUCyqZaiGd KfPADHapj9GnyUC9KlhLnoI5xYp7ms7DpBLfP2fJ2zgmKPoMiIxX6cM5shhWx8INXqwh k8HlhYXlv96YZo7DrF/l+MCrBe2EtxBKttJPleynBZd4ipWeJny/dLZXcpaV1MQ61a+l ANHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fcnlTPWW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w6si11647887edj.604.2020.11.30.08.59.51; Mon, 30 Nov 2020 09:00:32 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fcnlTPWW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729002AbgK3Q4X (ORCPT + 99 others); Mon, 30 Nov 2020 11:56:23 -0500 Received: from mail.kernel.org ([198.145.29.99]:34186 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728924AbgK3Q4X (ORCPT ); Mon, 30 Nov 2020 11:56:23 -0500 Received: from kernel.org (unknown [87.71.85.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 76E982076E; Mon, 30 Nov 2020 16:55:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1606755342; bh=sMhubw65fYfWbhsLREknMs2fRzNGPSEU7m7l8IbsNoM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=fcnlTPWWFJgwnU2Ro0WvirNKqvBcmoabXOCJ8MZy4TMSa5azPKDua3w5O4hsgWnPu 6Kshu/TFwrw923A8pBuglb+1LUlyEtdcnJyH447QQAfMZuweoNj350AbvDJQrayjgr p/vN0ho8NNKktcmmnojMY9OYCqk3paaLJgaj5nkQ= Date: Mon, 30 Nov 2020 18:55:32 +0200 From: Mike Rapoport To: Rahul Gopakumar Cc: "bhe@redhat.com" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "akpm@linux-foundation.org" , "natechancellor@gmail.com" , "ndesaulniers@google.com" , "clang-built-linux@googlegroups.com" , "rostedt@goodmis.org" , Rajender M , Yiu Cho Lau , Peter Jonasson , Venkatesh Rajaram Subject: Re: Performance regressions in "boot_time" tests in Linux 5.8 Kernel Message-ID: <20201130165532.GE557259@kernel.org> References: <20201022040440.GX25604@MiWiFi-R3L-srv> <20201102143035.GA3177@MiWiFi-R3L-srv> <20201112145149.GN8486@MiWiFi-R3L-srv> <20201122010844.GR8486@MiWiFi-R3L-srv> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Rahul, On Tue, Nov 24, 2020 at 03:03:40PM +0000, Rahul Gopakumar wrote: > Hi Baoquan, > > We applied the new patch to 5.10 rc3 and tested it. We are still > observing the same page corruption issue which we saw with the > old patch. This is causing 3 secs delay in boot time. > > Attached dmesg log from the new patch and also from vanilla > 5.10 rc3 kernel. > > There are multiple lines like below in the dmesg log of the > new patch. > > "BUG: Bad page state in process swapper pfn:ab08001" Can you please run your test with the below patch and send output of dmesg | grep defer diff --git a/mm/page_alloc.c b/mm/page_alloc.c index eaa227a479e4..ce7ec660c777 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -455,6 +455,7 @@ defer_init(int nid, unsigned long pfn, unsigned long end_pfn) nr_initialised++; if ((nr_initialised > PAGES_PER_SECTION) && (pfn & (PAGES_PER_SECTION - 1)) == 0) { + pr_info("=> %s: nid: %d pfn: %lx\n", __func__, nid, pfn); NODE_DATA(nid)->first_deferred_pfn = pfn; return true; } > ________________________________________ > From: bhe@redhat.com > Sent: 22 November 2020 6:38 AM > To: Rahul Gopakumar > Cc: linux-mm@kvack.org; linux-kernel@vger.kernel.org; akpm@linux-foundation.org; natechancellor@gmail.com; ndesaulniers@google.com; clang-built-linux@googlegroups.com; rostedt@goodmis.org; Rajender M; Yiu Cho Lau; Peter Jonasson; Venkatesh Rajaram > Subject: Re: Performance regressions in "boot_time" tests in Linux 5.8 Kernel > > On 11/20/20 at 03:11am, Rahul Gopakumar wrote: > > Hi Baoquan, > > > > To which commit should we apply the draft patch. We tried applying > > the patch to the commit 3e4fb4346c781068610d03c12b16c0cfb0fd24a3 > > (the one we used for applying the previous patch) but it fails. > > I tested on 5.10-rc3+. You can append below change to the old patch in > your testing kernel. > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index fa6076e1a840..5e5b74e88d69 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -448,6 +448,8 @@ defer_init(int nid, unsigned long pfn, unsigned long end_pfn) > if (end_pfn < pgdat_end_pfn(NODE_DATA(nid))) > return false; > > + if (NODE_DATA(nid)->first_deferred_pfn != ULONG_MAX) > + return true; > /* > * We start only with one section of pages, more pages are added as > * needed until the rest of deferred pages are initialized. > -- Sincerely yours, Mike.