From: Frederic Weisbecker <fweisbec@gmail.com>
To: "K.Prasad" <prasad@linux.vnet.ibm.com>
Cc: LKML <linux-kernel@vger.kernel.org>, Ingo Molnar <mingo@elte.hu>,
Roland McGrath <roland@redhat.com>,
Alan Stern <stern@rowland.harvard.edu>,
Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
Pekka Enberg <penberg@cs.helsinki.fi>,
Vegard Nossum <vegardno@ifi.uio.no>,
Oleg Nesterov <oleg@redhat.com>
Subject: Re: [RFC Patch 1/2][Bugfix][x86][hw-breakpoint] Clear reserved bits of DR6 in do_debug()
Date: Thu, 31 Dec 2009 00:45:00 +0100 [thread overview]
Message-ID: <20091230234458.GA23808@nowhere> (raw)
In-Reply-To: <20091226182725.GB9494@in.ibm.com>
On Sat, Dec 26, 2009 at 11:57:25PM +0530, K.Prasad wrote:
> Clear the reserved bits from the stored copy of debug status register (DR6).
> This will help easy bitwise operations.
>
> Signed-off-by: K.Prasad <prasad@linux.vnet.ibm.com>
> ---
> arch/x86/include/asm/debugreg.h | 3 +++
> arch/x86/kernel/traps.c | 3 +++
> 2 files changed, 6 insertions(+)
>
> Index: linux-2.6-tip/arch/x86/include/asm/debugreg.h
> ===================================================================
> --- linux-2.6-tip.orig/arch/x86/include/asm/debugreg.h
> +++ linux-2.6-tip/arch/x86/include/asm/debugreg.h
> @@ -14,6 +14,9 @@
> which debugging register was responsible for the trap. The other bits
> are either reserved or not of interest to us. */
>
> +/* Define reserved bits in DR6 which are always set to 1 */
> +#define DR6_RESERVED (0xFFFF0FF0)
> +
The 12th bit seems to be also reserved.
Shouldn't it be 0xffff1ff0 ?
What kind of bitwise operations do you think it could help?
All of the operations I can find on dr6 are simple masks
test/set/clear.
> #define DR_TRAP0 (0x1) /* db0 */
> #define DR_TRAP1 (0x2) /* db1 */
> #define DR_TRAP2 (0x4) /* db2 */
> Index: linux-2.6-tip/arch/x86/kernel/traps.c
> ===================================================================
> --- linux-2.6-tip.orig/arch/x86/kernel/traps.c
> +++ linux-2.6-tip/arch/x86/kernel/traps.c
> @@ -534,6 +534,9 @@ dotraplinkage void __kprobes do_debug(st
>
> get_debugreg(dr6, 6);
>
> + /* Filter out all the reserved bits which are preset to 1 */
> + dr6 &= ~DR6_RESERVED;
> +
> /* Catch kmemcheck conditions first of all! */
> if ((dr6 & DR_STEP) && kmemcheck_trap(regs))
> return;
>
next prev parent reply other threads:[~2009-12-30 23:45 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20091226175533.149765731@linux.vnet.ibm.com>
2009-12-26 18:27 ` [RFC Patch 1/2][Bugfix][x86][hw-breakpoint] Clear reserved bits of DR6 in do_debug() K.Prasad
2009-12-30 23:45 ` Frederic Weisbecker [this message]
2009-12-31 18:49 ` K.Prasad
2010-01-10 3:22 ` Frederic Weisbecker
2009-12-26 18:28 ` [RFC Patch 2/2][Bugfix][x86][hw-breakpoint] Fix return-code to notifier chain in hw_breakpoint_handler K.Prasad
2009-12-31 0:33 ` Frederic Weisbecker
2009-12-31 0:38 ` Frederic Weisbecker
2009-12-31 19:02 ` K.Prasad
2010-01-10 3:18 ` Frederic Weisbecker
2010-01-11 19:15 ` Jan Kiszka
2010-01-16 19:41 ` K.Prasad
2010-01-20 6:01 ` K.Prasad
2010-01-22 9:14 ` Jan Kiszka
2010-01-22 9:21 ` K.Prasad
2010-01-25 22:21 ` Frederic Weisbecker
2010-01-27 10:29 ` K.Prasad
2009-12-31 0:44 ` Frederic Weisbecker
2010-01-25 22:11 ` Frederic Weisbecker
2010-01-27 10:28 ` K.Prasad
2010-01-27 16:11 ` Frederic Weisbecker
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=20091230234458.GA23808@nowhere \
--to=fweisbec@gmail.com \
--cc=ananth@in.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=oleg@redhat.com \
--cc=penberg@cs.helsinki.fi \
--cc=prasad@linux.vnet.ibm.com \
--cc=roland@redhat.com \
--cc=stern@rowland.harvard.edu \
--cc=vegardno@ifi.uio.no \
/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.