Mon, Apr 25, 2016 at 07:39:32PM CEST, eduma...@google.com wrote: >SOCKWQ_ASYNC_NOSPACE is tested in sock_wake_async() >so that a SIGIO signal is sent when needed. > >tcp_sendmsg() clears the bit. >tcp_poll() sets the bit when stream is not writeable. > >We can avoid two atomic operations by first checking if socket >is actually interested in the FASYNC business (most sockets in >real applications do not use AIO, but select()/poll()/epoll()) > >This also removes one cache line miss to access sk->sk_wq->flags >in tcp_sendmsg() > >Signed-off-by: Eric Dumazet <eduma...@google.com>
I just bisected down to this. This is causing a regression for me when my nfs mount becomes stuck. I can easily reproduce this if you need to test the fix. Thanks.