Hi All, We are observing a random crash in code that we have added in VPP. The stack trace indicates an invalid memory access in _*hash_get*(). From the hash table code we see that the hash table can auto resize and sink based on the utilization. So the question is whether we need to take a barrier lock before calling *hash_set_mem*(). We have two workers used in our product. The hash table is created with 0 size, 32 byte key and 64 bit value. hash_create_mem(0, 32, sizeof(uword));
VPP Version:* 21.10* Thread 2 (Thread 0x7f2db2c2e700 (LWP 395)): #0 0x00007f2dffd64492 in __GI___waitpid (pid=21256, stat_loc=stat_loc@entry=0x7f2db342f918, options=options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:30 #1 0x00007f2dffccf177 in do_system (line=line@entry=0x7f2db342faa0 "/usr/local/bin/rtb-dump-core.sh '212' 'fibd'") at ../sysdeps/posix/system.c:149 #2 0x00007f2dffccf55a in __libc_system (line=line@entry=0x7f2db342faa0 "/usr/local/bin/rtb-dump-core.sh '212' 'fibd'") at ../sysdeps/posix/system.c:185 #3 0x00007f2e0029b05d in bd_signal_handler_cb (signo=11) at /development/rtbrick-infrastructure/code/bd/src/bdinfra/bd.c:753 #4 0x00007f2df10edb67 in rtb_bd_signal_handler (signo=11) at /development/libvpp/src/vlib/unix/main.c:101 #5 0x00007f2df10edf59 in unix_signal_handler (signum=11, si=0x7f2db342ff30, uc=0x7f2db342fe00) at /development/libvpp/src/vlib/unix/main.c:202 #6 <signal handler called> #7 __memcmp_sse4_1 () at ../sysdeps/x86_64/multiarch/memcmp-sse4.S:1528 #8 0x00007f2df08c06ce in mem_key_equal (h=0x7f2dcaf30bd0, key1=21474836480, key2=139834257770336) at /development/libvpp/src/vppinfra/hash.c:940 #9 0x00007f2df08c8da0 in key_equal1 (h=0x7f2dcaf30bd0, key1=21474836480, key2=139834257770336, e=0) at /development/libvpp/src/vppinfra/hash.c:375 #10 0x00007f2df08c809a in key_equal (h=0x7f2dcaf30bd0, key1=21474836480, key2=139834257770336) at /development/libvpp/src/vppinfra/hash.c:389 #11 0x00007f2df08c8714 in get_indirect (v=0x7f2dcaf30c18, pi=0x7f2dcaf30fb8, key=139834257770336) at /development/libvpp/src/vppinfra/hash.c:407 #12 0x00007f2df08bebf5 in lookup (v=0x7f2dcaf30c18, key=139834257770336, op=GET, new_value=0x0, old_value=0x0) at /development/libvpp/src/vppinfra/hash.c:598 ---Type <return> to continue, or q <return> to quit--- #13 0x00007f2df08be991 in _hash_get (v=0x7f2dcaf30c18, key=139834257770336) at /development/libvpp/src/vppinfra/hash.c:641 Thanks, Rajith -- NOTICE TO RECIPIENT This e-mail message and any attachments are confidential and may be privileged. If you received this e-mail in error, any review, use, dissemination, distribution, or copying of this e-mail is strictly prohibited. Please notify us immediately of the error by return e-mail and please delete this message from your system. For more information about Rtbrick, please visit us at www.rtbrick.com <http://www.rtbrick.com>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20939): https://lists.fd.io/g/vpp-dev/message/20939 Mute This Topic: https://lists.fd.io/mt/89496144/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-