lkml.org 
[lkml]   [2011]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v5 3.1.0-rc4-tip 13/26] x86: define a x86 specific exception notifier.
    From
    Date
    > On Tue, 2011-09-20 at 17:32 +0530, Srikar Dronamraju wrote:
    > > @@ -820,6 +821,19 @@ do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags)
    > > mce_notify_process();
    > > #endif /* CONFIG_X86_64 && CONFIG_X86_MCE */
    > >
    > > + 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.
    > > + */
    > > + local_irq_enable();
    > > +#endif
    > > + uprobe_notify_resume(regs);
    > > + }
    > > +
    > > /* deal with pending signal delivery */
    > > if (thread_info_flags & _TIF_SIGPENDING)
    > > do_signal(regs);
    >
    > It would be good to remove this difference between i386 and x86_64.


    > I think, we have already discussed this. I tried getting to know why we
    > have this difference in behaviour. However I havent been able to find
    > the answer.

    The reason for the difference between X86_64 and i386 is because of a bug
    that went to address delayed signals on x86_64. More details can be found
    at:

    http://kerneltrap.org/mailarchive/git-commits-head/2008/7/15/2490384

    It appears for some reason i386 code path left unchanged, maybe desire to
    not fix it when it ain't broken.

    -- Shuah





    \
     
     \ /
      Last update: 2011-09-27 00:07    [W:0.021 / U:30.112 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site