- 论坛徽章:
- 0
|
写个模块 想验证下kmap_atmotic原理
kmap_atomtic(page, type)
的两个参数都是手动搜索出来的(一个是遍历mem_map 还一个是搜索pkmap_pte找空pte项)
然后就在 模块初始化函数里面
vaddr = kmap_atomic(page, type)
kunmap_atomic(vaddr,type)
成功了
但是我把kunmap_atomic(vaddr,type)移到模块移除函数里面
rmmod后就pannic了
---[end trace ...]---- 这个上面的内容看不到了,死机了
kernel panic - not syncing: fatal exception in interrupt
.... 2.6.34.7-56.fc13.i686 #1....
trace:
printk
panic
oops_end
die
do_trap
? do_invalid_op
do_invalid_op
? vfree
? release_sysfs_dirent
? __sysfs_put
? sysfs_addrm_finish
? remove_dir
error_code
? vfree
module_free
free_module
sys_delete_module
? do_page_fault
? do_page_fault
syscall_call
上面都是手打的 一些内容省略了。。。 |
|