Hi Dave,

I have back-merged changes committed in VPP18.10 to 18.01.

Change details is as given below -

commit 0610039fd06c760924fb92d0fc7b4d3e0ffeb8e3
Author: Dave Barach <dbar...@cisco.com>
Date: Thu Jul 12 13:00:47 2018 -0400

Now we are facing a crash during init time , it looks to me if we fire
vppctl while VPP is coming is causing the below crash, It is not always
re-producible. Do you have any idea about this issue?


*Crashing at*  (File *src/vlib/main.c)*

    569 void
    570 vlib_node_sync_stats (vlib_main_t * vm, vlib_node_t * n)
    571 {
    572   vlib_node_runtime_t *rt;
    573
    574   if (n->type == VLIB_NODE_TYPE_PROCESS)
    575     {
    576       /* Nothing to do for PROCESS nodes except in main thread */
    577       if (vm != &vlib_global_main)
    578         return;
    579
    580       vlib_process_t *p = vlib_get_process_from_node (vm, n);
    581       n->stats_total.suspends += p->n_suspends;
    582       p->n_suspends = 0;
    583       rt = &p->node_runtime;
    584     }
    585   else
    586     rt =
    587       vec_elt_at_index (vm->node_main.nodes_by_type[n->type],
    588                         n->runtime_index);
    589
    590   vlib_node_runtime_sync_stats (vm, rt, 0, 0, 0);
    591
    592   /* Sync up runtime next frame vector counters with main node
structure. */
    593   {
    594     vlib_next_frame_t *nf;
    595     uword i;
    596     for (i = 0; i < rt->n_next_nodes; i++)
    597       {
    598         nf = vlib_node_runtime_get_next_frame (vm, rt, i);

*    599         vec_elt (n->n_vectors_by_next_node, i) +=    600
nf->vectors_since_last_overflow;*
    601         nf->vectors_since_last_overflow = 0;
    602       }
    603   }
    604 }

Back Trace is as below -

(gdb) info thr
  Id   Target Id         Frame
  9    Thread 0x2b7d72188700 (LWP 63125) 0x00002b7825278eed in nanosleep ()
from /lib64/libpthread.so.0
  8    Thread 0x2b7d71381700 (LWP 63105) 0x00002b7825789113 in epoll_wait
() from /lib64/libc.so.6
  7    Thread 0x2b7d71f87700 (LWP 63111) vlib_worker_thread_barrier_check ()
    /src/vlib/threads.h:403
  6    Thread 0x2b7d71d86700 (LWP 63110) vlib_worker_thread_barrier_check ()
    src/vlib/threads.h:403
  5    Thread 0x2b7d71b85700 (LWP 63109) vlib_worker_thread_barrier_check ()
    src/vlib/threads.h:403
  4    Thread 0x2b7d71984700 (LWP 63108) vlib_worker_thread_barrier_check ()
    src/vlib/threads.h:403
  3    Thread 0x2b7d71783700 (LWP 63107) vlib_worker_thread_barrier_check ()
    src/vlib/threads.h:403
  2    Thread 0x2b7d71582700 (LWP 63106) vlib_worker_thread_barrier_check ()
    src/vlib/threads.h:403
* 1    Thread 0x2b78231439c0 (LWP 62940) 0x00002b78256c0207 in raise ()
from /lib64/libc.so.6
#0  0x00002b78256c0207 in raise () from /lib64/libc.so.6
#1  0x00002b78256c18f8 in abort () from /lib64/libc.so.6
#2  0x0000000000405ea9 in os_panic ()
    src/vpp/vnet/main.c:266
#3  0x00002b78237d2ad9 in unix_signal_handler (signum=<optimized out>,
si=<optimized out>, uc=<optimized out>)
    src/vlib/unix/main.c:126
#4  <signal handler called>



*#5  0x00002b782379ab97 in vlib_node_sync_stats (vm=vm@entry=0x2b78239ed240
<vlib_global_main>, n=0x2b7826196468)    src/vlib/main.c:599#6
0x00002b78237bda3a in worker_thread_node_runtime_update_internal ()
src/vlib/threads.c:1046*

*#7  vlib_worker_thread_barrier_release (vm=vm@entry=0x2b78239ed240
<vlib_global_main>)    src/vlib/threads.c:1528*
#8  0x00002b78237c8463 in unix_cli_file_add (name=<optimized out>,
name@entry=0x2b7827082494 "local:10", fd=49,
    cm=0x2b78239ed0e0 <unix_cli_main>, cm=0x2b78239ed0e0 <unix_cli_main>)
    src/vlib/unix/cli.c:2607
#9  0x00002b78237cd373 in unix_cli_listen_read_ready (uf=<optimized out>)
    src/vlib/unix/cli.c:2659
#10 0x00002b78237d21f0 in linux_epoll_input (vm=<optimized out>,
node=<optimized out>, frame=<optimized out>)
    src/vlib/unix/input.c:203
#11 0x00002b782379bc16 in dispatch_node (last_time_stamp=12704185179896535,
frame=0x0, dispatch_state=VLIB_NODE_STATE_POLLING,
    type=VLIB_NODE_TYPE_PRE_INPUT, node=0x2b78288142c0, vm=0x2b78239ed240
<vlib_global_main>)
    src/vlib/main.c:988
#12 vlib_main_or_worker_loop (is_main=1, vm=0x2b78239ed240
<vlib_global_main>)
    src/vlib/main.c:1498
#13 vlib_main_loop (vm=0x2b78239ed240 <vlib_global_main>)
    src/vlib/main.c:1628
#14 vlib_main (vm=vm@entry=0x2b78239ed240 <vlib_global_main>,
input=input@entry=0x2b782858afa0)
    src/vlib/main.c:1783
#15 0x00002b78237d2c13 in thread0 (arg=47794993680960)
    src/vlib/unix/main.c:548
#16 0x00002b7824b07988 in clib_calljmp ()

Thanks,
Chetan Bhasin
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#11833): https://lists.fd.io/g/vpp-dev/message/11833
Mute This Topic: https://lists.fd.io/mt/28932141/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to