Re: [PATCH 2/2] hw-breakpoint: Keep track of dr7 local enable bits

From: K.Prasad
Date: Fri Feb 19 2010 - 13:04:47 EST


On Fri, Feb 19, 2010 at 06:41:53PM +0100, Frederic Weisbecker wrote:
> On Fri, Feb 19, 2010 at 02:28:31PM +0530, K.Prasad wrote:
> > On Thu, Feb 18, 2010 at 07:00:01PM +0100, Frederic Weisbecker wrote:
> >
> > > diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
> > > index 017d937..0c1033d 100644
> > > --- a/arch/x86/kernel/ptrace.c
> > > +++ b/arch/x86/kernel/ptrace.c
> > > @@ -702,7 +702,7 @@ static unsigned long ptrace_get_debugreg(struct task_struct *tsk, int n)
> > > } else if (n == 6) {
> > > val = thread->debugreg6;
> > > } else if (n == 7) {
> > > - val = ptrace_get_dr7(thread->ptrace_bps);
> > > + val = thread->ptrace_dr7;
> >
> > Some more comments that I missed out in the previous mail...
> >
> > Shouldn't ptrace_get_dr7() function be entirely removed now, given that
> > its only caller no longer invokes it?
> >
> > > }
> > > return val;
> > > }
> > > @@ -778,8 +778,11 @@ int ptrace_set_debugreg(struct task_struct *tsk, int n, unsigned long val)
> > > return rc;
> > > }
> > > /* All that's left is DR7 */
> > > - if (n == 7)
> > > + if (n == 7) {
> > > rc = ptrace_write_dr7(tsk, val);
> >
> > And ptrace_write_dr7() should be made to populate thread->ptrace_dr7 if
> > it is going to return a success.
> >
> > > + if (!rc)
> > > + thread->ptrace_dr7 = val;
> > > + }
> > >
> > > ret_path:
> > > return rc;
> > > --
> > > 1.6.2.3
> > >
> >
> > Thanks,
> > K.Prasad
> >
>
>
> This is urgent so I'm pushing the two patches right away as they fix the
> regression and are not intrusive.
>
> Let's further improve that later, for a merge window, ok?
>
> Thanks.
>

Sure, please go ahead with the patch.

Thanks,
K.Prasad

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/