VPP is built with follow command:
*make build VPP_EXTRA_CMAKE_ARGS="-DVPP_ENABLE_SANITIZE_ADDR=ON"
*
I run vpp on Microsoft hyper-v vm with Ubuntu20.04, use a vmbus adapter as NIC. 
It seems if I run vpp with follow *startup.conf* , it will ALWAYS failed cause 
of asan error:
starup.conf
unix {
nodaemon
interactive
nosyslog
log /tmp/vpp-running.log
cli-no-banner
cli-no-pager
}
tcp {
mtu 1500
cleanup-time 5000
}
udp {
mtu 9000
}
ethernet {
default-mtu 1500
}
heapsize 2g
buffers {
buffers-per-numa 65536
default data-size 2048
}
cpu {
thread-prefix nat44
main-core 0
corelist-workers 1
}
session {
enable
}
dpdk {
log-level notice
log-level lib.eal:notice
no-tx-checksum-offload
dev 397d3090-ba26-4317-ab85-45bcffd9aee1 {
name eth0
num-rx-queues 1
num-tx-queues 1
rss {
ipv4-tcp
ipv4-udp
ipv4
}
}
}
plugins {
plugin default {enable}
}
*
*
397d3090-ba26-4317-ab85-45bcffd9aee1 is id of vmbus adapter
With asan error like below:
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from./bin/vpp...
(gdb) r -c /tmp/startup.conf
Starting program: 
/root/source/vpp/build-root/install-vpp_debug-native/vpp/bin/vpp -c 
/tmp/startup.conf
[Thread debugging using libthread_db enabled]
Using host libthread_db library " /lib/x86_64-linux-gnu/libthread_db.so.1 ".
perfmon [warn ]: skipping source 'intel-uncore' - intel_uncore_init: no uncore 
units found
[New Thread 0x7ffb65d2e700 (LWP 10214)]
[New Thread 0x7ffb64ffc700 (LWP 10215)]
=================================================================

Thread 3 "nat44_wk_0" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffb64ffc700 (LWP 10215)]
__asan::FakeStack::AddrIsInFakeStack ( this =0x0, ptr =140717725490360, 
frame_beg=frame_beg@entry =0x7ffb64ffab48,
frame_end=frame_end@entry =0x7ffb64ffab50) 
at../../../../src/libsanitizer/asan/asan_fake_stack.cc :116
116 ../../../../src/libsanitizer/asan/asan_fake_stack.cc: No such file or 
directory.
(gdb) bt
#0 __asan::FakeStack::AddrIsInFakeStack ( this =0x0, ptr =140717725490360, 
frame_beg=frame_beg@entry =0x7ffb64ffab48,
frame_end=frame_end@entry =0x7ffb64ffab50) 
at../../../../src/libsanitizer/asan/asan_fake_stack.cc :116
#1 0x00007ffff76a9ef5 in __asan::FakeStack::AddrIsInFakeStack ( addr =, this =)
at../../../../src/libsanitizer/asan/asan_fake_stack.h :134
#2 __asan::ThreadStackContainsAddress ( tctx_base =, addr =)
at../../../../src/libsanitizer/asan/asan_thread.cc :389
#3 0x00007ffff76c485a in __sanitizer::ThreadRegistry::FindThreadContextLocked (
this =0x7ffff772d720 <__asan::thread_registry_placeholder>,
cb=cb@entry =0x7ffff76a9e50 
<__asan::ThreadStackContainsAddress(__sanitizer::ThreadContextBase*, void*)>,
arg=arg@entry =0x7ffb660a9cb8) 
at../../../../src/libsanitizer/sanitizer_common/sanitizer_thread_registry.cc 
:196
#4 0x00007ffff76ab34e in __asan::FindThreadByStackAddress ( addr=addr@entry 
=140717725490360)
at../../../../src/libsanitizer/asan/asan_thread.cc :435
#5 0x00007ffff75bbf6a in __asan::GetStackAddressInformation ( addr=addr@entry 
=140717725490360,
access_size=access_size@entry =8, descr=descr@entry =0x7ffb64ffb0c0)
at../../../../src/libsanitizer/asan/asan_descriptions.cc :195
#6 0x00007ffff75bd3c9 in __asan::AddressDescription::AddressDescription ( 
shouldLockThreadRegistry =false,
access_size =8, addr =140717725490360, this =0x7ffb64ffb0b8)
at../../../../src/libsanitizer/asan/asan_descriptions.cc :454
#7 __asan::AddressDescription::AddressDescription ( this =0x7ffb64ffb0b8, addr 
=140717725490360, access_size =8,
shouldLockThreadRegistry =) 
at../../../../src/libsanitizer/asan/asan_descriptions.cc :438
#8 0x00007ffff75bfe95 in __asan::ErrorGeneric::ErrorGeneric ( this 
=0x7ffb64ffacb0, tid =,
pc_ =140737317535885, bp_ =140717707999520, sp_ =140717707999504, addr 
=140717725490360, is_write_ =false,
access_size_ =8) at../../../../src/libsanitizer/asan/asan_errors.h :31
#9 0x00007ffff76a4f4e in __asan::ReportGenericError ( pc =140737317535885, 
bp=bp@entry =140717707999520,
sp=sp@entry =140717707999504, addr =140717725490360, is_write=is_write@entry 
=false,
access_size=access_size@entry =8, exp =0, fatal =true) 
at../../../../src/libsanitizer/asan/asan_report.cc :459
#10 0x00007ffff76a5deb in __asan::__asan_report_load8 ( addr =)
at../../../../src/libsanitizer/asan/asan_rtl.cc :119
#11 0x00007ffff5d1808d in vlib_node_increment_counter ( vm =0x7fff76fb8200, 
node_index =400, counter_index =0,
increment =0) at /root/source/vpp/src/vlib/node_funcs.h :1345
#12 0x00007ffff5d30ac8 in session_queue_node_fn ( vm =0x7fff76fb8200, node 
=0x7fff75663380, frame =0x0)
at /root/source/vpp/src/vnet/session/session_node.c :2033
#13 0x00007ffff49cfa92 in dispatch_node ( vm =0x7fff76fb8200, node 
=0x7fff75663380, type =VLIB_NODE_TYPE_INPUT,
dispatch_state =VLIB_NODE_STATE_POLLING, frame =0x0, last_time_stamp 
=7560712379574)
at /root/source/vpp/src/vlib/main.c :960
#14 0x00007ffff49d3a47 in vlib_main_or_worker_loop ( vm =0x7fff76fb8200, 
is_main =0)
at /root/source/vpp/src/vlib/main.c :1557
#15 0x00007ffff49d4ced in vlib_worker_loop ( vm =0x7fff76fb8200) at 
/root/source/vpp/src/vlib/main.c :1722
#16 0x00007ffff4a3ca5c in vlib_worker_thread_fn ( arg =0x7fff733ad740) at 
/root/source/vpp/src/vlib/threads.c :1598
#17 0x00007ffff4a32aa1 in vlib_worker_thread_bootstrap_fn ( arg =0x7fff733ad740)
at /root/source/vpp/src/vlib/threads.c :418
#18 0x00007ffff4866609 in start_thread ( arg =) at pthread_create.c :477
#19 0x00007ffff4462133 in clone () at../sysdeps/unix/sysv/linux/x86_64/clone.S 
:95
(gdb)

I test that,  if I do not enable *session* module in startup.conf, but just 
enble it after vpp start success by cli: *session enable* , then everything 
goes well.
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21994): https://lists.fd.io/g/vpp-dev/message/21994
Mute This Topic: https://lists.fd.io/mt/94254287/21656
Mute #vpp-dev:https://lists.fd.io/g/vpp-dev/mutehashtag/vpp-dev
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/1480452/21656/631435203/xyzzy 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to