Hi all,
My mistake, sorry to bother :) .

Regards,
Ewan


yug...@telincn.com
 
From: yug...@telincn.com
Date: 2017-05-20 15:20
To: vpp-dev
Subject: Segmentation fault in loading snat_plugin.so
Hi all,
Thanks for time.
I have adjusted snat nodes like below, then i got segmentation fault.
It seems that when node snat-det-out2in  is registering himself, there is no 
node snat-out2in.
But  node snat-out2in was already registered before that, why ?


VLIB_NODE_FUNCTION_MULTIARCH (snat_out2in_fast_node, snat_out2in_fast_node_fn);
VLIB_REGISTER_NODE (snat_det_out2in_node) = {
  .function = snat_det_out2in_node_fn,
  .name = "snat-det-out2in",
  .vector_size = sizeof (u32),
  .format_trace = format_snat_out2in_trace,
  .type = VLIB_NODE_TYPE_INTERNAL,

  .n_errors = ARRAY_LEN(snat_out2in_error_strings),
  .error_strings = snat_out2in_error_strings,

  .runtime_data_bytes = sizeof (snat_runtime_t),

  .n_next_nodes = 3,

  /* edit / add dispositions here */
  .next_nodes = {
    [SNAT_OUT2IN_NEXT_DROP] = "error-drop",
    [SNAT_OUT2IN_NEXT_LOOKUP] = "ip4-lookup",
    [SNAT_OUT2IN_NEXT_SLOW_PATH] = "snat-out2in",
  },
};
VLIB_NODE_FUNCTION_MULTIARCH (snat_det_out2in_node, snat_det_out2in_node_fn);



VLIB_REGISTER_NODE (snat_out2in_node) = {
  .function = snat_out2in_node_fn,
  .name = "snat-out2in",
  .vector_size = sizeof (u32),
  .format_trace = format_snat_out2in_trace,
  .type = VLIB_NODE_TYPE_INTERNAL,
  
  .n_errors = ARRAY_LEN(snat_out2in_error_strings),
  .error_strings = snat_out2in_error_strings,

  .runtime_data_bytes = sizeof (snat_runtime_t),
  
  .n_next_nodes = 3,

  /* edit / add dispositions here */
  .next_nodes = {
    [SNAT_OUT2IN_NEXT_DROP] = "error-drop",
    [SNAT_OUT2IN_NEXT_LOOKUP] = "ip4-lookup",
    [SNAT_OUT2IN_NEXT_ICMP_ERROR] = "ip4-icmp-error",
  },
};
VLIB_NODE_FUNCTION_MULTIARCH (snat_out2in_node, snat_out2in_node_fn);




Thread 1 "vpp" received signal SIGSEGV, Segmentation fault.
0x00007ffff776ded6 in vlib_get_node (i=4294967295, vm=0x7ffff79aa2a0 
<vlib_global_main>) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/node_funcs.h:60
60   return vec_elt (vm->node_main.nodes, i);
(gdb) bt
#0  0x00007ffff776ded6 in vlib_get_node (i=4294967295, vm=0x7ffff79aa2a0 
<vlib_global_main>) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/node_funcs.h:60
#1  vlib_node_main_init (vm=0x7ffff79aa2a0 <vlib_global_main>) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/node.c:608
#2  0x00007ffff7756bc2 in vlib_main (vm=vm@entry=0x7ffff79aa2a0 
<vlib_global_main>, input=input@entry=0x7fffb4cf7fa0) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:1691
#3  0x00007ffff7790833 in thread0 (arg=140737347494560) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/unix/main.c:507
#4  0x00007ffff5c5ff00 in clib_calljmp () at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vppinfra/longjmp.S:110
#5  0x00007fffffffd410 in ?? ()
#6  0x00007ffff779123d in vlib_unix_main (argc=<optimized out>, argv=<optimized 
out>) at 
/usr/src/1704/VBRASV100R001/vpp1704/build-data/../src/vlib/unix/main.c:606
#7  0x001f0f1474db8548 in ?? ()

Regards,
Ewan


ewan
_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to