Re: utrace known bugs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 02, 2007 at 04:31:12PM +0400, Alexey Dobriyan wrote:
> On Wed, Aug 01, 2007 at 10:55:39PM -0700, Roland McGrath wrote:
> > Here are outstanding problems (aside from TODO items) I know of off hand.
> > These range from bug reports I haven't looked into, to subtle old XXX
> > comments for which I'll have to dredge up memories of the details.
> > I hope someone likes to wikify or otherwise organize this list somewhere.
> > 
> > * detach vs report race
> >   Alexey Dobriyan <adobriyan@xxxxx> identified a race viz
> >   dead_engine_ops vs engine->flags
> >   Race explanation makes sense, but so far never been reproduced.
> >   Needs a little thought.
> > 
> > * https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243534
> >   Unknown wedge, maybe stale report
> > 
> > * https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=248532
> >   "tkill(SIGCONT) is not reported by waitpid()"
> >   Unexamined
> > 
> > * ia64 RBS scheme
> >   This is tortured IA64-specific issue that was known from the start but
> >   never properly handled.  The original contributors of the IA64 port
> >   dropped the ball on this part of the implementation.  It needs someone
> >   with coherent understanding of the ia64 RBS hardware and how the kernel
> >   uses it, to consult.
> > 
> > * https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=207002
> >   crash, needs investigation
> > 
> > * utrace_inject_signal ENOSYS for non-utrace_get_signal case
> >   Needs implementation with careful synchronization.
> >   Probably interface details change for "engine interaction" TODO item,
> >   making implementation story here different.
> > 
> > * ptrace race conditions
> >   See XXX in kernel/ptrace.c; need to rethink synchronization/life-cycle
> >   for ptrace_state.
> 
>   * unbounded utrace_engine_cache growth
>     started from 31a9ef5cfcdbae804e3e180c158bf2352728765a,
>     nobody knows why
>     testcase: at the end of  http://marc.info/?l=linux-kernel&m=117128445312243&w=2
> 
>   * _pointer_ to struct utrace, which I personally count as design bug.
>   
>     Rationale to fold struct utrace into task_struct is that lifetime
>     rules of task_struct are well established, well tested and so on. As
>     was demonstrated it also removes much complexity from attaching logic.
> 
> There is one more quick crash in rh bugzilla, but I'll post patch here very soon.

Have you tested this with the latest utrace bits? AFAICS this specific
issue was fixed in June, with this one-liner:

--- a/include/linux/tracehook.h
+++ b/include/linux/tracehook.h
@@ -584,7 +584,7 @@ static inline void tracehook_report_deat
 {
        smp_mb();
        if (tsk_utrace_flags(tsk) & (UTRACE_EVENT(DEATH)
-                                    | UTRACE_ACTION_QUIESCE))
+                                    | UTRACE_EVENT(QUIESCE)))
                utrace_report_death(tsk, death_cookie);
 }

Ananth


[Index of Archives]     [Kernel Discussion]     [Gimp]     [Yosemite News]

  Powered by Linux