All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yoshinori Sato <ysato@users.sourceforge.jp>
To: Mike Rapoport <rppt@linux.vnet.ibm.com>
Cc: Rob Herring <robh@kernel.org>,
	mhocko@kernel.org, linux-mm@kvack.org,
	Johannes Weiner <hannes@cmpxchg.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	"open list:GENERIC INCLUDE/ASM HEADER FILES" 
	<linux-arch@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: h8300: BUG: Bad page state in process swapper (was: Re: why do we still need bootmem allocator?)
Date: Mon, 02 Jul 2018 15:09:38 +0900	[thread overview]
Message-ID: <87o9fqp3rx.wl-ysato@users.sourceforge.jp> (raw)
In-Reply-To: <20180701122245.GA28969@rapoport-lnx>

On Sun, 01 Jul 2018 21:22:46 +0900,
Mike Rapoport wrote:
> 
> (added Yoshinori Sato, here's the beginning of the discussion:
> https://lore.kernel.org/lkml/20180625140754.GB29102@dhcp22.suse.cz/)
> 
> On Wed, Jun 27, 2018 at 07:02:06PM +0300, Mike Rapoport wrote:
> > On Wed, Jun 27, 2018 at 07:33:55AM -0600, Rob Herring wrote:
> > > On Wed, Jun 27, 2018 at 5:27 AM Mike Rapoport <rppt@linux.vnet.ibm.com> wrote:
> > > >
> > > > I've tried running the current upstream on h8300 gdb simulator and it
> > > > failed:
> > > 
> > > It seems my patch[1] is still not applied. The maintainer said he applied it.
> > 
> > I've applied it manually. Without it unflatten_and_copy_device_tree() fails
> > to allocate memory. It indeed can be fixed with moving bootmem_init()
> > before, as you've noted in the commit message.
> > 
> > I'll try to dig deeper into it.
> >  
> > > > [    0.000000] BUG: Bad page state in process swapper  pfn:00004
> > > > [    0.000000] page:007ed080 count:0 mapcount:-128 mapping:00000000
> > > > index:0x0
> > > > [    0.000000] flags: 0x0()
> > > > [    0.000000] raw: 00000000 0040bdac 0040bdac 00000000 00000000 00000002
> > > > ffffff7f 00000000
> > > > [    0.000000] page dumped because: nonzero mapcount
> > > > ---Type <return> to continue, or q <return> to quit---
> > > > [    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.18.0-rc2+ #50
> > > > [    0.000000] Stack from 00401f2c:
> > > > [    0.000000]   00401f2c 001116cb 007ed080 00401f40 000e20e6 00401f54
> > > > 0004df14 00000000
> > > > [    0.000000]   007ed080 007ed000 00401f5c 0004df8c 00401f90 0004e982
> > > > 00000044 00401fd1
> > > > [    0.000000]   007ed000 007ed000 00000000 00000004 00000008 00000000
> > > > 00000003 00000011
> > > > [    0.000000]
> > > > [    0.000000] Call Trace:
> > > > [    0.000000]         [<000e20e6>] [<0004df14>] [<0004df8c>] [<0004e982>]
> > > > [    0.000000]         [<00051a28>] [<00001000>] [<00000100>]
> > > > [    0.000000] Disabling lock debugging due to kernel taint
> > > >
> > > > With v4.13 I was able to get to "no valid init found".
> > > >
> > > > I had a quick look at h8300 memory initialization and it seems it has
> > > > starting pfn set to 0 while fdt defines memory start at 4M.
> > > 
> > > Perhaps there's another issue.
> 
> In my setup this is caused by __ffs() clobbering start pfn in
> nobootmem.c::__free_pages_memory().
> 
> If I change the __ffs() implementation from the inline assembly to generic
> bitops everything is fine.

OK.
Current bitops.h implementations have some dependencies on gcc's behavior.
I think that it is necessary to modify it generically so that it can
correspond to the new gcc.

Please wait until it gets fixed.


> I'm using gcc 8.1.0 from [1] and gdb 8.1.0.20180625-git
> 
> [1] http://cdn.kernel.org/pub/tools/crosstool/files/bin/x86_64/
> 
> 
> -- 
> Sincerely yours,
> 

-- 
Yosinori Sato

  reply	other threads:[~2018-07-02  6:18 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-25 14:07 why do we still need bootmem allocator? Michal Hocko
2018-06-25 16:09 ` Rob Herring
2018-06-25 18:03   ` Michal Hocko
2018-06-27 10:11   ` Mike Rapoport
2018-06-27 10:40     ` Michal Hocko
2018-06-27 13:58     ` Rob Herring
2018-06-27 13:58       ` Rob Herring
2018-06-27 15:58       ` Mike Rapoport
2018-06-27 15:58         ` Mike Rapoport
2018-06-27 11:26   ` Mike Rapoport
2018-06-27 13:33     ` Rob Herring
2018-06-27 13:33       ` Rob Herring
2018-06-27 16:02       ` Mike Rapoport
2018-06-27 16:02         ` Mike Rapoport
2018-07-01 12:22         ` h8300: BUG: Bad page state in process swapper (was: Re: why do we still need bootmem allocator?) Mike Rapoport
2018-07-01 12:22           ` Mike Rapoport
2018-07-02  6:09           ` Yoshinori Sato [this message]
2018-07-02  6:09             ` Yoshinori Sato
2018-07-12 14:40           ` Yoshinori Sato
2018-07-12 14:40             ` Yoshinori Sato

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=87o9fqp3rx.wl-ysato@users.sourceforge.jp \
    --to=ysato@users.sourceforge.jp \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@kernel.org \
    --cc=robh@kernel.org \
    --cc=rppt@linux.vnet.ibm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.