SIGIO only mean readable or writable, how channel event avoid writable

Zhang Chao zchao1995 at
Mon Nov 13 02:11:02 UTC 2017


The channel, on the  worker process land, is readonly, since the write end
was closed.

For the SIGIO, which is just ignored by the worker while just affects a
global variable ngx_sigio on the master land, though it is never used.

However, for generating the signal SIGIO, you shall call the fcntl and set
the asynchronous mode, but the master doesn’t do that.

So i think SIGIO will not be passed when the channel is writable, please
correct it if anywhere is improper :)

On 13 November 2017 at 00:39:08, yang chen (shanchuan04 at wrote:

[image: 内嵌图片 1]

in the "Linux System Programming: Talking Directly to the Kernel and C
Library", it says SIGIO mean readable or writable, and in man page it says
SIGIO means I/O is possible on a descriptor,
so if this, I'm curious that channel is writable, nginx will receive the
nginx mailing list
nginx at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ii_15fb112fdac2408c
Type: application/octet-stream
Size: 321901 bytes
Desc: not available
URL: <>

More information about the nginx mailing list