lkml.org 
[lkml]   [2005]   [Jul]   [4]   [last100]   RSS Feed
Views: [more markup]   [less markup]   [headers]   [forward]  
 
 
Messages in this thread
/
DateMon, 04 Jul 2005 13:23:41 +0800
From"" <>
Subjectthe 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/

\
 
 \ /
  Last update: 2005-07-04 07:16    [from the cache]
©2003-2008