runtime/kernel: store DMA and cache buffer on core0. #86
No reviewers
Labels
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: M-Labs/artiq-zynq#86
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "pca006132/artiq-zynq:core0-buffer"
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?
Compiles, and tested with the example DMA, need more testing.
Closes #77.
This PR also fixes the crash in #83 and memory corruption mentioned in https://github.com/m-labs/artiq/issues/1167.
However, 2 DMA tests still failed.
Do you know why it crashed before?
@ -333,6 +354,10 @@ pub fn main(timer: GlobalTimer, cfg: &config::Config) {
}
};
// initialize stores
Can't we use the const initializer? I upgraded rustc and enabled the feature for BTreeMap and it seems to work fine.
OK, my rust-analyzer did not show the initializer is const so I thought we have not updated that. Would fix.
Not sure, I guess there could be relocation happend in the BTree between getting the data and using the data which invalidates the pointer.