FWIW...I back-merged the changes to ping.[ch] from master to 17.07 locally and 
now it works.


-----Original Message-----
From: vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io] On 
Behalf Of Steve Heckman
Sent: Tuesday, August 8, 2017 10:56 AM
To: vpp-dev@lists.fd.io
Subject: [vpp-dev] vpp v17.07 ping assert

I've been running into issues on certain servers where I get an assert:

Aug 08 09:51:52 p5s3 systemd[1]: vpp.service: Main process exited, code=killed, 
status=6/ABRT Aug 08 09:51:52 p5s3 systemd[1]: vpp.service: Unit entered failed 
Aug 08 09:51:52 p5s3 systemd[1]: vpp.service: Failed with result 'signal'.

here in ping.c

   vlib_process_signal_event (vm, pr->cli_process_id, event_type, bi0_copy);

which calls vec_elt, where the assert actually occurs.

/** \brief Get vector value at index i checking that i is in bounds. */
#define vec_elt_at_index(v,i)                   \
({                                              \
   ASSERT ((i) < vec_len (v));                   \
   (v) + (i);                                    \

/** \brief Get vector value at index i */ #define vec_elt(v,i) 

pr->cli_process_id is set in run_ping_ip46_address() and always seems to
be 344.

   uword curr_proc = vlib_current_process (vm);


   pr->cli_process_id = curr_proc;

vec_len(v) seems to be 32 (Does that make sense?).

Everything else seems to work OK. I can do "show interface (addr)", "show ip 

Any ideas?

This is stock apt install on Ubuntu 16.04 LTS on HPG9 and SMC servers with 
Intel 82599 NICs.


Steve Heckman

Principal Software Engineer


vpp-dev mailing list
vpp-dev mailing list

Reply via email to