From: Keith Owens <kaos@sgi.com>
To: Robin Holt <holt@sgi.com>
Cc: linux-kernel@vger.kernel.org, Andrew Morton <akpm@osdl.org>,
Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>,
Dean Nelson <dcn@sgi.com>
Subject: Re: Is notify_die being overloaded?
Date: Tue, 18 Apr 2006 10:23:52 +1000 [thread overview]
Message-ID: <9758.1145319832@ocs3.ocs.com.au> (raw)
In-Reply-To: Your message of "Mon, 17 Apr 2006 06:25:52 EST." <20060417112552.GB4929@lnx-holt.americas.sgi.com>
Robin Holt (on Mon, 17 Apr 2006 06:25:52 -0500) wrote:
>On Mon, Apr 17, 2006 at 05:51:44AM -0500, Robin Holt wrote:
>> On Mon, Apr 17, 2006 at 05:52:10PM +1000, Keith Owens wrote:
>> > Robin Holt (on Sat, 15 Apr 2006 05:43:56 -0500) wrote:
>...
>> > Unfortunately the ebents are ambiguous. On IA64 BUG() maps to break 0,
>> > but break 0 is also used for debugging[*]. Which makes it awkward to
>> > differentiate between a kernel error and a debug event, we have to
>> > first ask the debuggers if the event if for them then, if the debuggers
>> > do not want the event, drop into the die_if_kernel event.
>>
>> I think this still would argue for a notify_debugger() sort of callout
>> which would read something like:
>
>I finally think I understand your point. You are saying that kdb would
>have to register for the notify_debugger() chain and would therefore
>get in the way of handle_page_fault(). What about changing notify_die()
>callout in handle_page_fault() into a notify_page_fault(). That actually
>feels a lot better now that you got me to think about it.
I thought that is what I said in my original response, "kprobes should
be using its own notify chain to trap page faults, and the handler for
that chain should be optimized away when CONFIG_KPROBES=n or there are
no active probes".
Even the overhead of calling into a notify_page_fault() routine just to
do nothing adds a measurable overhead to the page fault handler
(according to Jack Steiner). Since kprobes is the only code that needs
a callback on a page fault, it is up to kprobes to minimize the impact
of that callback on the normal processing.
next prev parent reply other threads:[~2006-04-18 0:23 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-13 19:46 Is notify_die being overloaded? Robin Holt
2006-04-15 6:19 ` Keith Owens
2006-04-15 10:43 ` Robin Holt
2006-04-17 7:52 ` Keith Owens
2006-04-17 10:51 ` Robin Holt
2006-04-17 11:25 ` Robin Holt
2006-04-18 0:23 ` Keith Owens [this message]
2006-04-18 22:16 ` ia64_do_page_fault shows 19.4% slowdown from notify_die Robin Holt
2006-04-18 23:03 ` Keshavamurthy Anil S
2006-04-19 0:30 ` Andi Kleen
2006-04-19 11:11 ` Robin Holt
2006-04-17 16:50 ` Is notify_die being overloaded? Keshavamurthy Anil S
2006-04-17 16:45 ` Keshavamurthy Anil S
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=9758.1145319832@ocs3.ocs.com.au \
--to=kaos@sgi.com \
--cc=akpm@osdl.org \
--cc=anil.s.keshavamurthy@intel.com \
--cc=dcn@sgi.com \
--cc=holt@sgi.com \
--cc=linux-kernel@vger.kernel.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