Weird ISR accounting in 10-STABLE
Vlad Galu
galu at packetdam.com
Wed Jul 9 21:44:07 UTC 2014
I hope I'm doing this the right way. Invoking DTrace as dtrace -n
'profile-1000 /curthread->td_name == "swi1: netisr 0"/ { @[func(arg0)] =
count(); }' outputs:
-- cut here --
kernel`__mtx_lock_sleep 2
kernel`in6_rtalloc1 15
kernel`mb_dtor_mbuf 25
kernel`m_tag_delete_nonpersistent 26
kernel`m_tag_delete_chain 29
kernel`swi_net 29
kernel`netisr_select_cpuid 34
kernel`mac_mbuf_init 37
kernel`ipsec_in_reject 42
kernel`nd6_output 44
kernel`key_havesp 44
kernel`mac_policy_sunlock_nosleep 51
kernel`mac_mbuf_to_label 51
kernel`m_tag_copy_chain 52
kernel`ip6_ipsec_filtertunnel 53
kernel`critical_enter 58
kernel`critical_exit 58
kernel`pf_check6_in 58
kernel`netisr_queue 59
kernel`ipsec6_in_reject 59
kernel`m_freem 63
kernel`mac_policy_slock_nosleep 63
kernel`pf_check6_out 69
kernel`in6_lltable_lookup 87
kernel`in6_clearscope 102
kernel`looutput 108
kernel`if_simloop 121
kernel`ipsec_getpolicybyaddr 134
kernel`rtfree 160
kernel`uma_zalloc_arg 211
kernel`m_copym 262
kernel`mac_netinet6_nd6_send 268
kernel`key_allocsp_default 270
kernel`pfil_run_hooks 303
kernel`pf_test6 335
kernel`uma_zfree_arg 337
kernel`bcopy 340
kernel`mac_ifnet_create_mbuf 358
kernel`netisr_queue_internal 368
kernel`_rm_runlock 371
kernel`rtalloc1_fib 385
kernel`mb_ctor_mbuf 412
kernel`nd6_output_lle 465
kernel`_key_freesp 506
kernel`key_addref 521
kernel`_rw_runlock_cookie 602
kernel`__rw_rlock 606
kernel`in6_setscope 662
kernel`_rm_rlock 758
kernel`rn_match 797
kernel`mac_ifnet_check_transmit 1110
kernel`ip6_forward 1334
kernel`bzero 1492
kernel`ip6_input 1685
kernel`bcmp 3511
-- and here --
The swi thread is definitely the naughtiest, running dtrace -n
'profile-1000 { @[stringof(curthread->td_name)] = count(); }' shows:
-- cut here --
aiod1 1
arc_reclaim_thread 1
trim tank 1
txg_thread_enter 1
vmdaemon 1
zio_write_issue_1 1
acpi_cooling1 2
acpi_thermal 2
irq265: re0 2
vnlru 2
bufdaemon 3
irq266: ahci0 3
l2arc_feed_thread 3
sshd 5
pagedaemon 6
syncer 13
dtrace 17
cut 18
sh 18
tmux 30
rand_harvestq 38
pf purge 51
swi4: clock 256
idle: cpu3 18803
idle: cpu5 18810
idle: cpu4 18826
idle: cpu2 18836
idle: cpu7 18839
idle: cpu6 18842
idle: cpu0 18882
swi1: netisr 0 19008
-- and here --
On Wed, Jul 9, 2014 at 7:02 PM, John Baldwin <jhb at freebsd.org> wrote:
> On Tuesday, July 08, 2014 8:56:44 am Vlad Galu wrote:
> > The symptom has reappeared, although interestingly enough I can't spot
> > anything out of the ordinary in this DTrace output:
>
> Can you get dtrace to only display the functions called by that thread?
>
> --
> John Baldwin
>
--
Regards,
Vlad
More information about the freebsd-stable
mailing list