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