Messages in this thread | | | Subject | Re: Large file copy to NFS mounted directory causes delay in other application packets | From | Eric Dumazet <> | Date | Wed, 09 Nov 2011 09:59:09 +0100 |
| |
Please dont top post on these lists, thanks.
Le mercredi 09 novembre 2011 à 00:13 -0800, Manavalan Krishnan a écrit : > (1) NFS is using TCP > (2) yes eth0 is dedicated to heartbeat and eth1 is dedicated to NFS > (3) I notice the following at the system where file copy is occuring > > The kernel Recv-Q of the heartbeat application socket grows but not delivered to the socket recv call. > Here is the netstat output. > > Proto Recv-Q Send-Q Local Address Foreign Address > > udp 11522 0 *:23435 *:* >
OK so the sending side is OK : The delay is at receiver side.
Note that since netstat shows receive queue has some skbs, it should be available to heartbeat daemon immediately.
> As soon as I stop the file transfer, the socket recv call receives the packets and Recv-Q goes 0. > (4) The server has 4 cpu cores and 25G RAM >
1) How many nfsd threads are running ? grep th /proc/net/rpc/nfsd
2) WHat kind of NIC do you use ? lsmod , lspci
3) Hmm, are IRQ to eth0/eth1 handled by same cpu ? grep eth /proc/interrupts
4) You could try to cpu affine all nfsd to cpu0,cpu1,cpu2 and heartbeat daemon to cpu3. man taskset
5) You could 'strace -ttt' heartbeat daemon to check if it is not blocked on some local disk access (it competes with all nfsd threads)
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |