From: Don Zickus <dzickus@redhat.com>
To: Li Zhong <zhong@linux.vnet.ibm.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>,
LKML <linux-kernel@vger.kernel.org>,
tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com,
x86@kernel.org, paulus@samba.org, mingo@elte.hu,
acme@ghostprotocols.net, Vegard Nossum <vegardno@ifi.uio.no>
Subject: Re: [PATCH 0/2 x86] fix some page faults in nmi if kmemcheck is enabled
Date: Fri, 2 Mar 2012 14:44:54 -0500 [thread overview]
Message-ID: <20120302194454.GL3083@redhat.com> (raw)
In-Reply-To: <1330397141.4112.23.camel@ThinkPad-T61>
On Tue, Feb 28, 2012 at 10:45:41AM +0800, Li Zhong wrote:
> > > I'm not sure whether I understand it correctly. Do you mean that
> > > nmiaction is initialized in register_nmi_handler(), which indicates it
> > > will be used in nmi, so it shouldn't be marked non-present?
> >
> > No, you said that it marks memory non-present to detect uninitialized
> > stuff, but since it is initialized, it shouldn't then be non-present,
> > right?
>
> From my understanding of kmemcheck, the checking is based on the
> non-present page. So while handling page fault, if the memory hasn't
> been written before read, kmemcheck knows that it is uninitialized.
>
> I think it is used to find code errors, so it need mark all non-present,
> to check if there are any access to uninitialized memory.
I am not sure if this is what your tool is catching, but someone pointed
out to me privately that when panic'ing in an NMI, either the shutdown
path I modified or the kdump path will register an NMI handler in an NMI
context. Thus they will try to allocate memory in the NMI context.
So I will have to fix that. Wonder if that popular lockless memory
allocator can help me there... otherwise I have to go back to pass in
structs like the notifier blocks do.
Cheers,
Don
next prev parent reply other threads:[~2012-03-02 19:45 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-20 6:01 [PATCH 0/2 x86] fix some page faults in nmi if kmemcheck is enabled Li Zhong
2012-02-20 6:04 ` [PATCH 1/2 x86] fix page faults by nmi handler " Li Zhong
2012-02-20 6:07 ` [PATCH 2/2 x86] fix page faults by perf events " Li Zhong
2012-02-20 11:00 ` [PATCH 0/2 x86] fix some page faults " Peter Zijlstra
2012-02-21 1:42 ` Li Zhong
2012-02-21 10:17 ` Peter Zijlstra
2012-02-23 9:53 ` Li Zhong
2012-02-27 10:58 ` Peter Zijlstra
2012-02-28 2:45 ` Li Zhong
2012-03-02 19:44 ` Don Zickus [this message]
2012-03-05 1:49 ` Li Zhong
2012-03-05 10:05 ` [PATCH v2 x86 1/2] fix page faults by nmiaction " Li Zhong
2012-03-05 10:29 ` Wim Van Sebroeck
2012-03-06 1:46 ` Li Zhong
2012-03-05 15:54 ` Don Zickus
2012-03-05 17:55 ` Peter Zijlstra
2012-03-05 17:49 ` Peter Zijlstra
2012-03-05 21:45 ` Don Zickus
2012-03-06 10:09 ` [PATCH v3 " Li Zhong
2012-03-06 10:27 ` Vegard Nossum
2012-03-09 9:52 ` Li Zhong
2012-03-06 15:00 ` 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=20120302194454.GL3083@redhat.com \
--to=dzickus@redhat.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@ghostprotocols.net \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=paulus@samba.org \
--cc=tglx@linutronix.de \
--cc=vegardno@ifi.uio.no \
--cc=x86@kernel.org \
--cc=zhong@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.