Re: I confused about diff(simple question)

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

 



On Sun, 10 Jul 2005 13:41:40 +0800 guorke wrote:

| like:
| 
|  /*
| @@ -220,9 +232,8(HERE: why not -220,9 +220,8) @@ fastcall notrace void
| do_page_fault(stru
|        struct vm_area_struct * vma;
|        unsigned long address;
|        unsigned long page;
| -       int write;
| -       siginfo_t info;
| -
| +       int write, si_code;
| +
|        /* get the address */
|        __asm__("movl %%cr2,%0":"=r" (address));
|        trace_special(regs->eip, error_code, address);
| @@ -236,7 +247,7 (HERE: why not -236,7,+236,7) @@ fastcall notrace
| void do_page_fault(stru
| 
|        tsk = current;
| 
| -       info.si_code = SEGV_MAPERR;
| +       si_code = SEGV_MAPERR;
| 
|        /*
|         * We fault-in kernel-space virtual memory on-demand. The
| @@ -316,7 +327,7 (HERE -316,7, +316,7) @@ fastcall notrace void
| do_page_fault(stru
|  * we can handle it..
|  */
|  good_area:
| -       info.si_code = SEGV_ACCERR;
| +       si_code = SEGV_ACCERR;
|        write = 0;
|        switch (error_code & 3) {
|                default:        /* 3: write, present */
| @@ -390,11 +401,7 (HERE:why not -390,11,+390,11) @@ bad_area_nosemaphore:
|                /* Kernel addresses are always protection faults */
|                tsk->thread.error_code = error_code | (address >= TASK_SIZE);
|                tsk->thread.trap_no = 14;
| -               info.si_signo = SIGSEGV;
| -               info.si_errno = 0;
| -               /* info.si_code has been set above */
| -               info.si_addr = (void __user *)address;
| -               force_sig_info(SIGSEGV, &info, tsk);
| +               force_sig_info_fault(SIGSEGV, si_code, address, tsk);
|                return;
|        }
| 
| @@ -500,11 +507,7(HERE: why not -500,11,+500,7) @@ do_sigbus:
|        tsk->thread.cr2 = address;
|        tsk->thread.error_code = error_code;
|        tsk->thread.trap_no = 14;
| -       info.si_signo = SIGBUS;
| -       info.si_errno = 0;
| -       info.si_code = BUS_ADRERR;
| -       info.si_addr = (void __user *)address;
| -       force_sig_info(SIGBUS, &info, tsk);
| +       force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk);
|        return;
| 
| ...
| 
| in :-220,9 +232,8
|  I think the old file from the line 220,and have 9 lines,then the
| newfile have 8 lines
| so must delete one line. but why +232,it from the line 232 ?

That patch segment begins at line 232 in the new file because the
previous patch segments added 12 lines (232 - 220).

Now, were there some previous patch segments (that you omitted) or
not?  If not, it is confusing...

| like this..
| 
| maybe it's very very simple.but i really confused it.wishes helps,



---
~Randy
-
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