[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20201229110410.f2ad1655bacb2dd381be7a07@linux-foundation.org>
Date: Tue, 29 Dec 2020 11:04:10 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Helge Deller <deller@....de>
Cc: Kalesh Singh <kaleshsingh@...gle.com>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
linux-parisc@...r.kernel.org,
James Bottomley <James.Bottomley@...senpartnership.com>,
John David Anglin <dave.anglin@...l.net>
Subject: Re: [PATCH] mm: fix extend calculation for move_page_tables()
On Tue, 29 Dec 2020 18:45:29 +0100 Helge Deller <deller@....de> wrote:
> On parisc the kernel fails to start the init process because in
> shift_arg_pages() in fs/exec.c, move_page_tables() is called to e.g.
> move pages from start addr 0xffeff000 to the new start addr 0xf9ccb000
> with a length of 0x1000 bytes, but move_page_tables() instead returns
> that it apparently moved 0x57000 bytes. Since the number of bytes is
> different than the number of bytes which should have been moved,
> shift_arg_pages() aborts with -ENOMEM.
>
> Debugging shows that commit c49dd34018026 ("mm: speedup mremap on
> 1GB or larger regions") is the culprit.
> In this commit, the extent calculation was tried to be optimized, but
> got it wrong for this case.
> The patch below reverts to the previous way to calculate the extent and
> thus fixes the boot problem.
>
Thanks. The same as
https://lkml.kernel.org/r/20201219170433.2418867-1-kaleshsingh@google.com.
I'll get that sent to Linus today.
Powered by blists - more mailing lists