fix: sched round-robin, cap slot OOB panic, clippy, make ci
- RunList -> intrusive FIFO, no starvation, no silent drop - cap table sized to CapSlot range (kani caught OOB panic) - snake food color test uses const - kani cfg lint, RUST_MIN_STACK for big kernel struct in tests
This commit is contained in:
@@ -104,10 +104,11 @@ impl RegionTable {
|
||||
base: PhysicalAddress,
|
||||
) -> Option<(RegionId, &MemoryRegion)> {
|
||||
for (i, slot) in self.regions.iter().enumerate() {
|
||||
if let Some(region) = slot {
|
||||
if region.owner() == owner && region.base() == base {
|
||||
return Some((RegionId::from_raw(i as u16), region));
|
||||
}
|
||||
if let Some(region) = slot
|
||||
&& region.owner() == owner
|
||||
&& region.base() == base
|
||||
{
|
||||
return Some((RegionId::from_raw(i as u16), region));
|
||||
}
|
||||
}
|
||||
None
|
||||
@@ -120,3 +121,9 @@ impl RegionTable {
|
||||
.filter(move |r| r.owner() == process)
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for RegionTable {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user