Tracker segmentation fault when linking to libyaml-cpp

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)
dGPU (x86)
• DeepStream Version
6.0
• JetPack Version (valid for Jetson only)
• TensorRT Version
8.2.4.1
• NVIDIA GPU Driver Version (valid for GPU only)
1050
• Issue Type( questions, new requirements, bugs)
Bug
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
If I link my app with libyaml-cpp libnvds_nvmultiobjecttracker.so crashes when loading. This only happens when using DeepStream 6.0 on x86. It works fine on Jetson DeepStream 6.0. Doesn’t not happen on Jetson nor x86 for 6.1 (where DeepStream already depend on libyaml-cpp).

• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

gdb backtrace

gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so

Thread 23 "app" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffb443a700 (LWP 9382)]
0x00007fffb2f396f9 in NvMOT_Query () from /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
(gdb) bt
#0  0x00007fffb2f396f9 in NvMOT_Query () at /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
#1  0x00007fffb6939cb4 in NvTrackerProc::initTrackerLib() () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so
#2  0x00007fffb6938a94 in NvTrackerProc::init(TrackerConfig const&) () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so
#3  0x00007fffb693369e in gst_nv_tracker_start(_GstBaseTransform*) () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so

Sorry for the inconvenience. As DeepStream has upgraded to 6.1, can you migrate your program to version 6.1?

No, because we have 100s of Jetson Nanos deployed in the field and NVIDIA decided stop supporting Nano we’re stuck with 6.0 for the foreseeable future.

dose deepstream native samples have this issue? could you help to check if it is related to libyaml-cpp version?

Hi fanzh, yes I can reproduce it in the native app. I made deepstream-test2-app depend on yaml-cpp and use the IoU tracker config:

gdb --args ./deepstream-test2-app /opt/nvidia/deepstream/deepstream/samples/streams/sample_1080p_h264.mp4
...
gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so

Thread 1 "deepstream-test" received signal SIGSEGV, Segmentation fault.
0x00007fff80e7e6f9 in NvMOT_Query () from /opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
(gdb) bt 10
#0  0x00007fff80e7e6f9 in NvMOT_Query () at /opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
#1  0x00007fff951b0cb4 in NvTrackerProc::initTrackerLib() () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so
#2  0x00007fff951afa94 in NvTrackerProc::init(TrackerConfig const&) () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so
#3  0x00007fff951aa69e in gst_nv_tracker_start(_GstBaseTransform*) () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_tracker.so
#4  0x00007fffecdce270 in  () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#5  0x00007fffecdce505 in  () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#6  0x00007ffff7b126ab in  () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#7  0x00007ffff7b13126 in gst_pad_set_active () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#8  0x00007ffff7af0f0d in  () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#9  0x00007ffff7b03884 in gst_iterator_fold () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#10 0x00007ffff7af1a16 in  () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
$ ldd deepstream-test2-app 
	linux-vdso.so.1 (0x00007ffdbb5b4000)
	libgstreamer-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x00007fae16a5f000)
	libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fae1680b000)
	libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fae164f4000)
	libyaml-cpp.so.0.5 => /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.5 (0x00007fae1627a000)
	libcudart.so.11.0 => /usr/local/cuda/targets/x86_64-linux/lib/libcudart.so.11.0 (0x00007fae15fd8000)
	libnvdsgst_meta.so => /opt/nvidia/deepstream/deepstream-6.0/lib/libnvdsgst_meta.so (0x00007fae15dd3000)
	libnvds_meta.so => /opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_meta.so (0x00007fae15bc9000)
	libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fae15840000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fae15628000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fae15237000)
	libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007fae15033000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fae14c95000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fae14a8d000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fae14889000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fae1466a000)
	libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fae14462000)
	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fae141f1000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fae16faa000)
  1. can you workaround this issue by using txt parsing or other methods, or please ask after-sales for providing a fix patch.

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.