-
-
Notifications
You must be signed in to change notification settings - Fork 757
Port to the x86 Architecture #4385
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
Port to the x86 Architecture #4385
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is awesome!!
Note, I haven't reviewed any of the code, but the general directory structure looks good to me.
@reynoldsbd et al, are you able to maybe take a look at this? In particular, you might have the ability to test functional correctness with a downstream with more functionality elsewhere. In general, my sense is that this looks like what we would want upstream, and if it otherwise smells right (basically works and doesn't have soundness etc issues), we should merge and fix functional issues as they arise (potentially as downstream users find them when moving to this implementation). |
Co-authored-by: Brad Campbell <[email protected]>
This is awesome, thanks so much @ioanaculic for taking this closer to the finish line! :) This all looks sensible on first glance. My team is doing some internal validation as well to make sure this all continues to work on our platforms. I'll follow up once we have some results to share. cc @alevy One last topic: Apart from the x86 dependency, it's not immediately clear to me whether any of the other feedback or pending opens from the original PR have been addressed in this new PR. There was some good feedback over there and I'd hate for it to slip through the cracks. It'd also be nice to have the original PR description copied over to this one; I personally place high value on leaving a good trail in Git history, but I recognize that's not a top priority for everyone. |
We've discussed this briefly on the core call today. @reynoldsbd It seems like this already includes all of the other changes which you made on the original PR in response to feedback, and is a strict superset of the commits of that PR. Therefore, it seems easiest to reference back to #4171, perhaps take some of the original PR's description and feedback integrate it into this one, and finally push this new PR over the finish line. One of our remaining concerns is around testing these changes, especially running userspace applications, and testing the memory protection implementation. One thing that could allow us to better test these changes is if you could provide a small dummy / test application (either in source or binary form), with instructions on how to load it?
It's great to hear that you're testing these changes internally. We'd thus holding off on merging this for a couple more days, and can use that time to gather more reviews generally. |
We need to document how to get qemu. The getting started guide doesn't actually include those instructions. |
Good news, we confirmed this is all running smoothly on real silicon! @HMiyaziwala has opened a PR in the libtock-rs repo to add support for x86. That should allow you to use one of the example apps for testing. |
Done. |
…te from pc to x86_q35
eaeeec8
to
e5f144a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apart from my and @bradjc's comments, I think this is good to go.
I'm sorry, this really should be the last thing, IMO, but I added some suggested changes necessary for the documentation to compile. I can't apply those myself since I don't have push access to the branch. |
Co-authored-by: Amit Levy <[email protected]>
Co-authored-by: Amit Levy <[email protected]>
Co-authored-by: Amit Levy <[email protected]>
Thank you. I commited all the suggestions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A more 'skim' of a review; deferring largely to the this being working code and a foundation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually hitting the 'Approve' radio button this time 😬
Pull Request Overview
This pull request fixes the #4171:
x86
cratex86
structures usingtock-registers
Testing Strategy
This pull request was tested by @ioanaculic.
TODO or Help Wanted
Rebase and feeback.
I would like to get some feedback before I rebase this.
Documentation Updated
/docs
, or no updates are required.Formatting
make prepush
.