forked from project-oak/hafnium-verification
-
Notifications
You must be signed in to change notification settings - Fork 4
Oxidize Hafnium's initialization sequence (successor of #45) #52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
50 commits
Select commit
Hold shift + click to select a range
00a1f2d
Oxidize load.c and main.c
efenniht bc7ca9f
Oxidize unit test code (abi_test.cc)
efenniht 2636ccc
Remove c++ test codes and add `cargo test` in test script.
efenniht 30e6ded
Oxidize FDT
efenniht 864fa4e
Oxidize FDT (cont'd).
efenniht 8a640d8
Export C functions.
efenniht 172c40a
Format and fix to call fdt_handler::{map, unmap, patch}.
efenniht 05accd4
Remove plat.rs, since `#pragma weak` is not supported in Rust. Make s…
efenniht 77b1dc8
Refactor init, load, boot_params
efenniht d21425f
Fix wrongly ported code (!*p should be *p == 0)
efenniht c1e4486
Fix wrongly ported code (write to the given reference, and continue e…
efenniht f2fba0f
Use different constants for unit tests.
efenniht aa8020d
Resolve warnings on FDT and FDT handler.
efenniht 4d1e6a9
Make a singleton object representing MemoryManager.
efenniht 14c7d6e
rustfmt.
efenniht 4677f7c
Resolve some clippy issues.
efenniht 4b85b64
Fix mem_ranges_available to be initialized properly
efenniht fc87686
Refactor VM init sequence.
efenniht 896d267
Refactor load_secondary.
efenniht be86a72
Refactor VM init sequence. (cont'd)
efenniht 16c7781
Refactor API init sequence.
efenniht 7d75af6
Remove vm_find.
efenniht 7dbad0b
Refactor CPU init sequence.
efenniht 0a9cb50
Correct one-time initialization to run
efenniht d6b350b
Make safe wrapper functions to read singletons.
efenniht 7dac8a4
Fix Vm to know its address correctly while initialized
efenniht 54c3e18
Remove unused imports
efenniht eebc853
Resolve simple issues on the review of #45
efenniht 9e52fae
More idiomatic init of Cpu
efenniht cfdb622
Resolve simple issues on the review of #45 (cont'd)
efenniht 7fc3b7f
Fix a bug introduced from cfdb6227a98e4a13f048ef451dfa1ef9bdbdba45
efenniht 5f7a90b
Resolve simple issues on the review of #45 (cont'd)
efenniht 1f8d79a
Call one_time_init directly in hypervisor_entry, so remove INITED.
efenniht cf675b4
Remove cpu_module_init and move related statics to init.rs
efenniht 9d61512
Fix stack overflow during Vm initialization.
efenniht 7a371f5
Call arch_cpu_module_init() in init.rs
efenniht 950dd1d
Revert 1f8d79a, but call one_time_init in cpu_entry.
efenniht 7de19be
Remove singleton.rs and gather all singletons into `Hypervisor`.
efenniht 04dbdf8
Use ptr::write not to drop PageTable, and remove unnecessary stuffs.
efenniht 2c70109
Use ptr::write more.
efenniht 0180a56
Do not initialize ArchRegs when created, to prevent stack overflow.
efenniht 8de583d
Checks cpu_ids contains zero or multiple boot CPU IDs, and make a TODO.
efenniht 31b1169
Use ok_or! / unwrap_or!
efenniht 4c5395e
Revert a part of 31b1169, that was wrong.
efenniht 3d5c7c8
Make basic getters and util functions of MemIter. Remove `pub`s of me…
efenniht c02d16b
Don't call cpu_entry; just jump.
efenniht fa7b08a
Renaming unwrap_or, to some_or.
efenniht 045a5e0
Resolve simple issues on the review of #52
efenniht 9bf3363
FP-style seeking
efenniht b9d83ad
Make INITED be atomic.
efenniht File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.