what is issig (4.1bsd) - (nf)

saj at iuvax.UUCP saj at iuvax.UUCP
Thu Feb 16 06:37:00 AEST 1984


#N:iuvax:1200003:000:1320
iuvax!vahe    Oct 19 15:30:00 1983

     I need clarification on a strange thing that's been happening
to my 11/780 running 4.1BSD (unmodified).  Lately, the word "issig"
has been printing on the console in voluminous quantities.  Nothing
else, just the word on a single line: "issig".
     Reading through /sys/sys/sig.c, I find that issig() is a function
which returns true if the current process has a signal to process.
It contains the following code:
    for(;;) {			  /* note: breaks when no more signals */
        	...
        	...
        switch (u.u_signal[sig])  /* note: sig is the current signal */
        	...
        	...
            case SIG_HOLD:
            case SIG_IGN:
        	if ((p->p_flag&STRC) == 0)
        		printf("issig\n");
        	continue;
        	...
        	...
    }
    Not having earned my wizard's stripes yet, this code has been
impervious to my trying to figure it out.  Why the printf?  Why
can't that situation just be ignored -- after all, that's what the
continue will make it do: go to the beginning of the loop and look
for the next signal.
    Can someone in the know (please -- no guesses) enlighten me?
Do I need to worry about this situation?  What's causing it, anyway?
Just what is that piece of code doing??

Many thanks,
Vahe Sarkissian
UUCP : {ihnp4 | ihnss}!inuxc!iuvax!vahe
CSNET: Vahe at Indiana



More information about the Comp.unix.wizards mailing list