BTW, what do people think about doing the same thing with the rxqueue and txqueue's of netstat output?



I dont understand this question, I thought your patch already handled this (for the txqueue, since rxqueue is already there), as netstat uses /proc/net/tcp (unfortunatly)

Well, it doesn't seem to be the case. This is from the same system as the ss output above:

hpcpc103:~# netstat -an | grep LISTEN
tcp        0      0 0.0.0.0:111          0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:113          0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25         0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:42137        0.0.0.0:*               LISTEN
tcp6       0      0 :::22                :::*                    LISTEN
unix  2    [ ACC ]     STREAM   LISTENING   5666  /var/run/acpid.socket

I thought I saw some other code in there when I was stumbling around.


Yes. netstat code seems to have a explicit check for TCP_LISTEN state
and zeroing txq and rxq.
From tcp_do_one() in netstat.c
    if (state == TCP_LISTEN) {
        time_len = 0;
        retr = 0L;
        rxq = 0L;
        txq = 0L;
    }

How terribly cheeky of them.  I wonder why they were doing that?

We should fix this. Also i think it is a good idea to update netstat to use INET_DIAG_INFO instead of /proc/net/tcp.

Since that is user space I went ahead and sent the updated kernel patch in a fresh thread.

rick
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to