Additional context
My code uses a callback to service frame buffers. I am setting priority realtime to 10, and enabling packet socket mode by running sudo setcap cap_net_raw+ep.
With the same code I do not get this error under the following conditions:
Run in standard socket mode
Note When I run with ARV_DEBUG logging enabled or in a Debug build mode this segfault becomes harder to trigger. I have to create a script to start/stop the stream continuously for hundreds of times before hitting the segfault. If I run without AVR_DEBUG logging and in an optimized build I get the segfault on every stream start.
The segfault is happening due to a null dereference of framein this line.
Stack trace of offending code:
#0 0x0000000003143899 in _find_frame_data (thread_data=0x7fb92067b000, packet=0x7fb94d6000ac, packet_size=62, frame_id=3759, packet_id=1580364, read_count=62, time_us=27579292116) at ./third-party/aravis/src/arvgvstream.c:384
#1 0x000000000314299c in _process_packet (thread_data=0x7fb92067b000, packet=0x7fb94d6000ac, packet_size=62, time_us=27579292116) at ./third-party/aravis/src/arvgvstream.c:899
#2 0x0000000003141af2 in _ring_buffer_loop (thread_data=0x7fb92067b000) at ./third-party/aravis/src/arvgvstream.c:1336
#3 0x00000000031414d8 in arv_gv_stream_thread (data=0x7fb92067b000) at ./third-party/aravis/src/arvgvstream.c:1383
#4 0x000000000341bbf7 in g_thread_proxy (data=0x7fb920608940) at gthread.c:784
#5 0x00007fb9a68b96d7 in start_thread () from /lib64/libc.so.6
#6 0x00007fb9a693d60c in clone3 () from /lib64/libc.so.6
Describe the bug When running with Packet socket mode enabled I get a segfault on stream start.
To Reproduce Run packet socket mode using a callback and get segfault on stream start.
Expected behavior Run packet socket mode using a callback without segfault
Camera description:
Platform description:
Additional context My code uses a callback to service frame buffers. I am setting priority realtime to 10, and enabling packet socket mode by running
sudo setcap cap_net_raw+ep
.With the same code I do not get this error under the following conditions:
Note When I run with ARV_DEBUG logging enabled or in a Debug build mode this segfault becomes harder to trigger. I have to create a script to start/stop the stream continuously for hundreds of times before hitting the segfault. If I run without AVR_DEBUG logging and in an optimized build I get the segfault on every stream start.
The segfault is happening due to a null dereference of
frame
in this line.Stack trace of offending code:
Info on locals showing frame being null:
Output before segfault: