Re: utrace known bugs

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

 



On Thu, Aug 02, 2007 at 06:50:35PM +0530, Ananth N Mavinakayanahalli wrote:
> 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?

struct utrace double free? I can't because of "unbounded utrace_engine_cache growth".
"while (1) ptrace(PTRACE_ATTACH," crash -- yes it was tested with latest utrace.

> 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);
>  }


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

  Powered by Linux