From: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
To: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
Cc: Petr Mladek <pmladek@suse.com>, Jan Kara <jack@suse.cz>,
Peter Zijlstra <peterz@infradead.org>,
Steven Rostedt <rostedt@goodmis.org>,
Andrew Morton <akpm@linux-foundation.org>,
Ingo Molnar <mingo@redhat.com>,
linux-kernel@vger.kernel.org,
Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Subject: Re: [linux-next, x86_64] no backtrace after "printk/nmi: generic solution for safe printk in NMI"
Date: Thu, 25 Feb 2016 19:31:37 +0900 [thread overview]
Message-ID: <20160225103137.GA495@swordfish> (raw)
In-Reply-To: <20160225094621.GA505@swordfish>
On (02/25/16 18:46), Sergey Senozhatsky wrote:
> Hello Petr,
>
> seem that commit b927968830676373caf4241e80d8b447133f84b2
> Author: Petr Mladek <pmladek@suse.com>
> Date: Thu Feb 25 13:00:35 2016 +1100
>
> printk/nmi: generic solution for safe printk in NMI
>
> printk() takes some locks and could not be used a safe way in NMI context.
>
> The chance of a deadlock is real especially when printing stacks from all
> CPUs. This particular problem has been addressed on x86 by the commit
> a9edc8809328 ("x86/nmi: Perform a safe NMI stack trace on all CPUs").
>
> The patchset brings two big advantages. First, it makes the NMI
> backtraces safe on all architectures for free. Second, it makes all NMI
> messages almost safe on all architectures (the temporary buffer is
> limited. We still should keep the number of messages in NMI context at
> minimum).
> [..]
>
>
> makes my x86_64 boxen unhappy, I see no CPU backtraces and no panic messages
> on HARDLOCKUPs (CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=1).
>
> does it work for you?
just for note,
I reverted (next-20160225) the following commits:
bdcdb76696402e1a0821db6bcccb2b4de4049f27
7ad17383fa428d1c89d2be95d00806f33df69dfd
054a26c149a5add6d27d154f2025ee2605d9f25d
c2dbc8fd415835a71b0dee0f3f3a353d116f8731
3fd57f62ac2a8de6b402bf5f6aeb3a7d1e3f11a3
3ff0033c1e878b8bd8fce6efcd1b432b24f1d321
-- still no HARDLOCKUP panic backtraces on a console.
reverting of
b927968830676373caf4241e80d8b447133f84b2 (plus MIPS config conflict resolution)
-- fixed the problem for me. I've tested several times.
the sample code that I use for testing is very simple (well.. but it
does the job):
---
u64 s, e;
unsigned long flags;
local_irq_save(flags);
s = local_clock() >> 31UL;
pr_err(">>>>>>>>>>>>>>>>>START_THE_TEST\n");
while (1) {
e = local_clock() >> 31UL;
if (e - s > %%YOUR_WATCHDOG_THRESHOLD%%)
goto out;
}
out:
pr_err(">>>>>>>>>>>>>>>>>END_THE_TEST\n");
local_irq_restore(flags);
---
most likely I'll be able to reply only tomorrow (in case if there will be any questions).
-ss
next prev parent reply other threads:[~2016-02-25 10:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-25 9:46 [linux-next, x86_64] no backtrace after "printk/nmi: generic solution for safe printk in NMI" Sergey Senozhatsky
2016-02-25 10:31 ` Sergey Senozhatsky [this message]
2016-02-26 3:40 ` Sergey Senozhatsky
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=20160225103137.GA495@swordfish \
--to=sergey.senozhatsky.work@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=jack@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=pmladek@suse.com \
--cc=rostedt@goodmis.org \
--cc=sergey.senozhatsky@gmail.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.