No, even if I do not see crashes with nvarguscamerasrc, but nvargus_nvraw still fails after even brief MIPI corruption with messages:
Jun 28 23:30:15 orin2 kernel: [RCE] VM0 deactivating.VM0 activating.ERROR: camera-ip/vi5/vi5.c:745 [vi5_handle_eof] "General error queue is out of sync with frame queue. ts=770161270944 sof
_ts=770163066144 gerror_code=2 gerror_data=400262 notify_bits=20010"
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error Timeout: Sending critical error event for Session 1
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/api/Session.cpp, function sendErrorEvent(), line 992)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Timeout!! Skipping requests on sensor GUID 1, capture sequence ID = 556 draining session frameStart events 1
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/FusaCaptureViCsiHw.cpp, function waitCsiFrameStart(), line 532)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Sensor 1 already in same state
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/CaptureServiceDeviceSensor.cpp, function setErrorState(), line 100)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Timeout!! Skipping requests on sensor GUID 1, capture sequence ID = 555 draining session frameEnd events 2
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/FusaCaptureViCsiHw.cpp, function waitCsiFrameEnd(), line 635)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: PowerServiceCore:handleRequests: timePassed = 2628
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error BadParameter: CC has already been disposed (in src/components/CaptureContainerManager.cpp, function dispose(), line 161)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Timeout!! Skipping requests on sensor GUID 1, capture sequence ID = 557 draining session frameStart events 1
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/FusaCaptureViCsiHw.cpp, function waitCsiFrameStart(), line 532)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error BadParameter: CC has already been disposed (in src/components/CaptureContainerManager.cpp, function dispose(), line 161)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error BadParameter: CC has already been disposed (in src/components/CaptureContainerManager.cpp, function dispose(), line 161)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Sensor 1 already in same state
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/CaptureServiceDeviceSensor.cpp, function setErrorState(), line 100)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Timeout!! Skipping requests on sensor GUID 1, capture sequence ID = 556 draining session frameEnd events 2
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/FusaCaptureViCsiHw.cpp, function waitCsiFrameEnd(), line 635)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error BadParameter: CC has already been disposed (in src/components/CaptureContainerManager.cpp, function dispose(), line 161)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Sensor 1 already in same state
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/CaptureServiceDeviceSensor.cpp, function setErrorState(), line 100)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error InvalidState: Timeout!! Skipping requests on sensor GUID 1, capture sequence ID = 557 draining session frameEnd events 1
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: (in src/services/capture/FusaCaptureViCsiHw.cpp, function waitCsiFrameEnd(), line 635)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: SCF: Error BadParameter: CC has already been disposed (in src/components/CaptureContainerManager.cpp, function dispose(), line 161)
Jun 28 23:30:17 orin2 nvargus-daemon[1114]: Module_id 30 Severity 2 : (fusa) Error: Timeout propagating from:/capture/src/fusaViHandler.cpp 776
Jun 28 23:30:20 orin2 nvargus-daemon[1114]: PowerServiceCore:handleRequests: timePassed = 2404
Jun 28 23:30:20 orin2 kernel: bwmgr API not supported
Note that if I read video directly from /dev/video0, then it tolerates corruption much better.
Second problem is that argus does not appear to check image CRC.
If corruption affects only pixels and not frame packet headers, then it shows corrupted image on the screen.
There must be a way to check CRC and reject corrupted frames.