Re: I confused about diff(simple question)

From: randy_dunlap
Date: Sun Jul 10 2005 - 01:15:26 EST


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