millipixels segmentation faults when one camera is simply not available
When one of the cameras that are in the ini config are not available, shouldn't millipixels make the ones available that are found?
I see s5k3l6xx failing during probe() like so: https://source.puri.sm/Librem5/linux-next/-/issues/378
so millipixels says:
Adding camera big from config
matched GRBG8 to GRBG8 3
matched GRBG8 to GRBG8 3
Adding camera selfie from config
matched GBRG16 to GBRG16 14
matched GBRG16 to GBRG16 14
Found postprocessor script at /usr/share/millipixels/postprocess.sh
mp_device_list_find_remove imx7-csi s5k3l6xx 3-002d
18: there's csi, looking for s5k3l6xx 3-002d
18: there's csi capture, looking for s5k3l6xx 3-002d
18: there's imx8mq-mipi-csi2 30a70000.csi, looking for s5k3l6xx 3-002d
18: there's hi846 2-0020, looking for s5k3l6xx 3-002d
Could not find /dev/media* node matching 'imx7-csi'
mp_device_list_find_remove imx7-csi hi846 2-0020
18: there's csi, looking for hi846 2-0020
18: there's csi capture, looking for hi846 2-0020
18: there's imx8mq-mipi-csi2 30a70000.csi, looking for hi846 2-0020
18: there's hi846 2-0020, looking for hi846 2-0020
found!
devname /dev/video0
18: there's csi, looking for hi846 2-0020
18: there's csi capture, looking for hi846 2-0020
18: there's imx8mq-mipi-csi2 30a70000.csi, looking for hi846 2-0020
18: there's hi846 2-0020, looking for hi846 2-0020
found!
linking flags 0 source 15:0 sink 10:0
MPDevice: MEDIA_IOC_SETUP_LINK error 22, Invalid argument
** (sm.puri.Millipixels:2041): CRITICAL **: 10:36:26.439: mp_device_setup_link: assertion 'source_pad' failed
Setting mode 1052 780
Speicherzugriffsfehler (Speicherabzug geschrieben)
and the coredump:
PID: 2041 (millipixels)
UID: 1000 (purism)
GID: 1000 (purism)
Signal: 11 (SEGV)
Timestamp: Thu 2021-12-02 10:36:26 CET (2min 5s ago)
Command Line: millipixels
Executable: /usr/bin/millipixels
Control Group: /user.slice/user-1000.slice/session-3.scope
Unit: session-3.scope
Slice: user-1000.slice
Session: 3
Owner UID: 1000 (purism)
Boot ID: 274025135d914620a1022bb17a75d088
Machine ID: 9b43caf3619f49f8ba467ec270970f44
Hostname: pureos
Storage: /var/lib/systemd/coredump/core.millipixels.1000.274025135d914620a1022bb17a75d088.2041.1638437786000000.zst
Message: Process 2041 (millipixels) of user 1000 dumped core.
Stack trace of thread 2049:
#0 0x0000ffff9ff10250 n/a (libc.so.6 + 0x8a250)
#1 0x0000aaaac2c105e0 n/a (millipixels + 0x205e0)
#2 0x0000aaaac2c0a63c n/a (millipixels + 0x1a63c)
#3 0x0000aaaac2c0e3b4 n/a (millipixels + 0x1e3b4)
#4 0x0000aaaac2c0cb98 n/a (millipixels + 0x1cb98)
#5 0x0000ffffa036aab4 g_main_context_dispatch (libglib-2.0.so.0 + 0x53ab4)
#6 0x0000ffffa036ae5c n/a (libglib-2.0.so.0 + 0x53e5c)
#7 0x0000ffffa036b1b0 g_main_loop_run (libglib-2.0.so.0 + 0x541b0)
#8 0x0000aaaac2c0cbb4 n/a (millipixels + 0x1cbb4)
#9 0x0000ffffa0004628 start_thread (libpthread.so.0 + 0x8628)
#10 0x0000ffff9ff5c01c n/a (libc.so.6 + 0xd601c)
Stack trace of thread 2044:
#0 0x0000ffff9ff522f4 __poll (libc.so.6 + 0xcc2f4)
#1 0x0000ffffa036adf8 n/a (libglib-2.0.so.0 + 0x53df8)
#2 0x0000ffffa036af24 g_main_context_iteration (libglib-2.0.so.0 + 0x53f24)
#3 0x0000ffff9d43b344 n/a (libdconfsettings.so + 0xa344)
#4 0x0000ffffa03948f4 n/a (libglib-2.0.so.0 + 0x7d8f4)
#5 0x0000ffffa0004628 start_thread (libpthread.so.0 + 0x8628)
#6 0x0000ffff9ff5c01c n/a (libc.so.6 + 0xd601c)
Stack trace of thread 2045:
#0 0x0000ffff9ff522f4 __poll (libc.so.6 + 0xcc2f4)
#1 0x0000ffffa036adf8 n/a (libglib-2.0.so.0 + 0x53df8)
#2 0x0000ffffa036b1b0 g_main_loop_run (libglib-2.0.so.0 + 0x541b0)
#3 0x0000ffffa05f9ac4 n/a (libgio-2.0.so.0 + 0x132ac4)
#4 0x0000ffffa03948f4 n/a (libglib-2.0.so.0 + 0x7d8f4)
#5 0x0000ffffa0004628 start_thread (libpthread.so.0 + 0x8628)
#6 0x0000ffff9ff5c01c n/a (libc.so.6 + 0xd601c)
Stack trace of thread 2042:
#0 0x0000ffff9ff522f4 __poll (libc.so.6 + 0xcc2f4)
#1 0x0000ffffa036adf8 n/a (libglib-2.0.so.0 + 0x53df8)
#2 0x0000ffffa036af24 g_main_context_iteration (libglib-2.0.so.0 + 0x53f24)
#3 0x0000ffffa036af7c n/a (libglib-2.0.so.0 + 0x53f7c)
#4 0x0000ffffa03948f4 n/a (libglib-2.0.so.0 + 0x7d8f4)
#5 0x0000ffffa0004628 start_thread (libpthread.so.0 + 0x8628)
#6 0x0000ffff9ff5c01c n/a (libc.so.6 + 0xd601c)
Stack trace of thread 2047:
#0 0x0000ffff9ff522f4 __poll (libc.so.6 + 0xcc2f4)
#1 0x0000ffffa036adf8 n/a (libglib-2.0.so.0 + 0x53df8)
#2 0x0000ffffa036b1b0 g_main_loop_run (libglib-2.0.so.0 + 0x541b0)
#3 0x0000aaaac2c0cbb4 n/a (millipixels + 0x1cbb4)
#4 0x0000ffffa0004628 start_thread (libpthread.so.0 + 0x8628)
#5 0x0000ffff9ff5c01c n/a (libc.so.6 + 0xd601c)
Stack trace of thread 2041:
#0 0x0000ffffa046dc78 g_closure_new_simple (libgobject-2.0.so.0 + 0x13c78)
#1 0x0000ffffa046f3d8 g_cclosure_new (libgobject-2.0.so.0 + 0x153d8)
#2 0x0000ffffa0486e84 g_signal_connect_data (libgobject-2.0.so.0 + 0x2ce84)
#3 0x0000ffffa0c2ca20 n/a (libgtk-3.so.0 + 0x321a20)
#4 0x0000ffffa0c2cae0 n/a (libgtk-3.so.0 + 0x321ae0)
#5 0x0000ffffa048f7d0 g_type_create_instance (libgobject-2.0.so.0 + 0x357d0)
#6 0x0000ffffa0474e88 n/a (libgobject-2.0.so.0 + 0x1ae88)
#7 0x0000ffffa0476658 g_object_new_with_properties (libgobject-2.0.so.0 + 0x1c658)
#8 0x0000ffffa0476f9c g_object_new (libgobject-2.0.so.0 + 0x1cf9c)
#9 0x0000ffffa0c2cfb4 n/a (libgtk-3.so.0 + 0x321fb4)
#10 0x0000ffffa0ce5390 gtk_widget_get_style_context (libgtk-3.so.0 + 0x3da390)
#11 0x0000ffffa0b4dd48 n/a (libgtk-3.so.0 + 0x242d48)
#12 0x0000ffffa046d444 n/a (libgobject-2.0.so.0 + 0x13444)
#13 0x0000ffffa046f274 n/a (libgobject-2.0.so.0 + 0x15274)
#14 0x0000ffffa0488c34 g_signal_emit_valist (libgobject-2.0.so.0 + 0x2ec34)
#15 0x0000ffffa0488e90 g_signal_emit (libgobject-2.0.so.0 + 0x2ee90)
#16 0x0000ffffa0acabe4 n/a (libgtk-3.so.0 + 0x1bfbe4)
#17 0x0000ffffa0aae42c n/a (libgtk-3.so.0 + 0x1a342c)
#18 0x0000ffffa0aae464 n/a (libgtk-3.so.0 + 0x1a3464)
#19 0x0000ffffa0aae464 n/a (libgtk-3.so.0 + 0x1a3464)
#20 0x0000ffffa0aae464 n/a (libgtk-3.so.0 + 0x1a3464)
#21 0x0000ffffa0aae464 n/a (libgtk-3.so.0 + 0x1a3464)
#22 0x0000ffffa0aae464 n/a (libgtk-3.so.0 + 0x1a3464)
#23 0x0000ffffa0cf36b0 n/a (libgtk-3.so.0 + 0x3e86b0)
#24 0x0000ffffa046f018 g_closure_invoke (libgobject-2.0.so.0 + 0x15018)
#25 0x0000ffffa0482410 n/a (libgobject-2.0.so.0 + 0x28410)
#26 0x0000ffffa0488898 g_signal_emit_valist (libgobject-2.0.so.0 + 0x2e898)
#27 0x0000ffffa0488e90 g_signal_emit (libgobject-2.0.so.0 + 0x2ee90)
#28 0x0000ffffa0cdefb4 gtk_widget_show (libgtk-3.so.0 + 0x3d3fb4)
#29 0x0000aaaac2c05358 n/a (millipixels + 0x15358)
#30 0x0000ffff9feaa218 __libc_start_main (libc.so.6 + 0x24218)
#31 0x0000aaaac2c053e8 n/a (millipixels + 0x153e8)
#32 0x0000aaaac2c053e8 n/a (millipixels + 0x153e8)