lkml.org 
[lkml]   [2010]   [Jun]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v5 7/14] x86 support for Uprobes
    * Christoph Hellwig <hch@infradead.org> [2010-06-14 13:54:23]:

    > On Mon, Jun 14, 2010 at 01:59:13PM +0530, Srikar Dronamraju wrote:
    > > @@ -850,7 +850,19 @@ do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags)
    > >
    > > if (thread_info_flags & _TIF_UPROBE) {
    > > clear_thread_flag(TIF_UPROBE);
    > > +#ifdef CONFIG_X86_32
    > > + /*
    > > + * On x86_32, do_notify_resume() gets called with
    > > + * interrupts disabled. Hence enable interrupts if they
    > > + * are still disabled.
    > > + */
    > > + native_irq_enable();
    > > +#endif
    > > uprobe_notify_resume(regs);
    > > +
    > > +#ifdef CONFIG_X86_32
    > > + native_irq_disable();
    > > +#endif
    >
    > I'm no x86 port guru, but this looks rather worriesome to me. Why does
    > do_notify_resume have different calling conventions on 32 vs 64-bit?
    > And if there is a good reason that 32-bit has them disabled, why is
    > enabling them in the middle of do_notify_resume okay?

    Thanks for bringing this up. I have no idea about why do_notify_resume()
    gets called with interrupts disabled in 32 bit. I would be happy to know
    the reason and rework based on inputs. I did query a few people about
    this but I havent got an answer on why we they are disabled on 32 bit and
    if its Okay to enable at this place.

    Ingo, Is there any person whom I could check with to get to know why the
    interrupts are disabled on x86_32?

    >
    > > +void arch_uprobe_disable_sstep(struct pt_regs *regs)
    > > +{
    > > + /* Disable single-stepping by clearing what we set */
    > > + clear_thread_flag(TIF_SINGLESTEP);
    > > + clear_thread_flag(TIF_FORCED_TF);
    > > + regs->flags &= ~X86_EFLAGS_TF;
    > > +}
    >
    > This seems to have one layer of indentation too much.

    Okay, I shall fix this in the next iteration.

    --
    Thanks and Regards
    Srikar




    \
     
     \ /
      Last update: 2010-06-15 08:27    [W:0.023 / U:1.324 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site