BROKEN: Session
Created by: LazyOxen
Notes:
- for display.rs in userspace,
sys_alloc
is returning 0, for at least one of the buffers. - When you boot into qemu, you'll see a stripe of green flash on the screen, that's my check on
sys_alloc
's return value - You can still swap back and forth with the function keys.
- I attempted to use
mem::size_of
andbuf.len()
in the read functions for a couple of kernel schemes (display
andevents
) to check that the provided buffer had enough space, however, the checks never passed (I removed them and at least for events it interpreted them as the right type of event)
Something else of note: I switched around the internal representation of events because apparently Rust doesn't guarantee layout for structures, so even if the structures were exactly the same but in different compilation units, the layout might be different. I may however, have misunderstood what I read. None of this affects userspace so it could be reverted to the original.