mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Don Zickus <dzickus@redhat.com>
To: mingo@elte.hu, peterz@infradead.org, gorcunov@gmail.com
Cc: aris@redhat.com, linux-kernel@vger.kernel.org,
	Don Zickus <dzickus@redhat.com>
Subject: [PATCH 0/3] [RFC] new nmi_watchdog using perf events
Date: Wed, 27 Jan 2010 15:03:39 -0500	[thread overview]
Message-ID: <1264622622-5778-1-git-send-email-dzickus@redhat.com> (raw)

This patch series tries to implement a new nmi_watchdog using the perf
events subsystem.  I am posting this series early for feedback on the
approach.  It isn't feature compatible with the old nmi_watchdog yet, nor
does it have all the old workarounds either.

The basic design is to create an in-kernel performance counter that goes off
every few seconds and checks for cpu lockups.  It is fairly straight
forward.  Some of the quirks are making sure the cpu lockup detection works
correctly.

It has been lightly tested for now.  Once people are ok with the approach,
I'll expand testing to more machines in our lab.

I tried taking a generic approach so all arches could use it if they want
and then implement some per arch specific hooks.  I believe this is what
Ingo was suggesting.  The initial work is based off of kernel/softlockup.c.

Any feedback would be great.

Cheers,
Don

--
Sorry if this spams people again.  My mailer was broke and some mail wasn't
sent correctly.

Don Zickus (3):
  [RFC][x86] move notify_die from nmi.c to traps.c
  [RFC] nmi_watchdog: new implementation using perf events
  [RFC] nmi_watchdog: config option to enable new nmi_watchdog

 arch/x86/kernel/apic/Makefile |    7 ++-
 arch/x86/kernel/apic/hw_nmi.c |  114 ++++++++++++++++++++++++
 arch/x86/kernel/apic/nmi.c    |    7 --
 arch/x86/kernel/traps.c       |    7 ++
 include/linux/nmi.h           |    4 +
 kernel/Makefile               |    1 +
 kernel/nmi_watchdog.c         |  196 +++++++++++++++++++++++++++++++++++++++++
 lib/Kconfig.debug             |   13 +++
 8 files changed, 341 insertions(+), 8 deletions(-)
 create mode 100644 arch/x86/kernel/apic/hw_nmi.c
 create mode 100644 kernel/nmi_watchdog.c


             reply	other threads:[~2010-01-27 20:04 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-27 20:03 Don Zickus [this message]
2010-01-27 20:03 ` [PATCH 1/3] [RFC][x86] move notify_die from nmi.c to traps.c Don Zickus
2010-01-28 15:10   ` Cyrill Gorcunov
2010-01-28 15:46     ` Don Zickus
2010-02-02 17:59       ` Cyrill Gorcunov
2010-02-02 18:27         ` Don Zickus
2010-02-02 18:44           ` Cyrill Gorcunov
2010-01-27 20:03 ` [PATCH 2/3] [RFC] nmi_watchdog: new implementation using perf events Don Zickus
2010-01-27 20:03 ` [PATCH 3/3] [RFC] nmi_watchdog: config option to enable new nmi_watchdog Don Zickus
2010-01-28 14:54   ` Peter Zijlstra
2010-01-28 15:44     ` Don Zickus
2010-01-29  8:12       ` Ingo Molnar
2010-02-01 18:52         ` Don Zickus
2010-02-02  7:29           ` Ingo Molnar
2010-02-02 16:42             ` Don Zickus

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=1264622622-5778-1-git-send-email-dzickus@redhat.com \
    --to=dzickus@redhat.com \
    --cc=aris@redhat.com \
    --cc=gorcunov@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®