linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "bhe@redhat.com" <bhe@redhat.com>
To: Rahul Gopakumar <gopakumarr@vmware.com>
Cc: "linux-mm@kvack.org" <linux-mm@kvack.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
	"natechancellor@gmail.com" <natechancellor@gmail.com>,
	"ndesaulniers@google.com" <ndesaulniers@google.com>,
	"clang-built-linux@googlegroups.com"
	<clang-built-linux@googlegroups.com>,
	"rostedt@goodmis.org" <rostedt@goodmis.org>,
	Rajender M <manir@vmware.com>, Yiu Cho Lau <lauyiuch@vmware.com>,
	Peter Jonasson <pjonasson@vmware.com>,
	Venkatesh Rajaram <rajaramv@vmware.com>,
	Mike Rapoport <rppt@kernel.org>
Subject: Re: Performance regressions in "boot_time" tests in Linux 5.8 Kernel
Date: Sun, 13 Dec 2020 23:15:16 +0800	[thread overview]
Message-ID: <20201213151516.GA12368@MiWiFi-R3L-srv> (raw)
In-Reply-To: <BYAPR05MB5800E8478DF45F39BE06F8ADA4CA0@BYAPR05MB5800.namprd05.prod.outlook.com>

On 12/11/20 at 04:16pm, Rahul Gopakumar wrote:
> Hi Baoquan,
> 
> We re-evaluated your last patch and it seems to be fixing the
> initial performance bug reported. During our previous testing,
> we did not apply the patch rightly hence it was reporting
> some issues. 
> 
> Here is the dmesg log confirming no delay in the draft patch.
> 
> Vanilla (5.10 rc3)
> ------------------
> 
> [    0.024011] On node 2 totalpages: 89391104
> [    0.024012]   Normal zone: 1445888 pages used for memmap
> [    0.024012]   Normal zone: 89391104 pages, LIFO batch:63
> [    2.054646] ACPI: PM-Timer IO Port: 0x448 --------------> 2 secs delay
> 
> Patch
> ------
> 
> [    0.024166] On node 2 totalpages: 89391104
> [    0.024167]   Normal zone: 1445888 pages used for memmap
> [    0.024167]   Normal zone: 89391104 pages, LIFO batch:63
> [    0.026694] ACPI: PM-Timer IO Port: 0x448 --------------> No delay
> 
> Attached dmesg logs. Let me know if anything is needed from our end.

I posted formal patchset to fix this issue. The patch 1 is doing the
fix, and almost the same as the draft v2 patch I attached in this thread.
Please feel free to help test and add your Tested-by: tag in the patch
thread if possible.

> 
> 
> 
> From: Rahul Gopakumar <gopakumarr@vmware.com>
> Sent: 24 November 2020 8:33 PM
> To: bhe@redhat.com <bhe@redhat.com>
> Cc: linux-mm@kvack.org <linux-mm@kvack.org>; linux-kernel@vger.kernel.org <linux-kernel@vger.kernel.org>; akpm@linux-foundation.org <akpm@linux-foundation.org>; natechancellor@gmail.com <natechancellor@gmail.com>; ndesaulniers@google.com <ndesaulniers@google.com>; clang-built-linux@googlegroups.com <clang-built-linux@googlegroups.com>; rostedt@goodmis.org <rostedt@goodmis.org>; Rajender M <manir@vmware.com>; Yiu Cho Lau <lauyiuch@vmware.com>; Peter Jonasson <pjonasson@vmware.com>; Venkatesh Rajaram <rajaramv@vmware.com>
> Subject: Re: Performance regressions in "boot_time" tests in Linux 5.8 Kernel 
>  
> 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"
> 
> ________________________________________
> From: bhe@redhat.com <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.





      reply	other threads:[~2020-12-13 15:15 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-09 13:15 Performance regressions in "boot_time" tests in Linux 5.8 Kernel Rahul Gopakumar
2020-10-10  6:11 ` bhe
2020-10-12 17:21   ` Rahul Gopakumar
2020-10-13  5:08     ` bhe
2020-10-13 13:17     ` bhe
2020-10-20 13:45       ` Rahul Gopakumar
2020-10-20 15:18         ` bhe
2020-10-20 15:26           ` Rahul Gopakumar
2020-10-22  4:04             ` bhe
2020-10-22 17:21               ` Rahul Gopakumar
2020-11-02 14:15                 ` Rahul Gopakumar
2020-11-02 14:30                   ` bhe
2020-11-03 12:34                     ` Rahul Gopakumar
2020-11-03 14:03                       ` bhe
2020-11-12 14:51                       ` bhe
2020-11-20  3:11                         ` Rahul Gopakumar
2020-11-22  1:08                           ` bhe
2020-11-24 15:03                             ` Rahul Gopakumar
2020-11-30 16:55                               ` Mike Rapoport
2020-12-11 16:16                               ` Rahul Gopakumar
2020-12-13 15:15                                 ` bhe [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201213151516.GA12368@MiWiFi-R3L-srv \
    --to=bhe@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=clang-built-linux@googlegroups.com \
    --cc=gopakumarr@vmware.com \
    --cc=lauyiuch@vmware.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=manir@vmware.com \
    --cc=natechancellor@gmail.com \
    --cc=ndesaulniers@google.com \
    --cc=pjonasson@vmware.com \
    --cc=rajaramv@vmware.com \
    --cc=rostedt@goodmis.org \
    --cc=rppt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).