httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dean Gaudet <dgau...@arctic.org>
Subject Re: I love solaris (SIGHUP's)
Date Wed, 06 Aug 1997 23:48:33 GMT
Ah but you're assuming that unixes actually do that right... :)  I'm not
sure the change is really required for SIGTERM ... even with reliable
delivery all a TERM accomplishes is one last killpg before the parent
exits.  Now, if you were to argue that the parent should reclaim children
during a SIGTERM, then I'd totally be into putting in a SIGTERM handler
which sets a flag (which should be more portable than assuming that masked
signals will be delivered properly). 

Dean

On Wed, 6 Aug 1997, Nate Kurz wrote:

> Dean Gaudet wrote:
> > FWIW the code that's been committed to 1.2 and 1.3 only masks HUP and
> > USR1.  I didn't mask TERM because a TERM causes the server to do a single
> > killpg and then exit ... For TERM we can't just miss the signal, we'd have
> > to trap it, set a "exit when you're done reclaiming children" flag,
> > continue the loop (deal with the interrupted sleep) and check that when
> > the reclaim is done ... or am I missing something?
> 
> I think you are missing something.  I'm pretty sure that if you use
> sigprocmask() that the blocked signals are delivered to you as soon as
> you unblock them.  Such that you won't miss the signal, but only
> receive it a bit late.  But I certainly could be wrong about that.
> (and I don't think that multiple occurences of the same signal are
> queued, if that is important here)
> 
> Here's a test program that shows what happens.  Send it a SIGHUP
> within 10 seconds after you start it up, and it should receive it
> after a 10 second sleep.  It works the way I'd expect on on Linux and
> Solaris, but I haven' tried anything else.
> 
> begin 644 signal_test.tar.gz
> M'XL(`.&0Z#,``^T9:V_;."Q?IU]!I->;':29G2?0;`=L7=;M+GN@77%?!ABN
> M+2?>'#FSY:[%8??;CY+L^)$TS88LO;N%7RR3$DF1IDC*L3]A=F!Q&O-'M1\$
> MT#4&O1[4`,Q!SQ1/,+M=^4S!`.AW!FW3-#IF#ZEFO]NI0>]'*52$).9V!%!C
> M-J?KY]$HWH5"NX6XX'\U;CG;EF$:1E_Y>Z7_V]UVYG^CU^X-D-KI#(P:&-M6
> M9!7\Y/X_\)D3)"Z%Q_%-G'T!T]](`;\*QR.?34JX>A`BHEY`9`OKA*1?V=1F
> M;D`CBT,CQ<24:S[CD+ZR9'9)HR8LST^'.OF+`*#XQ)&+;(?[(0-&OUAJ.%Q%
> M#@-W049Z/KL5VYD0>`+I2+`07/P)G<WYC5#QU_*2F1U_TE>P\@)[$B,C0])\
> M#[2%#EIEAP6.^)(KJ,-C,'00NP1`DUHTBL)(J^>;\6P_H"[P$%"S3&?PP@@.
> M8]`.7;W>!/)`A19:0LDMB]>;98/KPX6XA/G72S+KZ82(\B1B</[JU!J=G0G<
> M5['1%)UOHF#6(<$IY"KTW4QD1!WJ7U%WV>_*N4*+E4H+>?3:YYJI2ZY%IL(C
> MMS%$%%H*/R(Q27JFY-K<F6*_KKM`KC)2[M9Y%#I2JK#&L_';DS_0CVK9FXOQ
> M^#8_.F$2N.PAA\L@=#ZE$N#0K6_LDDQPV2G*&<KK)$=6S)2P>S;4Q9OO,%7"
> M=F8L<M_G\:YA1?Z?;EO&'?D?^N9@D?\[`U/F__X^_^\$#GR/N=0#"\/RZ=C"
> M&'V#CY?D`)$^HTOX8A%`^<?9'(L`(+=5$83?S*E@+P^A[#Q?I'5=G$3B2*'7
> MG&(&03IRM"X3#R9!>(E3/R;JW1.99(MEQ'#CG#3<*-$,-SQG<=X!92X>C8\:
> M5=M"X]'NCY]B_+^V/Z'3@[5A\#UP5_QW^KU%_]?N=57\]_?QOPLX.7D"$\<A
> MY.3%^.GI^1,XFDS<2SAZ_GST[.(4COZT@X"0M\]^1U(:UZ%(M*V0D/=/STY'
> M[Q<$^1$1@@N.X1<M)>J0?56$Y$@Q0?#4"7$":K-C\B":P9$'#>3>L.9)1*T&
> MOGR^*G`B)*)VL/E\:/PM9$HYQP4U?KXDOP:*\2_<NO7FOW9W_]\WVUG^'W1,
> M`ZGM?G^PC_]=0+&G=^UH<F>?_Q@K;)Q:QG%_1LL8+,%96&7F^N'*.P/RXM5X
> M!(TTY\OJW4(2=M*B/\ARJRCO?>:%FA.RF(,S1;\UL.^=V;P)K59+!]G%7-E6
> M@!H";B8>RGZ23<!)HH@R[&U048%4`HLRL%_!;#WWW47O7E5'!S6_BI=]:1#3
> ME(S;1)+D4I2*%/'0#-F)H!S!B7(<:*JI\N9H:^YIR*4)]</`E<T\8*]39-,4
> M2]4"W*CX=CEH8JM-4*:0[*]29J"X9482\Q3=MK`*40LSZ0EWM(<?V,.FV$>*
> M]((DGFJ+]VI7F3=KW^:25=9?Z::B2[[)F%A="?8\!#ZEJ<=`JBKQ(A$('_L<
> M_!C".66B^-J6VV_QY.CL[.W9\;_5H;E'"RUTZM"$R6L=B]DSJJX*%$'90AT2
> M>;`"5/`X4.SDH:`D%_K\PUC3X0@.8[1,252SQ&B-QNEUT2W7&DK7K%-84K9*
> MN.W.K*IVUC/DUQ+HYEBOWDTTRP*6=Y'!_9S_U?R_]>:_MD'];W87^;_;[:O\
> MW]GG_UU`H?\_+;?]XG5-XHW5`3]<FPI63+KC=!EN$M;5+OKTGIKG_P$LW__)
> M\5;[@+OBOSLP\O@?#"2UO;__VPFLK>L+O_"6:_;LJ#@?CT;OK/>O7H_`--+H
> MG=D^T\0H+0`7)TC]7!0XHJ>HZZ7L2[GX/_#RXEUS^9H0&GKEGJZT-ONY@(M3
> M?$#I7,OU*LU.K^:*\W/M7OAHA"GF]"\^GX8)!R50%`9J0>N#_!GV=7_6[&$/
> 0>]C#'O[3\`]0S]$?`"@``/AH
> `
> end
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 


Mime
View raw message