Random segmentation faults on running artiq_sinara_tester #275
Labels
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: M-Labs/nac3#275
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
It only happens on startup - regardless if the device is connected or not, and usually running it again helps (or running it few times causes the SIGSEGV to pop up again). I found it happens regardless of device_db file, but I still attached one just in case.
The output I get is this:
and that's it.
I attach the device_db I've been using for this and would like to also attach the core dump file but it's bigger than 4MB limit (just ask me if you need it, I'll send it over by other means)
It's a bit weird but this line of setting up the population pass seems to be the cause of the problem:
8e6e4d6715/nac3core/src/codegen/mod.rs (L224)
Simply commenting it out solves the problem, at the expense of lesser optimization.
Replacing this line with the following, as written in the inkwell example
also will not cause segfault, and will produce more optimized code which seems still not as optimized as the current output, though.
Check the source code of
populateFunctionPassManager
in LLVM?As of
e49b760e
, no segfaults have been observed when runningartiq_sinata_tester
. I suspect the changes to improve multithreading in LLVM have addressed this issue.