[lkml]   [1996]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subjectdouble lock on socket
Now, I know the double lock on socket message is supposed to not
mean anything anymore... matter of fact, the message appears to
be disabled in standard code....

But, a while back, I'd hacked linux/net/sock.h to make the
lock_sock() not just print a double lock occured, but where the
current and prev locks happened.

Not seen such a message in a while, but I finally did today with
1.99.7. I saw the following when I type into a VC that had an
rlogin session that had been idle for a while [formatted to fit
under 80 chars]

May 28 18:51:22 thune kernel: double lock on socket at tcp.c:1162, \
prev lock at tcp.c:1440

Now, in that file, line 1162 is in tcp_sendmsg() (just prior to
the discussion of Nagle's rule); line 1440 is in tcp_recvmsg()
(just prior to found_on_skb: label).

I must admit, I don't understand the networking code thoroughly.
However, it appears that there is no obvious path from that point
in tcp_recvmsg() to tcp_sendmsg() that does not go through

I'm still a bit confused on how a process accessing the network,
that has been paged out, could cause this scenario....

If that has been discussed before, a pointer to the message-id
(and a working website that has them archived... last time i
tried, it wasn't working), I'll reread the
discussion myself.

Mike Castle .-=NEXUS=-. Life is like a clock: You can work constantly and be right all the time, or not work at all and be right at least twice a day. -- mrc
We are all of us living in the shadow of Manhattan. -- Watchmen

 \ /
  Last update: 2005-03-22 13:37    [W:0.023 / U:1.676 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site