[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAM43=SOG60ETBZRk1VsDmhzfoC_eC8F0KxRDQZgXdhoZUyLEjw@mail.gmail.com>
Date: Wed, 11 Aug 2021 11:24:47 +0200
From: Mikael Pettersson <mikpelinux@...il.com>
To: Mike Rapoport <rppt@...nel.org>
Cc: Geert Uytterhoeven <geert@...ux-m68k.org>,
Finn Thain <fthain@...ux-m68k.org>,
Linux Kernel list <linux-kernel@...r.kernel.org>,
linux-m68k <linux-m68k@...ts.linux-m68k.org>,
stable <stable@...r.kernel.org>, Peter Xu <peterx@...hat.com>
Subject: Re: [BISECTED][REGRESSION] 5.10.56 longterm kernel breakage on m68k/aranym
On Tue, Aug 10, 2021 at 5:59 PM Mike Rapoport <rppt@...nel.org> wrote:
>
> On Mon, Aug 09, 2021 at 03:40:04PM +0200, Geert Uytterhoeven wrote:
> > CC Mike
> >
> > On Mon, Aug 9, 2021 at 3:32 PM Mikael Pettersson <mikpelinux@...il.com> wrote:
> > > On Mon, Aug 9, 2021 at 3:59 AM Finn Thain <fthain@...ux-m68k.org> wrote:
> > > > On Sun, 8 Aug 2021, Mikael Pettersson wrote:
> > > > > On Sun, Aug 8, 2021 at 1:20 AM Finn Thain <fthain@...ux-m68k.org> wrote:
> > > > > > On Sat, 7 Aug 2021, Mikael Pettersson wrote:
> > > > > > > I updated the 5.10 longterm kernel on one of my m68k/aranym VMs from
> > > > > > > 5.10.47 to 5.10.56, and the new kernel failed to boot:
> > > > > > >
> > > > > > > ARAnyM 1.1.0
> > > > > > > Using config file: 'aranym1.headless.config'
> > > > > > > Could not open joystick 0
> > > > > > > ARAnyM RTC Timer: /dev/rtc: Permission denied
> > > > > > > ARAnyM LILO: Error loading ramdisk 'root.bin'
> > > > > > > Blitter tried to read byte from register ff8a00 at 0077ee
> > > > > > >
> > > > > > > At this point it kept running, but produced no output to the console,
> > > > > > > and would never get to the point of starting user-space. Attaching gdb
> > > > > > > to aranym showed nothing interesting, i.e. it seemed to be executing
> > > > > > > normally.
> > >
> > > My initial bisect was wrong. I tried reverting 8f34f1eac382 from
> > > 5.10.57 but that made no difference, so I re-ran the git bisect with
> > > all known good points pre-marked. This landed on:
> > > # first bad commit: [ce6ee46e0f39ed97e23ebf7b5a565e0266a8a1a3]
> > > mm/page_alloc: fix memory map initialization for descending nodes
> > >
> > > Reverting _that_ from 5.10.57 does unbreak that kernel.
>
> Indeed there is a problem with that commit in 5.10. The memmap
> initialization relies on availability of zone_to_nid() to link struct page
> to a node. But in 5.10 zone_to_nid() is only defined for NUMA, but not for
> DISCONTIGMEM.
>
> Mikael, can you please try the patch below:
>
> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index 9d0c454d23cd..63b550403317 100644
> --- a/include/linux/mmzone.h
> +++ b/include/linux/mmzone.h
> @@ -445,7 +445,7 @@ struct zone {
> */
> long lowmem_reserve[MAX_NR_ZONES];
>
> -#ifdef CONFIG_NUMA
> +#ifdef CONFIG_NEED_MULTIPLE_NODES
> int node;
> #endif
> struct pglist_data *zone_pgdat;
> @@ -896,7 +896,7 @@ static inline bool populated_zone(struct zone *zone)
> return zone->present_pages;
> }
>
> -#ifdef CONFIG_NUMA
> +#ifdef CONFIG_NEED_MULTIPLE_NODES
> static inline int zone_to_nid(struct zone *zone)
> {
> return zone->node;
>
> --
> Sincerely yours,
> Mike.
Applying this on top of 5.10.57 fixes the problem, thanks.
Tested-by: Mikael Pettersson <mikpelinux@...il.com>
Powered by blists - more mailing lists