Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
mouse jumps with tcp_usrreq_wrapper
Hi Chuck,
thanks for fixing the mouse jumps with disk io (PR 46325).
I still can reproduce mouse jumps with network io.
The way I can reproduce:
Use NetBSD/amd64 as desktop machine and ssh to
a remote machine. Do something that keeps the
local xterm busy (e.g. run a build on the remote
machine).
A second way I can reproduce is to have $HOME
mounted via nfs and run thunderbird. Fetch mails
and tell thunderbird to store it somewhere under $HOME/.
I run 'lockstat cat' several times and whenever I
reproduced a mouse jump I got this:
-- Kernel lock spin
Total% Count Time/ms Lock Caller
------ ------- --------- ----------------------
------------------------------
100.00 355 7.53 kernel_lock <all>
68.49 39 5.16 kernel_lock VOP_POLL+40
22.36 174 1.68 kernel_lock cdev_poll+4d
3.87 53 0.29 kernel_lock VOP_UNLOCK+40
1.51 12 0.11 kernel_lock intr_biglock_wrapper+16
1.28 48 0.10 kernel_lock tcp_usrreq_wrapper+2d
1.11 11 0.08 kernel_lock VOP_READ+48
0.63 11 0.05 kernel_lock VOP_LOCK+43
0.31 1 0.02 kernel_lock cdev_read+4d
0.27 2 0.02 kernel_lock VOP_WRITE+48
0.09 2 0.01 kernel_lock softint_dispatch+161
0.06 1 0.00 kernel_lock ipintr+41
0.01 1 0.00 kernel_lock ip_slowtimo+1a
Also 'top -u' shows that the Xorg process eats most cpu time
and interrupt load is about 2.0% on cpu0 when the mouse jump happens.
My theory is that the mouse jump happens everytime when the
Xorg process is blocked by the big kernel lock used with
tcp_usrreq_wrapper().
Christoph
Home |
Main Index |
Thread Index |
Old Index