linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Waking up kernel thread blocked in sock_recvmsg
@ 2002-10-08 23:00 Steven French
  0 siblings, 0 replies; 2+ messages in thread
From: Steven French @ 2002-10-08 23:00 UTC (permalink / raw)
  To: linux-kernel

What is the recommended, safe way to wake up a kernel thread blocked in
sock_recvmsg (other than sending data to it or pulling the network cable
out of the wall and generating network errors).   I have tried various
approaches in kernel sock_close, sock_release even wake_up_process.    When
I want to free my captive kernel threads this thread is typically blocked
in tcp_recv_data (on a blocking read of a tcp v4 socket).  I am not certain
that it is not waking up and promptly going back to sleep but it is
certainly not returning to the caller until it really gets data.

Steve French
Samba Team
Senior Software Engineer
Linux Technology Center - IBM Austin
phone: 512-838-2294
email: sfrench@us.ibm.com



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Waking up kernel thread blocked in sock_recvmsg
       [not found] <OF622E0CD7.34DDBCD6-ON87256C4C.007D935A@boulder.ibm.com.suse.lists.linux.kernel>
@ 2002-10-08 23:25 ` Andi Kleen
  0 siblings, 0 replies; 2+ messages in thread
From: Andi Kleen @ 2002-10-08 23:25 UTC (permalink / raw)
  To: Steven French; +Cc: linux-kernel

"Steven French" <sfrench@us.ibm.com> writes:

> What is the recommended, safe way to wake up a kernel thread blocked in
> sock_recvmsg (other than sending data to it or pulling the network cable
> out of the wall and generating network errors).   I have tried various
> approaches in kernel sock_close, sock_release even wake_up_process.    When
> I want to free my captive kernel threads this thread is typically blocked
> in tcp_recv_data (on a blocking read of a tcp v4 socket).  I am not certain
> that it is not waking up and promptly going back to sleep but it is
> certainly not returning to the caller until it really gets data.

You could send it a signal. 

Or alternatively use non blocking sockets and sleep yourself on the socket
wait queue.

-Andi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2002-10-08 23:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-08 23:00 Waking up kernel thread blocked in sock_recvmsg Steven French
     [not found] <OF622E0CD7.34DDBCD6-ON87256C4C.007D935A@boulder.ibm.com.suse.lists.linux.kernel>
2002-10-08 23:25 ` Andi Kleen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).