the magic in do_page_fault() ???

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux