c++ linking ends in segfault / Bad mode in Synchronous Abort handler detected / unhandled level 1 translation fault (11)

Hi,

i am writing a video application for the TX1.

Short fatcs:

  • usb 3.0 camera input to gstreamer v4lsrc

  • decode mjpeg via gstreamer element nvjpegdec

  • encoding to h264 with omxh264enc

  • tee the raw video stream via tee and get the frames out to opencv via a gst-appsink

  • developing on ubuntu 14.04 64bit host

  • crosscompiling with arm-linux-gnueabihf-g++

as soon as i use the libopencv_highgui things get crazy.

scenario1:

cv::Mat image(cv::Size(800, 600), CV_8UC3, (char*) frame->data, cv::Mat::AUTO_STEP);
	//cv::imwrite("/home/ubuntu/videoApp/web/default/media/image/test.png", image);

in the videoApp_ana lib. highgui not used - not linked to the main app.

ubuntu@tegra-ubuntu:~/videoApp$ ldd videoApp_main 
	linux-vdso32.so.1 =>  (0xf7467000)
	libvideoApp_config.so => /lib/libvideoApp_config.so (0xf7412000)
	libvideoApp_pipe.so => /lib/libvideoApp_pipe.so (0xf73d8000)
	libvideoApp_com.so => /lib/libvideoApp_com.so (0xf7357000)
	libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0xf728f000)
	libvideoApp_ana.so => /lib/libvideoApp_ana.so (0xf7201000)
	libgobject-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgobject-2.0.so.0 (0xf71c4000)
	libgstreamer-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstreamer-1.0.so.0 (0xf710a000)
	libgstapp-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstapp-1.0.so.0 (0xf7100000)
	libopencv_core.so.2.4 => /usr/lib/libopencv_core.so.2.4 (0xf6e94000)
	libopencv_features2d.so.2.4 => /usr/lib/libopencv_features2d.so.2.4 (0xf6e13000)
	libopencv_video.so.2.4 => /usr/lib/libopencv_video.so.2.4 (0xf6dcf000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf6d24000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf6d03000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf6c25000)
	/lib/ld-linux-armhf.so.3 (0xaac8d000)
	libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xf6c0a000)
	libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0xf6bd2000)
	librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0xf6bc3000)
	libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0xf6bb8000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf6b4c000)
	libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0xf6b3e000)
	libgmodule-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgmodule-2.0.so.0 (0xf6b33000)
	libgstbase-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstbase-1.0.so.0 (0xf6af0000)
	libcudart.so.7.0 => /usr/local/cuda-7.0/targets/armv7-linux-gnueabihf/lib/libcudart.so.7.0 (0xf6a93000)
	libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0xf6a78000)
	libtbb.so.2 => /usr/lib/libtbb.so.2 (0xf6a53000)
	libopencv_flann.so.2.4 => /usr/lib/libopencv_flann.so.2.4 (0xf6a01000)
	libopencv_imgproc.so.2.4 => /usr/lib/libopencv_imgproc.so.2.4 (0xf6794000)

scenario2:

cv::Mat image(cv::Size(800, 600), CV_8UC3, (char*) frame->data, cv::Mat::AUTO_STEP);
	cv::imwrite("/home/ubuntu/videoApp/web/default/media/image/test.png", image);

in the videoApp_ana lib. highgui used - linked in the main app.

ubuntu@tegra-ubuntu:~/videoApp$ ldd videoApp_main 
	linux-vdso32.so.1 =>  (0xf71c9000)
	libvideoApp_config.so => /lib/libvideoApp_config.so (0xf7174000)
	libvideoApp_pipe.so => /lib/libvideoApp_pipe.so (0xf713a000)
	libvideoApp_com.so => /lib/libvideoApp_com.so (0xf70b9000)
	libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0xf6ff1000)
	libvideoApp_ana.so => /lib/libvideoApp_ana.so (0xf6f63000)
	libgobject-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgobject-2.0.so.0 (0xf6f26000)
	libgstreamer-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstreamer-1.0.so.0 (0xf6e6c000)
	libgstapp-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstapp-1.0.so.0 (0xf6e62000)
	libopencv_core.so.2.4 => /usr/lib/libopencv_core.so.2.4 (0xf6bf6000)
	libopencv_highgui.so.2.4 => /usr/lib/libopencv_highgui.so.2.4 (0xf6bbd000)
	libopencv_features2d.so.2.4 => /usr/lib/libopencv_features2d.so.2.4 (0xf6b3c000)
	libopencv_video.so.2.4 => /usr/lib/libopencv_video.so.2.4 (0xf6af7000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf6a4d000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf6a2c000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf694e000)
	/lib/ld-linux-armhf.so.3 (0xaafd8000)
	libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xf6933000)
	libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0xf68fa000)
	librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0xf68ec000)
	libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0xf68e1000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf6875000)
	libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0xf6867000)
	libgmodule-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgmodule-2.0.so.0 (0xf685b000)
	libgstbase-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstbase-1.0.so.0 (0xf6819000)
	libcudart.so.7.0 => /usr/local/cuda-7.0/targets/armv7-linux-gnueabihf/lib/libcudart.so.7.0 (0xf67bc000)
	libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0xf67a1000)
	libtbb.so.2 => /usr/lib/libtbb.so.2 (0xf677c000)
	libopencv_imgproc.so.2.4 => /usr/lib/libopencv_imgproc.so.2.4 (0xf650e000)
	libjpeg.so.8 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.8 (0xf64cf000)
	libpng12.so.0 => /lib/arm-linux-gnueabihf/libpng12.so.0 (0xf64af000)
	libtiff.so.5 => /usr/lib/arm-linux-gnueabihf/libtiff.so.5 (0xf6454000)
	libjasper.so.1 => /usr/lib/arm-linux-gnueabihf/libjasper.so.1 (0xf6413000)
	libgtk-x11-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgtk-x11-2.0.so.0 (0xf614b000)
	libgdk-x11-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgdk-x11-2.0.so.0 (0xf60d1000)
	libavcodec.so.54 => /usr/lib/arm-linux-gnueabihf/neon/vfp/libavcodec.so.54 (0xf5744000)
	libavformat.so.54 => /usr/lib/arm-linux-gnueabihf/neon/vfp/libavformat.so.54 (0xf567d000)
	libavutil.so.52 => /usr/lib/arm-linux-gnueabihf/neon/vfp/libavutil.so.52 (0xf565b000)
	libswscale.so.2 => /usr/lib/arm-linux-gnueabihf/neon/vfp/libswscale.so.2 (0xf5632000)
	libopencv_flann.so.2.4 => /usr/lib/libopencv_flann.so.2.4 (0xf55e1000)
	liblzma.so.5 => /lib/arm-linux-gnueabihf/liblzma.so.5 (0xf55c1000)
	libjbig.so.0 => /usr/lib/arm-linux-gnueabihf/libjbig.so.0 (0xf55af000)
	libpangocairo-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpangocairo-1.0.so.0 (0xf559d000)
	libX11.so.6 => /usr/lib/arm-linux-gnueabihf/libX11.so.6 (0xf54b7000)
	libXfixes.so.3 => /usr/lib/arm-linux-gnueabihf/libXfixes.so.3 (0xf54ab000)
	libatk-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libatk-1.0.so.0 (0xf548d000)
	libcairo.so.2 => /usr/lib/arm-linux-gnueabihf/libcairo.so.2 (0xf53e3000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgdk_pixbuf-2.0.so.0 (0xf53c2000)
	libgio-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgio-2.0.so.0 (0xf52d7000)
	libpangoft2-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpangoft2-1.0.so.0 (0xf52c1000)
	libpango-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpango-1.0.so.0 (0xf5283000)
	libfontconfig.so.1 => /usr/lib/arm-linux-gnueabihf/libfontconfig.so.1 (0xf5254000)
	libXrender.so.1 => /usr/lib/arm-linux-gnueabihf/libXrender.so.1 (0xf5244000)
	libXinerama.so.1 => /usr/lib/arm-linux-gnueabihf/libXinerama.so.1 (0xf523a000)
	libXi.so.6 => /usr/lib/arm-linux-gnueabihf/libXi.so.6 (0xf5228000)
	libXrandr.so.2 => /usr/lib/arm-linux-gnueabihf/libXrandr.so.2 (0xf521a000)
	libXcursor.so.1 => /usr/lib/arm-linux-gnueabihf/libXcursor.so.1 (0xf520b000)
	libXcomposite.so.1 => /usr/lib/arm-linux-gnueabihf/libXcomposite.so.1 (0xf51ff000)
	libXdamage.so.1 => /usr/lib/arm-linux-gnueabihf/libXdamage.so.1 (0xf51f5000)
	libXext.so.6 => /usr/lib/arm-linux-gnueabihf/libXext.so.6 (0xf51e3000)
	libxvidcore.so.4 => /usr/lib/arm-linux-gnueabihf/libxvidcore.so.4 (0xf5106000)
	libx264.so.142 => /usr/lib/arm-linux-gnueabihf/libx264.so.142 (0xf4fd4000)
	libvpx.so.1 => /usr/lib/arm-linux-gnueabihf/vfp/neon/libvpx.so.1 (0xf4e4e000)
	libvorbisenc.so.2 => /usr/lib/arm-linux-gnueabihf/libvorbisenc.so.2 (0xf4ce1000)
	libvorbis.so.0 => /usr/lib/arm-linux-gnueabihf/libvorbis.so.0 (0xf4cb7000)
	libtheoraenc.so.1 => /usr/lib/arm-linux-gnueabihf/libtheoraenc.so.1 (0xf4c81000)
	libtheoradec.so.1 => /usr/lib/arm-linux-gnueabihf/libtheoradec.so.1 (0xf4c6a000)
	libspeex.so.1 => /usr/lib/arm-linux-gnueabihf/libspeex.so.1 (0xf4c50000)
	libschroedinger-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libschroedinger-1.0.so.0 (0xf4bbf000)
	libopus.so.0 => /usr/lib/arm-linux-gnueabihf/libopus.so.0 (0xf4b8d000)
	libopenjpeg.so.2 => /usr/lib/arm-linux-gnueabihf/libopenjpeg.so.2 (0xf4b70000)
	libmp3lame.so.0 => /usr/lib/arm-linux-gnueabihf/libmp3lame.so.0 (0xf4b03000)
	libgsm.so.1 => /usr/lib/arm-linux-gnueabihf/libgsm.so.1 (0xf4af1000)
	libva.so.1 => /usr/lib/arm-linux-gnueabihf/libva.so.1 (0xf4ad9000)
	librtmp.so.0 => /usr/lib/arm-linux-gnueabihf/librtmp.so.0 (0xf4abf000)
	libgnutls.so.26 => /usr/lib/arm-linux-gnueabihf/libgnutls.so.26 (0xf4a39000)
	libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0xf4a25000)
	libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0xf49bd000)
	libxcb.so.1 => /usr/lib/arm-linux-gnueabihf/libxcb.so.1 (0xf49a3000)
	libpixman-1.so.0 => /usr/lib/arm-linux-gnueabihf/libpixman-1.so.0 (0xf4925000)
	libxcb-shm.so.0 => /usr/lib/arm-linux-gnueabihf/libxcb-shm.so.0 (0xf491a000)
	libxcb-render.so.0 => /usr/lib/arm-linux-gnueabihf/libxcb-render.so.0 (0xf490c000)
	libselinux.so.1 => /lib/arm-linux-gnueabihf/libselinux.so.1 (0xf48ed000)
	libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0xf48d5000)
	libharfbuzz.so.0 => /usr/lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0xf4894000)
	libthai.so.0 => /usr/lib/arm-linux-gnueabihf/libthai.so.0 (0xf4886000)
	libexpat.so.1 => /lib/arm-linux-gnueabihf/libexpat.so.1 (0xf4866000)
	libogg.so.0 => /usr/lib/arm-linux-gnueabihf/libogg.so.0 (0xf4858000)
	liborc-0.4.so.0 => /usr/lib/arm-linux-gnueabihf/liborc-0.4.so.0 (0xf4800000)
	libgcrypt.so.11 => /lib/arm-linux-gnueabihf/libgcrypt.so.11 (0xf479c000)
	libtasn1.so.6 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.6 (0xf4788000)
	libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0xf4759000)
	libXau.so.6 => /usr/lib/arm-linux-gnueabihf/libXau.so.6 (0xf474e000)
	libXdmcp.so.6 => /usr/lib/arm-linux-gnueabihf/libXdmcp.so.6 (0xf4742000)
	libgraphite2.so.3 => /usr/lib/arm-linux-gnueabihf/libgraphite2.so.3 (0xf4724000)
	libdatrie.so.1 => /usr/lib/arm-linux-gnueabihf/libdatrie.so.1 (0xf4718000)
	libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0xf470b000)

both compiled and linked with the same commands:

arm-linux-gnueabihf-g++ -pthread -std=c++11 -g -I/usr/include/gstreamer-1.0 -I"/home/user/cuda-workspace/videoApp_config/inih" -I/home/user/nvidia/jetpack_2.1/TX1/Linux_for_Tegra_tx1/rootfs/usr/lib/arm-linux-gnueabihf/glib-2.0 -I/usr/include/gstreamer-1.0/gst -I/usr/include/glib-2.0 -I/home/user/cuda-workspace/videoApp_com/src -I/home/user/cuda-workspace/videoApp_pipe/src -I/home/user/cuda-workspace/videoApp_config/src -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/videoApp_main.d" -MT"src/videoApp_main.d" -o "src/videoApp_main.o" "../src/videoApp_main.cpp"
arm-linux-gnueabihf-g++ -pthread -L/home/user/cuda-workspace/videoApp_ana/Debug -L/home/user/cuda-workspace/videoApp_com/Debug -L/home/user/nvidia/jetpack_2.1/TX1/Linux_for_Tegra_tx1/rootfs/usr/lib/arm-linux-gnueabihf -L/home/user/nvidia/jetpack_2.1/TX1/Linux_for_Tegra_tx1/rootfs/lib/arm-linux-gnueabihf -L/home/user/cuda-workspace/videoApp_pipe/Debug -L/home/user/cuda-workspace/videoApp_config/Debug -o "videoApp_main"  ./src/videoApp_main.o   -lvideoApp_config -lvideoApp_pipe -lvideoApp_com -lglib-2.0 -lvideoApp_ana -lffi -lpcre -lgobject-2.0 -lgmodule-2.0 -lgstreamer-1.0 -lgstapp-1.0 -lgstbase-1.0 -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_features2d -lopencv_video -lcudart -lz -ltbb -ljpeg -lpng12 -ltiff -ljasper -lgtk-x11-2.0 -lgdk-x11-2.0 -lavcodec -lavformat -lavutil -lswscale -lopencv_flann -llzma -ljbig -lpangocairo-1.0 -lX11 -lXfixes -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXext -lxvidcore -lx264 -lvpx -lvorbisenc -lvorbis -ltheoraenc -ltheoradec -lspeex -lschroedinger-1.0 -lopus -lopenjpeg -lmp3lame -lgsm -lva -lrtmp -lgnutls -lbz2 -lXrender -lfreetype -lxcb -lpixman-1 -lxcb-shm -lxcb-render -lselinux -lharfbuzz -lthai -lexpat -logg -lorc-0.4 -lgcrypt -ltasn1 -lp11-kit -lXau -lXdmcp -lgraphite2 -ldatrie -lgpg-error

i have done the linking on the TX1 too -> same results.

now i have my video pipeline in the videoApp_pipe lib. when the highgui things are not linked everything runs as expected. video is send via udp as expected when i start the pipeline. as soon as the highgui libs are linked to the videoApp_main things get a little out of control. i get different results when i try to start the video pipeline:

a “clean” segfault:

[   16.948774] pgd = ffffffc0ef9ae000
[   16.952214] [49ea7516] *pgd=0000000000000000
[   16.956643] Library at 0x49ea7516: 0xf2d84000 /usr/lib/arm-linux-gnueabihf/tegra/libnvdc.so
[   16.965036] Library at 0x49ea7517: 0xf2d84000 /usr/lib/arm-linux-gnueabihf/tegra/libnvdc.so
[   16.973505] vdso base = 0xf7607000

a not so clean ending:

ubuntu@tegra-ubuntu:~$ [   52.726688] Bad mode in Synchronous Abort handler detected, code 0x8a000000
[   52.733654] CPU: 1 PID: 1415 Comm: videoApp_main Not tainted 3.10.67-g458d45c #1
[   52.741042] task: ffffffc0f0096b80 ti: ffffffc0eca20000 task.ti: ffffffc0eca20000
[   52.748517] PC is at 0xc2e789ae
[   52.751656] LR is at 0xc2e789ae
[   52.754795] pc : [<00000000c2e789ae>] lr : [<00000000c2e789ae>] pstate: 40000010
[   52.762180] sp : 00000000c2e789ae
[   52.765490] x12: 00000000f3d1e9f8 
[   52.768900] x11: 0000000000000000 x10: 0000000000000000 
[   52.774229] x9 : 0000000000000000 x8 : 0000000000000000 
[   52.779559] x7 : 0000000000000000 x6 : 0000000000000000 
[   52.784889] x5 : 0000000000000000 x4 : 0000000000000000 
[   52.790218] x3 : 0000000000000000 x2 : 00000000000000b4 
[   52.795548] x1 : 000000000007b0d6 x0 : 0000000000000001 
[   52.800876] 
[   52.802373] Bad mode in Synchronous Abort handler detected, code 0x86000007
[   52.809326] CPU: 1 PID: 1415 Comm: videoApp_main Not tainted 3.10.67-g458d45c #1
[   52.816712] task: ffffffc0f0096b80 ti: ffffffc0eca20000 task.ti: ffffffc0eca20000
[   52.824183] PC is at 0x0
[   52.826712] LR is at 0x0
[   52.829243] pc : [<0000000000000000>] lr : [<0000000000000000>] pstate: 800003c5
[   52.836626] sp : ffffffc0eca23ed0
[   52.839935] x29: 0000000000000000 x28: 0000000000000000 
[   52.845264] x27: 0000000000000000 x26: ffffffc000085204 
[   52.850593] x25: 000000008a000000 x24: 0000000000000022 
[   52.855922] x23: 0000000040000010 x22: 00000000c2e789ae 
[   52.861251] x21: ffffffffffffffff x20: 0000000000000000 
[   52.866581] x19: 0000000000000000 x18: 0000000000000000 
[   52.871911] x17: 0000000000000000 x16: 000000000000000a 
[   52.877238] x15: 0000000000000020 x14: 000000000000005d 
[   52.882566] x13: 0000000000000036 x12: 0000000000000037 
[   52.887895] x11: 0000000000000038 x10: 0000000000000030 
[   52.893223] x9 : 0000000000000030 x8 : 0000000000000006 
[   52.898553] x7 : ffffffc0002b6278 x6 : ffffffc001133328 
[   52.903881] x5 : 0000000000000e49 x4 : 00000000000003c0 
[   52.909211] x3 : 0000000000000000 x2 : ffffffc0000bb2c8 
[   52.914540] x1 : ffffffc0eca20000 x0 : 0000000000000000 
[   52.919869] 
[   52.919869] SP: 0xffffffc0eca23e50:
[   52.924826] 3e50  00000000 00000000 ffffffff ffffffff c2e789ae 00000000 40000010 00000000
[   52.933111] 3e70  00000022 00000000 8a000000 00000000 00085204 ffffffc0 00000000 00000000
[   52.941394] 3e90  00000000 00000000 00000000 00000000 00000000 00000000 eca23ed0 ffffffc0
[   52.949673] 3eb0  00000000 00000000 800003c5 00000000 f695caa1 00000000 00000000 00000000
[   52.957953] 3ed0  00000001 00000000 0007b0d6 00000000 000000b4 00000000 00000000 00000000
[   52.966234] 3ef0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   52.974515] 3f10  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   52.982795] 3f30  f3d1e9f8 00000000 c2e789ae 00000000 c2e789ae 00000000 00000000 00000000
[   52.991076] 
[   52.991076] X1: 0xffffffc0eca1ff80:
[   52.996033] ff80  0000001c bc2befa0 00000000 87c063c0 56de0d1a 14532fa0 00000000 00000000
[   53.004315] ffa0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.012594] ffc0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.020876] ffe0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.029158] 0000  00400001 00000000 ffffffff ffffffff f0096b80 ffffffc0 011199e0 ffffffc0
[   53.037438] 0020  000bc830 ffffffc0 00000000 00000000 00000000 00000000 00000000 00000000
[   53.045719] 0040  00000000 00000000 00000000 00000000 00000001 00000001 00000100 00000000
[   53.054001] 0060  57ac6e9d 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.062282] 
[   53.062282] X2: 0xffffffc0000bb248:
[   53.067240] b248  8b010294 f9445662 9ac02442 12000042 f85e8281 f100043f 1a9f17e3 2a030043
[   53.075521] b268  34000143 f81e829f 34000142 d2800021 9ac02020 f9445661 8a200020 f9045660
[   53.083803] b288  aa1303e0 97fffb70 f85e8280 b50000a0 f9444e61 b9406c20 12197800 b9006c20
[   53.092085] b2a8  2a1503e0 aa1703e1 aa1303e2 97fffd67 2a0003f4 f9445260 91202000 aa1603e1
[   53.100367] b2c8  9427ccda 2a1403e0 a94153f3 a9425bf5 f9401bf7 a8c47bfd d65f03c0 a9bf7bfd
[   53.108648] b2e8  910003fd aa0103e2 d2800021 97ffffc6 a8c17bfd d65f03c0 a9bb7bfd 910003fd
[   53.116927] b308  a90153f3 a9025bf5 a90363f7 aa0003f6 f9444c00 b900681f aa1603f3 52800015
[   53.125207] b328  52a00357 52801018 1400000d aa1303e0 2a1703e1 97fffa2a 110006b5 b8534282
[   53.133489] 
[   53.133489] X6: 0xffffffc0011332a8:
[   53.138448] 32a8  ff065280 ffffffc0 00000000 00000000 f6000000 00000000 00200000 00000000
[   53.146730] 32c8  00000000 00000000 00010000 00000000 00080000 00000000 00000000 00000000
[   53.155013] 32e8  00080000 00000000 00000000 00000000 00000001 00000000 00000000 00000000
[   53.163294] 3308  00000000 00000010 00000001 00000003 00000002 00000001 00000001 00000001
[   53.171573] 3328  00000000 00000000 00f2f798 ffffffc0 04b804b8 00000000 ff130000 ffffffc0
[   53.179856] 3348  00010000 00000000 ff8260c0 ffffffc0 00000001 00000000 01133360 ffffffc0
[   53.188138] 3368  01133360 ffffffc0 00000000 00000000 00000000 00000000 002b611c ffffffc0
[   53.196418] 3388  00000000 00000000 002b654c ffffffc0 002b5814 ffffffc0 002b6278 ffffffc0
[   53.204700] 
[   53.204700] X7: 0xffffffc0002b61f8:
[   53.209658] 61f8  b00063c1 91128021 f9401ba2 cb84fc63 940141ac aa0003f3 b50001a0 b0007e20
[   53.217941] 6218  39559000 d2800014 35000160 b00063c0 9112c000 52801cc1 97f7bcd5 52800021
[   53.226222] 6238  b0007e20 39159001 14000003 94012bcc aa0003f4 aa1503e0 aa1303e1 2a1403e2
[   53.234502] 6258  94000561 aa1303e0 97fb5cb5 aa1403e0 a94153f3 f94013f5 a8c47bfd d65f03c0
[   53.242785] 6278  a9bd7bfd 910003fd a90153f3 a9025bf5 aa0403f5 aa0503f4 f94044d3 7100081f
[   53.251067] 6298  54000101 f9400660 b4000820 aa0403e1 2a0503e2 9400054c 52800000 1400004d
[   53.259347] 62b8  71000c1f 54000101 f9400a60 b4000740 aa0403e1 2a0503e2 94000543 52800000
[   53.267628] 62d8  14000044 7100101f 54000101 f9400e60 b4000660 aa0403e1 2a0503e2 9400053a
[   53.275911] 
[   53.275911] X26: 0xffffffc000085184:
[   53.280956] 5184  aa1903e1 910003e2 17fff013 d5386000 d5300241 927ff821 d5100241 d5033fdf
[   53.289240] 51a4  d50348ff d50342ff b2680321 910003e2 17fff009 aa1903e0 910003e1 14000330
[   53.297521] 51c4  aa1903e0 910003e1 14000335 d5386000 d5300241 927ff821 d5100241 d5033fdf
[   53.305805] 51e4  d50348ff d50342ff aa1903e1 910003e2 17fff01f 910003e0 d50342ff 17ffef80
[   53.314084] 5204  37000118 d5386000 d5300241 927ff821 d5100241 aa1903e1 910003e2 17fff025
[   53.322366] 5224  910003e0 d2800001 d5385202 140013eb d503201f d503201f d503201f d10483ff
[   53.330647] 5244  a90007e0 a9010fe2 a90217e4 a9031fe6 a90427e8 a9052fea a90637ec a9073fee
[   53.338926] 5264  a90847f0 a9094ff2 a90a57f4 a90b5ff6 a90c67f8 a90d6ffa a90e77fc d5384115
[   53.347206] 
[   53.348700] Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP
[   53.354610] Enter nvdumper_crash_setup_regs
[   53.358831] nvdumper: all registers are saved.
[   53.358838] nvdumper: all registers are saved.
[   53.358846] nvdumper: all registers are saved.
[   53.372135] nvdumper: all registers are saved.
[   53.376574] Modules linked in: rfcomm bcmdhd bnep cfg80211 nvhost_vi bluedroid_pm
[   53.384133] CPU: 1 PID: 1415 Comm: videoApp_main Not tainted 3.10.67-g458d45c #1
[   53.391516] task: ffffffc0f0096b80 ti: ffffffc0eca20000 task.ti: ffffffc0eca20000
[   53.398987] PC is at 0x0
[   53.401516] LR is at 0x0
[   53.404045] pc : [<0000000000000000>] lr : [<0000000000000000>] pstate: 800003c5
[   53.411427] sp : ffffffc0eca23ed0
[   53.414734] x29: 0000000000000000 x28: 0000000000000000 
[   53.420057] x27: 0000000000000000 x26: ffffffc000085204 
[   53.425381] x25: 000000008a000000 x24: 0000000000000022 
[   53.430704] x23: 0000000040000010 x22: 00000000c2e789ae 
[   53.436027] x21: ffffffffffffffff x20: 0000000000000000 
[   53.441351] x19: 0000000000000000 x18: 0000000000000000 
[   53.446674] x17: 0000000000000000 x16: 000000000000000a 
[   53.451996] x15: 0000000000000020 x14: 000000000000005d 
[   53.457319] x13: 0000000000000036 x12: 0000000000000037 
[   53.462640] x11: 0000000000000038 x10: 0000000000000030 
[   53.467964] x9 : 0000000000000030 x8 : 0000000000000006 
[   53.473286] x7 : ffffffc0002b6278 x6 : ffffffc001133328 
[   53.478609] x5 : 0000000000000e49 x4 : 00000000000003c0 
[   53.483932] x3 : 0000000000000000 x2 : ffffffc0000bb2c8 
[   53.489254] x1 : ffffffc0eca20000 x0 : 0000000000000000 
[   53.494578] 
[   53.494578] SP: 0xffffffc0eca23e50:
[   53.499532] 3e50  00000000 00000000 ffffffff ffffffff c2e789ae 00000000 40000010 00000000
[   53.507795] 3e70  00000022 00000000 8a000000 00000000 00085204 ffffffc0 00000000 00000000
[   53.516053] 3e90  00000000 00000000 00000000 00000000 00000000 00000000 eca23ed0 ffffffc0
[   53.524313] 3eb0  00000000 00000000 800003c5 00000000 f695caa1 00000000 00000000 00000000
[   53.532572] 3ed0  00000001 00000000 0007b0d6 00000000 000000b4 00000000 00000000 00000000
[   53.540832] 3ef0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.549092] 3f10  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.557351] 3f30  f3d1e9f8 00000000 c2e789ae 00000000 c2e789ae 00000000 00000000 00000000
[   53.565613] 
[   53.565613] X1: 0xffffffc0eca1ff80:
[   53.570568] ff80  0000001c bc2befa0 00000000 87c063c0 56de0d1a 14532fa0 00000000 00000000
[   53.578829] ffa0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.587092] ffc0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.595353] ffe0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.603613] 0000  00400001 00000000 ffffffff ffffffff f0096b80 ffffffc0 011199e0 ffffffc0
[   53.611875] 0020  000bc830 ffffffc0 00000000 00000000 00000000 00000000 00000000 00000000
[   53.620138] 0040  00000000 00000000 00000000 00000000 00000002 00000001 00000100 00000000
[   53.628395] 0060  57ac6e9d 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.636657] 
[   53.636657] X2: 0xffffffc0000bb248:
[   53.641613] b248  8b010294 f9445662 9ac02442 12000042 f85e8281 f100043f 1a9f17e3 2a030043
[   53.649871] b268  34000143 f81e829f 34000142 d2800021 9ac02020 f9445661 8a200020 f9045660
[   53.658132] b288  aa1303e0 97fffb70 f85e8280 b50000a0 f9444e61 b9406c20 12197800 b9006c20
[   53.666394] b2a8  2a1503e0 aa1703e1 aa1303e2 97fffd67 2a0003f4 f9445260 91202000 aa1603e1
[   53.674657] b2c8  9427ccda 2a1403e0 a94153f3 a9425bf5 f9401bf7 a8c47bfd d65f03c0 a9bf7bfd
[   53.682917] b2e8  910003fd aa0103e2 d2800021 97ffffc6 a8c17bfd d65f03c0 a9bb7bfd 910003fd
[   53.691180] b308  a90153f3 a9025bf5 a90363f7 aa0003f6 f9444c00 b900681f aa1603f3 52800015
[   53.699439] b328  52a00357 52801018 1400000d aa1303e0 2a1703e1 97fffa2a 110006b5 b8534282
[   53.707701] 
[   53.707701] X6: 0xffffffc0011332a8:
[   53.712655] 32a8  ff065280 ffffffc0 00000000 00000000 f6000000 00000000 00200000 00000000
[   53.720914] 32c8  00000000 00000000 00010000 00000000 00080000 00000000 00000000 00000000
[   53.729172] 32e8  00080000 00000000 00000000 00000000 00000001 00000000 00000000 00000000
[   53.737433] 3308  00000000 00000010 00000001 00000003 00000002 00000001 00000001 00000001
[   53.745691] 3328  00000000 00000000 00f2f798 ffffffc0 06e006e0 00000000 ff130000 ffffffc0
[   53.753954] 3348  00010000 00000000 ff8260c0 ffffffc0 00000001 00000000 01133360 ffffffc0
[   53.762214] 3368  01133360 ffffffc0 00000000 00000000 00000000 00000000 002b611c ffffffc0
[   53.770475] 3388  00000000 00000000 002b654c ffffffc0 002b5814 ffffffc0 002b6278 ffffffc0
[   53.778734] 
[   53.778734] X7: 0xffffffc0002b61f8:
[   53.783689] 61f8  b00063c1 91128021 f9401ba2 cb84fc63 940141ac aa0003f3 b50001a0 b0007e20
[   53.791950] 6218  39559000 d2800014 35000160 b00063c0 9112c000 52801cc1 97f7bcd5 52800021
[   53.800209] 6238  b0007e20 39159001 14000003 94012bcc aa0003f4 aa1503e0 aa1303e1 2a1403e2
[   53.808468] 6258  94000561 aa1303e0 97fb5cb5 aa1403e0 a94153f3 f94013f5 a8c47bfd d65f03c0
[   53.816729] 6278  a9bd7bfd 910003fd a90153f3 a9025bf5 aa0403f5 aa0503f4 f94044d3 7100081f
[   53.824989] 6298  54000101 f9400660 b4000820 aa0403e1 2a0503e2 9400054c 52800000 1400004d
[   53.833251] 62b8  71000c1f 54000101 f9400a60 b4000740 aa0403e1 2a0503e2 94000543 52800000
[   53.841512] 62d8  14000044 7100101f 54000101 f9400e60 b4000660 aa0403e1 2a0503e2 9400053a
[   53.849780] 
[   53.849780] X26: 0xffffffc000085184:
[   53.854822] 5184  aa1903e1 910003e2 17fff013 d5386000 d5300241 927ff821 d5100241 d5033fdf
[   53.863083] 51a4  d50348ff d50342ff b2680321 910003e2 17fff009 aa1903e0 910003e1 14000330
[   53.871342] 51c4  aa1903e0 910003e1 14000335 d5386000 d5300241 927ff821 d5100241 d5033fdf
[   53.879601] 51e4  d50348ff d50342ff aa1903e1 910003e2 17fff01f 910003e0 d50342ff 17ffef80
[   53.887860] 5204  37000118 d5386000 d5300241 927ff821 d5100241 aa1903e1 910003e2 17fff025
[   53.896120] 5224  910003e0 d2800001 d5385202 140013eb d503201f d503201f d503201f d10483ff
[   53.904381] 5244  a90007e0 a9010fe2 a90217e4 a9031fe6 a90427e8 a9052fea a90637ec a9073fee
[   53.912641] 5264  a90847f0 a9094ff2 a90a57f4 a90b5ff6 a90c67f8 a90d6ffa a90e77fc d5384115
[   53.920905] 
[   53.922395] Process videoApp_main (pid: 1415, stack limit = 0xffffffc0eca20060)
[   53.929692] Stack: (0xffffffc0eca23ed0 to 0xffffffc0eca24000)
[   53.935428] 3ec0:                                     00000001 00000000 0007b0d6 00000000
[   53.943593] 3ee0: 000000b4 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.951758] 3f00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.959921] 3f20: 00000000 00000000 00000000 00000000 f3d1e9f8 00000000 c2e789ae 00000000
[   53.968084] 3f40: c2e789ae 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.976249] 3f60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.984410] 3f80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   53.992573] 3fa0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[   54.000735] 3fc0: 00000000 00000000 00000000 00000000 c2e789ae 00000000 40000010 00000000
[   54.008898] 3fe0: 0000000b 00000000 ffffffff ffffffff 001498e8 0014cee8 001118a0 00000051
[   54.017060] Call trace:
[   54.019503] Code: bad PC value
[   54.022619] ---[ end trace 7e3f45eeefe61575 ]---

or a bad ending:

videoApp_main[2038]: unhandled level 1 translation fault (11) at 0xa2588eb8, esr 0x83000005
[ 1104.705978] pgd = ffffffc0f232a000
[ 1104.709378] [a2588eb8] *pgd=0000000000000000
[ 1104.713663] 
[ 1104.715154] CPU: 2 PID: 2038 Comm: videoApp_main Tainted: G      D      3.10.67-g458d45c #1
[ 1104.723522] task: ffffffc0e9ca2b00 ti: ffffffc0e9c84000 task.ti: ffffffc0e9c84000
[ 1104.731008] PC is at 0xa2588eb8
[ 1104.734144] LR is at 0xa2588eb9
[ 1104.737280] pc : [<00000000a2588eb8>] lr : [<00000000a2588eb9>] pstate: 40000030
[ 1104.744670] sp : 00000000a2588eb9
[ 1104.747978] x12: 00000000f3f1e9f8 
[ 1104.751396] x11: 0000000000000000 x10: 0000000000000000 
[ 1104.756721] x9 : 0000000000000000 x8 : 0000000000000000 
[ 1104.762201] x7 : 0000000000000000 x6 : 0000000000000000 
[ 1104.767524] x5 : 0000000000000000 x4 : 0000000000000000 
[ 1104.772858] x3 : 0000000000000000 x2 : 00000000000000b4 
[ 1104.778181] x1 : 000000000007b0d6 x0 : 0000000000000001 
[ 1104.783514] 
[ 1104.785007] Library at 0xa2588eb8: 0xf2baa000 /usr/lib/arm-linux-gnueabihf/tegra/libnvdc.so
[ 1104.793355] Library at 0xa2588eb9: 0xf2baa000 /usr/lib/arm-linux-gnueabihf/tegra/libnvdc.so
[ 1104.801701] vdso base = 0xf72b9000

these events occur randomly while performing the same actions. mostly the segfault but the other two are not single events.

i could break down the error to this code in the videoApp_pipe lib:

]if ((decoder = gst_element_factory_make("nvjpegdec", "decoder")) == NULL) {
		LOG_DEBUG("TTSimpleDynamicPipeline::init() failed. Error with gst_element_factory_make('nvjpegdec')");
		status = ERROR;
		return ERROR;
	}

the code doesn’t reach the point where the highgui lib would be used at all. something goes terribly wrong.

i am quite sure that the error is in the process of linking the libs, sure that it is on my side. am i linking a wrong lib? a wrong version of the libs? what makes me wondering is that the same problem occurs when i am linking on the TX1 directly and not on the 14.04 host.

any help is welcome. if someone needs more information - please ask for it.

thanks!

edit:

some more info about what is linked:

ubuntu@tegra-ubuntu:/lib$ ldd libvideoApp_ana.so 
	linux-vdso32.so.1 =>  (0xf7193000)
	librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0xf70d9000)
	libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xf70bd000)
	libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0xf70b2000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf7008000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf6f9c000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf6f7b000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf6e9c000)
	/lib/ld-linux-armhf.so.3 (0xaad83000)
ubuntu@tegra-ubuntu:/lib$ ldd libvideoApp_pipe.so 
	linux-vdso32.so.1 =>  (0xf7601000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf7500000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf74de000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf7400000)
	/lib/ld-linux-armhf.so.3 (0xaadb3000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf7394000)
ubuntu@tegra-ubuntu:/lib$ ldd libvideoApp_com.so 
	linux-vdso32.so.1 =>  (0xf74e1000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf7398000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf7376000)
	libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xf735b000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf727d000)
	/lib/ld-linux-armhf.so.3 (0xaaad6000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf7211000)
ubuntu@tegra-ubuntu:/lib$ ldd libvideoApp_config.so 
	linux-vdso32.so.1 =>  (0xf7397000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xf7298000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xf7276000)
	libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xf725b000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xf717d000)
	/lib/ld-linux-armhf.so.3 (0xaae9f000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xf7111000)
ubuntu@tegra-ubuntu:/lib$

what i can confirm:
the header files used for compiling have the same hash as the ones on the TX1.

what i think is strange is that i cannot get a clear error event that i can produce. i can reproduce the source of the error (the linking of opencv_highgui) but the error it self varys :/

This should probably be moved to the JTX1 forum. The current forum is JTK1.

This is only an observation, I don’t expect it will provide any solution (it might provide more questions though). There is a mix of 32-bit registers and 64-bit registers mentioned in the OOPS. Building is with the armhf tools, so I am going to guess you are using the 32-bit user space sample rootfs (maybe R23.1 or R23.2?). If you are not bound to 32-bit for some reason out of your control, you might try the same thing under R24.2. Is it possible to try under R24.2 using native compile with 64-bit? This would possibly simplify things (or even fix the issue…cross compiling means there is a risk of host environment linker and other libraries not matching the Jetson even if headers match).

Yes, you are right, wrong forum. sorry. @mods: please move to TX1 - it was late yesterday…

yeah - moving to the 64bit rootfs is the way to go i think too. i stick with the 32bit rootfs so far because there is no prebuild libowfat for aarch64 ubuntu 1604 - and so gatling is missing (thats just pain in the ass - can compile it on my own…).

perhaps i will move to completely compiling it on the TX1 to get rid of all possibilities…