[issue926] tcsh consumes much cpu when trying to gdb anything

Matthew Dillon dillon at apollo.backplane.com
Thu Jan 24 11:04:02 PST 2008


:> > Commenting out the SIGCHLD signal masking part seems to fix this issue =
:for me.
:> > But i'm not sure if this is a correct fix or not.
:>
:> Could you try the attached fix?
:>
:> cheers
:>    simon
:...
:> RCS file: /home/dcvs/src/sys/sys/signal2.h,v
:> retrieving revision 1.1
:> diff -u -p -r1.1 signal2.h
:> --- sys/signal2.h       25 Feb 2007 23:17:13 -0000      1.1
:> +++ sys/signal2.h       24 Jan 2008 09:27:00 -0000
:> @@ -103,9 +103,8 @@ __cursignb(struct lwp *lp)
:>         p =3D lp->lwp_proc;
:>         tmpset =3D lwp_sigpend(lp);
:>         SIGSETNAND(tmpset, lp->lwp_sigmask);
:> -       if ((!(p->p_flag & P_TRACED) && SIGISEMPTY(tmpset))) {
:> +       if (SIGISEMPTY(tmpset))
:>                 return(FALSE);
:> -       }
:>         return (TRUE);
:>  }
:
:This fix from Simon seems to work for me. Are there any objections to
:commiting this?
:
:Thanks,
:Nuno

    Hmm.  There are two functions there that test for P_TRACED, do both
    need to be fixed?

    Also I'm not entirely sure what the mechanism is here.  Clearly the
    original code (this is original code) isn't quite compatible with
    the new signaling code, but the question is:  What is the correct
    thing to do about it?

					-Matt
					Matthew Dillon 
					<dillon at backplane.com>





More information about the Bugs mailing list