Flush TLB correctly when remapping

Seperate mouse and keyboard structs in PS/2 driver
This commit is contained in:
Jeremy Soller 2016-09-11 15:02:35 -06:00
parent 44e8b99b46
commit 8563961f28
8 changed files with 169 additions and 112 deletions

View file

@ -34,6 +34,7 @@ pub fn brk(address: usize) -> Result<usize> {
if active_table.translate_page(page).is_none() {
//println!("Not found - mapping");
active_table.map(page, entry::PRESENT | entry::WRITABLE | entry::NO_EXECUTE | entry::USER_ACCESSIBLE);
active_table.flush(page);
} else {
//println!("Found - skipping");
}
@ -49,6 +50,7 @@ pub fn brk(address: usize) -> Result<usize> {
if active_table.translate_page(page).is_some() {
//println!("Found - unmapping");
active_table.unmap(page);
active_table.flush(page);
} else {
//println!("Not found - skipping");
}