-
Notifications
You must be signed in to change notification settings - Fork 133
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
implement Index<u8>
for IDT instead of Index<usize>
#319
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.
Thanks a lot, looks good! I left some minor comments about the integer conversions, otherwise this seems ready to be merged.
there shouldn't be any objections to hard coding implementations based for the range types in core and so this pr provides those implementations as well.
Good idea!
@Freax13 Do you want to join our |
Sure, that sounds great! 🎉 |
CI is failing because yesterdays nightly release broke const operands in asm (see rust-lang/rust#90348). They now require |
Ok great, invite sent. Welcome!
Thanks for investigating, sounds like We can just switch on the new feature gates on the |
Thanks!
Yes, I created a seperate pr for that: #320. |
9c491e0
to
6eee5a8
Compare
After merging #320 and rebasing this now passes CI. |
This pr changes the
Idx
type ofInterruptDescriptorTable
'sIndex
implementation fromusize
tou8
as discussed in #285 (comment).u8
more accurately represents the index for anInterruptDescriptorTable
which always has exactly 256 entries. This change also eliminates some out of bounds panics that were possible withusize
.There was some discussion following #95 (comment) on whether it would be possible to use
SliceIndex
now or in the future. Following this pr this is no longer useful becauseSliceIndex
is based around onlyusize
notu8
. Since usingSliceIndex
is now out of question, there shouldn't be any objections to hard coding implementations based for the range types incore
and so this pr provides those implementations as well.