[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171003143518.xgw7ifylwjhi25xx@treble>
Date: Tue, 3 Oct 2017 09:35:18 -0500
From: Josh Poimboeuf <jpoimboe@...hat.com>
To: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
Cc: bp@...en8.de, tglx@...utronix.de, mingo@...hat.com, hpa@...or.com,
x86@...nel.org, linux-kernel@...r.kernel.org,
torvalds@...ux-foundation.org
Subject: Re: [4.14-rc1 x86] WARNING: kernel stack regs at f60bbb12
inswapper:1 has bad 'bp' value 0ba00000
On Tue, Oct 03, 2017 at 10:44:13PM +0900, Tetsuo Handa wrote:
> Josh Poimboeuf wrote:
>
> > On Tue, Oct 03, 2017 at 12:37:44PM +0200, Borislav Petkov wrote:
> > > On Tue, Oct 03, 2017 at 07:29:36PM +0900, Tetsuo Handa wrote:
> > > > Tetsuo Handa wrote:
> > > > > Tetsuo Handa wrote:
> > > > > > Tetsuo Handa wrote:
> > > > > > > I'm seeing below error between
> > > > > > > 4898b99c261efe32 ("Merge tag 'acpi-4.13-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm") (git bisect good (presumably))
> > > > > > > e6f3faa734a00c60 ("locking/lockdep: Fix workqueue crossrelease annotation") (git bisect bad) on linux.git .
> > > > > >
> > > > > > F.Y.I. This error remains as of 46c1e79fee417f15 ("Merge branch 'perf-urgent-for-linus' of
> > > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip") on linux.git .
> > > > > >
> > > > >
> > > > > This error still remains as of 6e80ecdddf4ea6f3 ("Merge branch 'libnvdimm-fixes'
> > > > > of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm") on linux.git .
> > > > >
> > > > > I'm suspecting that this error is causing very unstable x86_32 kernel.
> > > > > It seems that this error occurs (though rare frequency) even on x86_64 kernel.
> > > > >
> > > > > Nobody cares?
> > > > >
> > > > 4.14-rc3 still trivially panics due to this error. Is this problem known?
> >
> > Can you try with the following patch? It should hopefully give more
> > useful information in the dump.
> >
> I see. Here is the result.
Hm, that's not what I expected to happen... I suspect this is stack
corruption, with the result being slightly different every time. Can
you see if this patch fixes the panic?
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
index 44c8d0d17170..b4a5e60488aa 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -1986,7 +1986,7 @@ check_prevs_add(struct task_struct *curr, struct held_lock *next)
{
int depth = curr->lockdep_depth;
struct held_lock *hlock;
- struct stack_trace trace;
+ static struct stack_trace trace;
int (*save)(struct stack_trace *trace) = save_trace;
/*
Powered by blists - more mailing lists