sigwait return 4
Slawa Olhovchenkov
slw at zxy.spb.ru
Wed Aug 24 19:53:05 UTC 2011
On Wed, Aug 24, 2011 at 11:42:29PM +0400, Slawa Olhovchenkov wrote:
> On Wed, Aug 24, 2011 at 10:32:02PM +0300, Kostik Belousov wrote:
>
> > > > What should the system do for a delivered signal not present in the set ?
> > > > I guess this is the case of your ktrace.
> > > >
> > > > Looking at the SUSv4, I see no mention of the situation, but in Oracle
> > > > SunOS 5.10 man page for sigwait(2), it is said explicitely
> > > > EINTR The wait was interrupted by an unblocked, caught signal.
> > >
> > > I don't think you right in this case.
> > > This is kas-milter and in this thread (this is multi-thread
> > > application) kas-milter wait for USR2 for reload config.
> > >
> > > System return from sigwait only on USR2, but not each return w/
> > > non-zero return code.
> > >
> > > On freebsd7 this application don't complain about sigwait's return value.
> >
> > Could it be that some other thread has the signal unblocked ?
> > (You can verify this with procstat -j).
> >
> > Can you write the self-contained test case that demonstrates the behaviour ?
>
> This is closed-source software.
> # procstat -j
> PID TID COMM SIG FLAGS
> 1395 100199 kas-milter HUP -B
> 1395 100199 kas-milter INT -B
> 1395 100199 kas-milter QUIT --
> 1395 100199 kas-milter ILL --
> 1395 100199 kas-milter TRAP --
> 1395 100199 kas-milter ABRT --
> 1395 100199 kas-milter EMT --
> 1395 100199 kas-milter FPE --
> 1395 100199 kas-milter KILL --
> 1395 100199 kas-milter BUS --
> 1395 100199 kas-milter SEGV --
> 1395 100199 kas-milter SYS --
> 1395 100199 kas-milter PIPE --
> 1395 100199 kas-milter ALRM --
> 1395 100199 kas-milter TERM -B
> 1395 100199 kas-milter URG --
> 1395 100199 kas-milter STOP --
> 1395 100199 kas-milter TSTP --
> 1395 100199 kas-milter CONT --
> 1395 100199 kas-milter CHLD --
> 1395 100199 kas-milter TTIN --
> 1395 100199 kas-milter TTOU --
> 1395 100199 kas-milter IO --
> 1395 100199 kas-milter XCPU --
> 1395 100199 kas-milter XFSZ --
> 1395 100199 kas-milter VTALRM --
> 1395 100199 kas-milter PROF --
> 1395 100199 kas-milter WINCH --
> 1395 100199 kas-milter INFO --
> 1395 100199 kas-milter USR1 --
> 1395 100199 kas-milter USR2 --
> 1395 100199 kas-milter 32 --
> 1395 100199 kas-milter 33 --
> 1395 100199 kas-milter 34 --
> 1395 100199 kas-milter 35 --
> 1395 100199 kas-milter 36 --
> 1395 100199 kas-milter 37 --
> 1395 100199 kas-milter 38 --
> 1395 100199 kas-milter 39 --
> 1395 100199 kas-milter 40 --
> 1395 100199 kas-milter 41 --
> 1395 100199 kas-milter 42 --
> 1395 100199 kas-milter 43 --
> 1395 100199 kas-milter 44 --
> 1395 100199 kas-milter 45 --
> 1395 100199 kas-milter 46 --
> 1395 100199 kas-milter 47 --
> 1395 100199 kas-milter 48 --
> 1395 100199 kas-milter 49 --
> 1395 100199 kas-milter 50 --
> 1395 100199 kas-milter 51 --
> 1395 100199 kas-milter 52 --
> 1395 100199 kas-milter 53 --
> 1395 100199 kas-milter 54 --
> 1395 100199 kas-milter 55 --
> 1395 100199 kas-milter 56 --
> 1395 100199 kas-milter 57 --
> 1395 100199 kas-milter 58 --
> 1395 100199 kas-milter 59 --
> 1395 100199 kas-milter 60 --
> 1395 100199 kas-milter 61 --
> 1395 100199 kas-milter 62 --
> 1395 100199 kas-milter 63 --
> 1395 100199 kas-milter 64 --
> 1395 100199 kas-milter 65 --
> 1395 100199 kas-milter 66 --
> 1395 100199 kas-milter 67 --
> 1395 100199 kas-milter 68 --
> 1395 100199 kas-milter 69 --
> 1395 100199 kas-milter 70 --
> 1395 100199 kas-milter 71 --
> 1395 100199 kas-milter 72 --
> 1395 100199 kas-milter 73 --
> 1395 100199 kas-milter 74 --
> 1395 100199 kas-milter 75 --
> 1395 100199 kas-milter 76 --
> 1395 100199 kas-milter 77 --
> 1395 100199 kas-milter 78 --
> 1395 100199 kas-milter 79 --
> 1395 100199 kas-milter 80 --
> 1395 100199 kas-milter 81 --
> 1395 100199 kas-milter 82 --
> 1395 100199 kas-milter 83 --
> 1395 100199 kas-milter 84 --
> 1395 100199 kas-milter 85 --
> 1395 100199 kas-milter 86 --
> 1395 100199 kas-milter 87 --
> 1395 100199 kas-milter 88 --
> 1395 100199 kas-milter 89 --
> 1395 100199 kas-milter 90 --
> 1395 100199 kas-milter 91 --
> 1395 100199 kas-milter 92 --
> 1395 100199 kas-milter 93 --
> 1395 100199 kas-milter 94 --
> 1395 100199 kas-milter 95 --
> 1395 100199 kas-milter 96 --
> 1395 100199 kas-milter 97 --
> 1395 100199 kas-milter 98 --
> 1395 100199 kas-milter 99 --
> 1395 100199 kas-milter 100 --
> 1395 100199 kas-milter 101 --
> 1395 100199 kas-milter 102 --
> 1395 100199 kas-milter 103 --
> 1395 100199 kas-milter 104 --
> 1395 100199 kas-milter 105 --
> 1395 100199 kas-milter 106 --
> 1395 100199 kas-milter 107 --
> 1395 100199 kas-milter 108 --
> 1395 100199 kas-milter 109 --
> 1395 100199 kas-milter 110 --
> 1395 100199 kas-milter 111 --
> 1395 100199 kas-milter 112 --
> 1395 100199 kas-milter 113 --
> 1395 100199 kas-milter 114 --
> 1395 100199 kas-milter 115 --
> 1395 100199 kas-milter 116 --
> 1395 100199 kas-milter 117 --
> 1395 100199 kas-milter 118 --
> 1395 100199 kas-milter 119 --
> 1395 100199 kas-milter 120 --
> 1395 100199 kas-milter 121 --
> 1395 100199 kas-milter 122 --
> 1395 100199 kas-milter 123 --
> 1395 100199 kas-milter 124 --
> 1395 100199 kas-milter 125 --
> 1395 100199 kas-milter 126 --
> 1395 100199 kas-milter 127 --
> 1395 100199 kas-milter 128 --
> 1395 100232 kas-milter HUP --
> 1395 100232 kas-milter INT --
> 1395 100232 kas-milter QUIT --
> 1395 100232 kas-milter ILL --
> 1395 100232 kas-milter TRAP --
> 1395 100232 kas-milter ABRT --
> 1395 100232 kas-milter EMT --
> 1395 100232 kas-milter FPE --
> 1395 100232 kas-milter KILL --
> 1395 100232 kas-milter BUS --
> 1395 100232 kas-milter SEGV --
> 1395 100232 kas-milter SYS --
> 1395 100232 kas-milter PIPE --
> 1395 100232 kas-milter ALRM --
> 1395 100232 kas-milter TERM --
> 1395 100232 kas-milter URG --
> 1395 100232 kas-milter STOP --
> 1395 100232 kas-milter TSTP --
> 1395 100232 kas-milter CONT --
> 1395 100232 kas-milter CHLD --
> 1395 100232 kas-milter TTIN --
> 1395 100232 kas-milter TTOU --
> 1395 100232 kas-milter IO --
> 1395 100232 kas-milter XCPU --
> 1395 100232 kas-milter XFSZ --
> 1395 100232 kas-milter VTALRM --
> 1395 100232 kas-milter PROF --
> 1395 100232 kas-milter WINCH --
> 1395 100232 kas-milter INFO --
> 1395 100232 kas-milter USR1 --
> 1395 100232 kas-milter USR2 --
> 1395 100232 kas-milter 32 --
> 1395 100232 kas-milter 33 --
> 1395 100232 kas-milter 34 --
> 1395 100232 kas-milter 35 --
> 1395 100232 kas-milter 36 --
> 1395 100232 kas-milter 37 --
> 1395 100232 kas-milter 38 --
> 1395 100232 kas-milter 39 --
> 1395 100232 kas-milter 40 --
> 1395 100232 kas-milter 41 --
> 1395 100232 kas-milter 42 --
> 1395 100232 kas-milter 43 --
> 1395 100232 kas-milter 44 --
> 1395 100232 kas-milter 45 --
> 1395 100232 kas-milter 46 --
> 1395 100232 kas-milter 47 --
> 1395 100232 kas-milter 48 --
> 1395 100232 kas-milter 49 --
> 1395 100232 kas-milter 50 --
> 1395 100232 kas-milter 51 --
> 1395 100232 kas-milter 52 --
> 1395 100232 kas-milter 53 --
> 1395 100232 kas-milter 54 --
> 1395 100232 kas-milter 55 --
> 1395 100232 kas-milter 56 --
> 1395 100232 kas-milter 57 --
> 1395 100232 kas-milter 58 --
> 1395 100232 kas-milter 59 --
> 1395 100232 kas-milter 60 --
> 1395 100232 kas-milter 61 --
> 1395 100232 kas-milter 62 --
> 1395 100232 kas-milter 63 --
> 1395 100232 kas-milter 64 --
> 1395 100232 kas-milter 65 --
> 1395 100232 kas-milter 66 --
> 1395 100232 kas-milter 67 --
> 1395 100232 kas-milter 68 --
> 1395 100232 kas-milter 69 --
> 1395 100232 kas-milter 70 --
> 1395 100232 kas-milter 71 --
> 1395 100232 kas-milter 72 --
> 1395 100232 kas-milter 73 --
> 1395 100232 kas-milter 74 --
> 1395 100232 kas-milter 75 --
> 1395 100232 kas-milter 76 --
> 1395 100232 kas-milter 77 --
> 1395 100232 kas-milter 78 --
> 1395 100232 kas-milter 79 --
> 1395 100232 kas-milter 80 --
> 1395 100232 kas-milter 81 --
> 1395 100232 kas-milter 82 --
> 1395 100232 kas-milter 83 --
> 1395 100232 kas-milter 84 --
> 1395 100232 kas-milter 85 --
> 1395 100232 kas-milter 86 --
> 1395 100232 kas-milter 87 --
> 1395 100232 kas-milter 88 --
> 1395 100232 kas-milter 89 --
> 1395 100232 kas-milter 90 --
> 1395 100232 kas-milter 91 --
> 1395 100232 kas-milter 92 --
> 1395 100232 kas-milter 93 --
> 1395 100232 kas-milter 94 --
> 1395 100232 kas-milter 95 --
> 1395 100232 kas-milter 96 --
> 1395 100232 kas-milter 97 --
> 1395 100232 kas-milter 98 --
> 1395 100232 kas-milter 99 --
> 1395 100232 kas-milter 100 --
> 1395 100232 kas-milter 101 --
> 1395 100232 kas-milter 102 --
> 1395 100232 kas-milter 103 --
> 1395 100232 kas-milter 104 --
> 1395 100232 kas-milter 105 --
> 1395 100232 kas-milter 106 --
> 1395 100232 kas-milter 107 --
> 1395 100232 kas-milter 108 --
> 1395 100232 kas-milter 109 --
> 1395 100232 kas-milter 110 --
> 1395 100232 kas-milter 111 --
> 1395 100232 kas-milter 112 --
> 1395 100232 kas-milter 113 --
> 1395 100232 kas-milter 114 --
> 1395 100232 kas-milter 115 --
> 1395 100232 kas-milter 116 --
> 1395 100232 kas-milter 117 --
> 1395 100232 kas-milter 118 --
> 1395 100232 kas-milter 119 --
> 1395 100232 kas-milter 120 --
> 1395 100232 kas-milter 121 --
> 1395 100232 kas-milter 122 --
> 1395 100232 kas-milter 123 --
> 1395 100232 kas-milter 124 --
> 1395 100232 kas-milter 125 --
> 1395 100232 kas-milter 126 --
> 1395 100232 kas-milter 127 --
> 1395 100232 kas-milter 128 --
hmmm. not complete cut-paste:
1395 100281 kas-milter HUP -B
1395 100281 kas-milter INT -B
1395 100281 kas-milter QUIT --
1395 100281 kas-milter ILL --
1395 100281 kas-milter TRAP --
1395 100281 kas-milter ABRT --
1395 100281 kas-milter EMT --
1395 100281 kas-milter FPE --
1395 100281 kas-milter KILL --
1395 100281 kas-milter BUS --
1395 100281 kas-milter SEGV --
1395 100281 kas-milter SYS --
1395 100281 kas-milter PIPE --
1395 100281 kas-milter ALRM --
1395 100281 kas-milter TERM -B
1395 100281 kas-milter URG --
1395 100281 kas-milter STOP --
1395 100281 kas-milter TSTP --
1395 100281 kas-milter CONT --
1395 100281 kas-milter CHLD --
1395 100281 kas-milter TTIN --
1395 100281 kas-milter TTOU --
1395 100281 kas-milter IO --
1395 100281 kas-milter XCPU --
1395 100281 kas-milter XFSZ --
1395 100281 kas-milter VTALRM --
1395 100281 kas-milter PROF --
1395 100281 kas-milter WINCH --
1395 100281 kas-milter INFO --
1395 100281 kas-milter USR1 --
1395 100281 kas-milter USR2 --
1395 100281 kas-milter 32 --
1395 100281 kas-milter 33 --
1395 100281 kas-milter 34 --
1395 100281 kas-milter 35 --
1395 100281 kas-milter 36 --
1395 100281 kas-milter 37 --
1395 100281 kas-milter 38 --
1395 100281 kas-milter 39 --
1395 100281 kas-milter 40 --
1395 100281 kas-milter 41 --
1395 100281 kas-milter 42 --
1395 100281 kas-milter 43 --
1395 100281 kas-milter 44 --
1395 100281 kas-milter 45 --
1395 100281 kas-milter 46 --
1395 100281 kas-milter 47 --
1395 100281 kas-milter 48 --
1395 100281 kas-milter 49 --
1395 100281 kas-milter 50 --
1395 100281 kas-milter 51 --
1395 100281 kas-milter 52 --
1395 100281 kas-milter 53 --
1395 100281 kas-milter 54 --
1395 100281 kas-milter 55 --
1395 100281 kas-milter 56 --
1395 100281 kas-milter 57 --
1395 100281 kas-milter 58 --
1395 100281 kas-milter 59 --
1395 100281 kas-milter 60 --
1395 100281 kas-milter 61 --
1395 100281 kas-milter 62 --
1395 100281 kas-milter 63 --
1395 100281 kas-milter 64 --
1395 100281 kas-milter 65 --
1395 100281 kas-milter 66 --
1395 100281 kas-milter 67 --
1395 100281 kas-milter 68 --
1395 100281 kas-milter 69 --
1395 100281 kas-milter 70 --
1395 100281 kas-milter 71 --
1395 100281 kas-milter 72 --
1395 100281 kas-milter 73 --
1395 100281 kas-milter 74 --
1395 100281 kas-milter 75 --
1395 100281 kas-milter 76 --
1395 100281 kas-milter 77 --
1395 100281 kas-milter 78 --
1395 100281 kas-milter 79 --
1395 100281 kas-milter 80 --
1395 100281 kas-milter 81 --
1395 100281 kas-milter 82 --
1395 100281 kas-milter 83 --
1395 100281 kas-milter 84 --
1395 100281 kas-milter 85 --
1395 100281 kas-milter 86 --
1395 100281 kas-milter 87 --
1395 100281 kas-milter 88 --
1395 100281 kas-milter 89 --
1395 100281 kas-milter 90 --
1395 100281 kas-milter 91 --
1395 100281 kas-milter 92 --
1395 100281 kas-milter 93 --
1395 100281 kas-milter 94 --
1395 100281 kas-milter 95 --
1395 100281 kas-milter 96 --
1395 100281 kas-milter 97 --
1395 100281 kas-milter 98 --
1395 100281 kas-milter 99 --
1395 100281 kas-milter 100 --
1395 100281 kas-milter 101 --
1395 100281 kas-milter 102 --
1395 100281 kas-milter 103 --
1395 100281 kas-milter 104 --
1395 100281 kas-milter 105 --
1395 100281 kas-milter 106 --
1395 100281 kas-milter 107 --
1395 100281 kas-milter 108 --
1395 100281 kas-milter 109 --
1395 100281 kas-milter 110 --
1395 100281 kas-milter 111 --
1395 100281 kas-milter 112 --
1395 100281 kas-milter 113 --
1395 100281 kas-milter 114 --
1395 100281 kas-milter 115 --
1395 100281 kas-milter 116 --
1395 100281 kas-milter 117 --
1395 100281 kas-milter 118 --
1395 100281 kas-milter 119 --
1395 100281 kas-milter 120 --
1395 100281 kas-milter 121 --
1395 100281 kas-milter 122 --
1395 100281 kas-milter 123 --
1395 100281 kas-milter 124 --
1395 100281 kas-milter 125 --
1395 100281 kas-milter 126 --
1395 100281 kas-milter 127 --
1395 100281 kas-milter 128 --
More information about the freebsd-stable
mailing list