Messages in this thread | | | Date | Mon, 04 Jul 2005 13:23:58 +0800 | From | "" <> | Subject | the magic in do_page_fault() ??? |
| |
Hi LKML:
I am reading code of memory management. this process is so challengable.
I have one quetion too.
in do_page_fault() (kernel 2.6.11.11) include one piece of code as follow:
if (!down_read_trylock(&mm->mmap_sem)) { if ((error_code & 4) == 0 && !search_exception_tables(regs->eip)) goto bad_area_nosemaphore; down_read(&mm->mmap_sem); }
I think I can understand these operations on mm->mmap_sem and "error_code&4". but how "search_exception_tables(regs->eip)" work here?
In "Understanding Linux kernel 2ed" book, the author say , kernel must difference two case:
1. kernel memory access problem. 2. Arguments of system call include address of memeory unit is unmapped.
Well, That is OK. but I want to know what 's mechanism in it ?
3ks. (in Chinese , number 3 read as 'th' :)
liyu Mon Jul 4 13:23:24 CST 2005
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |