Skip to content
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

Merge branch 'master' into next #280

Merged
merged 37 commits into from
Aug 2, 2021
Merged

Merge branch 'master' into next #280

merged 37 commits into from
Aug 2, 2021

Conversation

josephlr
Copy link
Contributor

The only complex file to merge was src/structures/idt.rs take a look if you're concerned.

Signed-off-by: Joe Richey [email protected]

josephlr and others added 27 commits May 29, 2021 23:31
Signed-off-by: Joe Richey <[email protected]>
This function only throws a #UD, which we generally consider to be safe.
Also, add an `Exceptions` section to the `Segment64` docs (this is
similar to the `Panic` section in normal Rust docs).

Signed-off-by: Joe Richey <[email protected]>
Signed-off-by: Joe Richey <[email protected]>
Add common abstractions for x86 Segments
This ensures that the arguments are passed by RDI, RSI, RDX, RCX, etc.
This PR makes the `idt` module available for use in the stable Rust with the `instructions` feature.

Especially, this PR
- exposes `Entry::set_handler_addr` as an unsafe method. This is the only way for the users of this crate who build it with the stable Rust to set the addresses of the interrupt or exception handlers.
- defines the handler function types as `()` if the `abi_x86_interrupt` feature is not enabled. These types are only used with the `abi_x86_interrupt` feature.

Co-authored-by: Philipp Oppermann <[email protected]>
We use our poor-man's assert instead of trying to do math.

Signed-off-by: Joe Richey <[email protected]>
Alos, add extra checks when writing to XCR0.

Signed-off-by: Ethin Probst <[email protected]>
Signed-off-by: Joe Richey <[email protected]>
This avoids getting a #GP when writing.

Signed-off-by: Joe Richey <[email protected]>
We can't make VirtAddr and PhysAddr methods const as they wrap an into
impl.
Make align_up and align_down const
* add a SelectorErrorCode

* remove the breaking change

* make SelectorErrorCode methods pub

* Derive clone and copy for SelectorErrorCode

* Make Descriptor table public say where it is used

* update doc comment

* added a new to SelectorErrorCode

* Derive more

* Update src/structures/idt.rs

Co-authored-by: Joseph Richey <[email protected]>
Add flags for CR0, CR4 and XCR0, as well as extra checks for modification of XCR0
@josephlr josephlr added the waiting-for-review Waiting for a review from the maintainers. label Jul 19, 2021
phil-opp and others added 6 commits July 19, 2021 10:22
* Create a basic release script

* Install python requirements

* Bump version for testing

* Run cargo publish without --dry-run

* Push the git tag to the repo

* Set up crates.io token for releasing

* Fix tagging

* Authenticate `gh` tool

* Run script only on master branch and set version back to 0.14.3
Instead of listing all versions, try to query the info about the respective version directly.
@josephlr
Copy link
Contributor Author

@phil-opp I've updated the next branch to merge in the newest master. No conflicts, merging this should make it easier to review other breaking changes.

Copy link
Member

@phil-opp phil-opp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, looks good to me! Sorry for the delay, I was on vacation. I try to work through my other review requests soon.

josephlr and others added 4 commits August 2, 2021 02:58
@josephlr josephlr merged commit 3b8a597 into rust-osdev:next Aug 2, 2021
@josephlr josephlr deleted the next branch August 2, 2021 10:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
waiting-for-review Waiting for a review from the maintainers.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants