600d raw_rec_task: NULL PTR

Started by mikemo, March 10, 2014, 11:49:39 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

a1ex

Committed a fix here.

I'm unable to reproduce the issue, so it's untested. Please report.

(side note: other reports for this bug can be found by searching for "null ptr" on the forum or on the issue tracker)

escho

Hmm,
I tried to force the error with the nightly from 16. Dez. 2016 on my 600D. Extra-hacks in mlv_rec, small-hacks in raw-rec are disabled. No null ptr error anymore, even without your fix.
https://sternenkarten.com/
600D, 6D, openSUSE Tumbleweed

a1ex

The reports from 2016 about this issue were on 700D, 60D, 1200D and EOS M. Not sure what causes it, but I can imagine a way to fake the issue (e.g. by creating a task named like Canon's, which modifies *(int*)0). It's a Canon bug, btw; ML simply checks for such bugs on each DryOS context switch.

The checks are not performed during raw recording, for speed reasons. Therefore, once the raw recording stops (something done from raw_rec_task), the checker notices the bug as soon as DryOS switches to another task. Therefore, the error message will report raw_rec_task as the source of the error, even if some other task did it.

The fix restores the null pointer checks during raw recording, but keeps the other (expensive) checks disabled.