Hi,

I'm using ODP (odp github updated master branch) drivers from an external 
application, and I'm facing some limitations while adding entries to the 
iplookup tables (helper/iplookuptable.c).

I create the tables using odph_iplookup_table_create and define the value size 
as 12. The prefix that I'm using is 32, and I'm trying to insert 1000 entries. 
It is crashing during the odph_iplookup_table_put_value at the 159 entry. I 
have also tried changing the prefix to 16, in this case, it is crashing at the 
entry 496.

I have GDB log as below:

#0  0x00007f12a689f428 in __GI_raise (sig=sig@entry=6) at 
../sysdeps/unix/sysv/linux/raise.c:54
54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
[Current thread is 1 (Thread 0x7f0e67b07700 (LWP 17539))]
(gdb) bt
#0  0x00007f12a689f428 in __GI_raise (sig=sig@entry=6) at 
../sysdeps/unix/sysv/linux/raise.c:54
#1  0x00007f12a68a102a in __GI_abort () at abort.c:89
#2  0x00000000004070c3 in sig_handler.part ()
#3  0x0000000000413001 in sig_handler ()
#4  <signal handler called>
#5  buffer_alloc_multi (pool=0x7f1200220c00, 
buf_hdr=buf_hdr@entry=0x7f0e67ab1bd0,
    max_num=max_num@entry=1) at odp_pool.c:700
#6  0x0000000000432ff3 in odp_buffer_alloc (pool_hdl=pool_hdl@entry=0x9) at 
odp_pool.c:861
#7  0x00000000006ecfa7 in cache_alloc_new_pool (type=CACHE_TYPE_TRIE, 
tbl=<optimized out>)
    at iplookuptable.c:223
#8  cache_get_buffer (type=CACHE_TYPE_TRIE, tbl=<optimized out>) at 
iplookuptable.c:248
#9  trie_insert_node (nexthop=<optimized out>, cidr=<optimized out>, 
ip=<optimized out>,
    root=<optimized out>, tbl=<optimized out>) at iplookuptable.c:317
#10 odph_iplookup_table_put_value (tbl=<optimized out>, key=<optimized out>, 
value=<optimized out>)
    at iplookuptable.c:686


If any other logs or details are required, please let me know then I would 
provide here to resolve this issue.

Thanks

Fabricio Rodriguez

Reply via email to