Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Feb 2015 22:43:09 +0000
From:      "hiren (hiren panchasara)" <phabric-noreply@FreeBSD.org>
To:        freebsd-net@freebsd.org
Subject:   [Differential] [Commented On] D1711: Changes to the callout code to restore active semantics and also add a test-framework and test to validate thecallout code (and potentially for use by other tests).
Message-ID:  <622d8d528cec367ceca219e2df32a1f0@localhost.localdomain>
In-Reply-To: <differential-rev-PHID-DREV-vhk6ww63dvpj6egspuyt-req@FreeBSD.org>
References:  <differential-rev-PHID-DREV-vhk6ww63dvpj6egspuyt-req@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
hiren added a comment.

@hps: cc_cpu[MAXCPU] info as you requested on IRC. Let me know if you need more info.



  (kgdb) backtrace 
  #0  doadump (textdump=1) at pcpu.h:219
  #1  0xffffffff80749c17 in kern_reboot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:452
  #2  0xffffffff80749ff4 in panic (fmt=<value optimized out>) at /usr/src/sys/kern/kern_shutdown.c:759
  #3  0xffffffff80735683 in _mtx_lock_spin_cookie (c=<value optimized out>, tid=<value optimized out>, opts=<value optimized out>, file=<value optimized out>, 
      line=<value optimized out>) at /usr/src/sys/kern/kern_mutex.c:561
  #4  0xffffffff80760064 in callout_lock (c=0xfffff8000d81dc98) at /usr/src/sys/kern/kern_timeout.c:530
  #5  0xffffffff8075fc62 in callout_reset_sbt_on (c=0xfffff8000d81dc98, sbt=<value optimized out>, precision=<value optimized out>, 
      ftn=0xffffffff8082a610 <arptimer>, arg=0xfffff8000d81dc00, cpu=<value optimized out>, flags=<value optimized out>) at /usr/src/sys/kern/kern_timeout.c:975
  #6  0xffffffff8082b878 in arpintr (m=<value optimized out>) at /usr/src/sys/netinet/if_ether.c:781
  #7  0xffffffff808189d2 in netisr_dispatch_src (proto=<value optimized out>, source=<value optimized out>, m=0x0) at /usr/src/sys/net/netisr.c:972
  #8  0xffffffff80811396 in ether_demux (ifp=<value optimized out>, m=0xfffff8005c1e8000) at /usr/src/sys/net/if_ethersubr.c:851
  #9  0xffffffff80812029 in ether_nh_input (m=<value optimized out>) at /usr/src/sys/net/if_ethersubr.c:646
  #10 0xffffffff808189d2 in netisr_dispatch_src (proto=<value optimized out>, source=<value optimized out>, m=0x0) at /usr/src/sys/net/netisr.c:972
  #11 0xffffffff80425f9b in em_rxeof (count=99) at /usr/src/sys/dev/e1000/if_em.c:4532
  #12 0xffffffff80426373 in em_msix_rx (arg=0xfffff8000c53a200) at /usr/src/sys/dev/e1000/if_em.c:1600
  #13 0xffffffff8071a7fb in intr_event_execute_handlers (p=<value optimized out>, ie=0xfffff8000c4ac300) at /usr/src/sys/kern/kern_intr.c:1264
  #14 0xffffffff8071b196 in ithread_loop (arg=0xfffff8000c5166e0) at /usr/src/sys/kern/kern_intr.c:1277
  #15 0xffffffff8071841a in fork_exit (callout=0xffffffff8071b100 <ithread_loop>, arg=0xfffff8000c5166e0, frame=0xfffffe0c23fccc00)
      at /usr/src/sys/kern/kern_fork.c:1017
  #16 0xffffffff80aeb08e in fork_trampoline () at /usr/src/sys/amd64/amd64/exception.S:611
  #17 0x0000000000000000 in ?? ()
  (kgdb) p * cc_cpu@8                                                                                                                                      [1/18608]
  $2 = {{cc_lock = {lock_object = {lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{
          cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0xfffffe00006a4000, cc_callwheel = 0xfffffe00007c6000, cc_expireq = {
        tqh_first = 0x0, tqh_last = 0xffffffff81364288}, cc_callfree = {slh_first = 0xfffffe00007c5240}, cc_firstevent = 899380454888656, 
      cc_lastscan = 899380454354416, cc_cookie = 0xfffff8000c34f100, cc_bucket = 31391, cc_ktr_event_name = "callwheel cpu 0\000\000\000\000"}, {cc_lock = {
        lock_object = {lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe000085a000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364408}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899620856539720, cc_lastscan = 899620209076539, 
      cc_cookie = 0xfffff8000c34f080, cc_bucket = 13092, cc_ktr_event_name = "callwheel cpu 1\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe000089a000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364588}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899446753609881, cc_lastscan = 899445618670680, 
      cc_cookie = 0xfffff8000c34f000, cc_bucket = 2680, cc_ktr_event_name = "callwheel cpu 2\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe00008da000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364708}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899622088212480, cc_lastscan = 899619941714270, 
      cc_cookie = 0xfffff8000c34ef00, cc_bucket = 13079, cc_ktr_event_name = "callwheel cpu 3\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe000091a000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364888}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899622239207424, cc_lastscan = 899620104922681, 
      cc_cookie = 0xfffff8000c34ee80, cc_bucket = 10843, cc_ktr_event_name = "callwheel cpu 4\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe000095a000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364a08}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899622004326400, cc_lastscan = 899619864406244, 
      cc_cookie = 0xfffff8000c34ee00, cc_bucket = 10380, cc_ktr_event_name = "callwheel cpu 5\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe000099a000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364b88}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899709111631872, cc_lastscan = 899706966335378, 
      cc_cookie = 0xfffff8000c34ed80, cc_bucket = 17431, cc_ktr_event_name = "callwheel cpu 6\000\000\000\000"}, {cc_lock = {lock_object = {
          lo_name = 0xffffffff80d03d28 "callout", lo_flags = 720896, lo_data = 0, lo_witness = 0x0}, mtx_lock = 4}, cc_exec_entity = {{cc_curr = 0x0, 
          ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, cc_cancel = false, 
          cc_waiting = false}, {cc_curr = 0x0, ce_migration_func = 0, ce_migration_arg = 0x0, ce_migration_cpu = 64, ce_migration_time = 0, ce_migration_prec = 0, 
          cc_cancel = false, cc_waiting = false}}, cc_next = 0x0, cc_callout = 0x0, cc_callwheel = 0xfffffe00009da000, cc_expireq = {tqh_first = 0x0, 
        tqh_last = 0xffffffff81364d08}, cc_callfree = {slh_first = 0x0}, cc_firstevent = 899621360124557, cc_lastscan = 899620209077230, 
      cc_cookie = 0xfffff8000c34e400, cc_bucket = 13086, cc_ktr_event_name = "callwheel cpu 7\000\000\000\000"}}

REVISION DETAIL
  https://reviews.freebsd.org/D1711

To: rrs, gnn, rwatson, lstewart, jhb, kostikbel, sbruno, imp, adrian, hselasky
Cc: julian, hiren, jhb, kostikbel, emaste, delphij, neel, erj, freebsd-net



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?622d8d528cec367ceca219e2df32a1f0>