Messages in this thread | | | Subject | Re: Either the IP masq code or my brain is broken. | Date | Tue, 27 Oct 1998 11:01:24 +0000 | From | David Woodhouse <> |
| |
ak@muc.de said: > It is bogus to call verify_area on kernel buffers
Hmmm. Can you suggest an alternative way of checking that the pointer and length are valid?
Would it be possible to set up exception handlers within the kernel? Can we implement and use setjmp()? It'd need a lot of thought, but it would be ideal for this case, and possibly others, where a fault can easily be dealt with.
> For what address exactly does the oops occur?
I've got three oopsen on record (of my own). Of those, one was 'page fault from irq handler', and the other two were oopsing on the address c2000000.
The most recent...
Unable to handle kernel paging request at virtual address c2000000 current->tss.cr3 = 00101000, %cr3 = 00101000 *pde = 00000000 Ooops: 0000 CPU: 0 EIP: 0010:[<c01da498>] EFLAGS: 00010202 eax: a8405d54 ebx: c01da49e ecx: 01fdbbb5 edx: fffffff8 esi: c2000080 edi: c034cb40 ebp: c0217f0c esp: c0217ea8 ds: 0018 es: 0018 ss: 018 Process swapper (pid:0, process nr: 0, stackpage=c0217000) Stack: c0165a91 c0dddb08 fffffff8 00000000 c034cb40 c0dddad4 c0dddad4 c0217f0c 00000000 c020bd70 00000002 3210989e 00000000 00000020 c14d0018 c0dddae8 c0dddad4 c0169b4b c0217f15 c034cb40 c0dddad4 c0217f34 c0169fab 00000000 Call Trace: [<c0165a91>] [<c0169b4b>] [<c0169fab>] [<c0169ff8>] [<c015f2f4>] [<c01179dd>] [<c0110a63>] [<c0108055>] [<c010808c>] [<c0109820>] [<c0106084>] [<c0106073>] [<c0106000>] [<c0100176>] Code: 13 46 80 13 46 84 13 46 88 13 46 8c 13 46 90 13 46 94 13 46 Aiee, killing interrupt handler Kernel panic: Attempted to kill the idle task! In swapper task - not syncing Using `./System.map' to map addresses to symbols.
>>EIP: c01da498 <csum_partial+5c/e8> Trace: c0165a91 <ip_fw_demasquerade+209/554> Trace: c0169b4b <ip_local_deliver+1f/22c> Trace: c0169fab <ip_rcv+253/2d4> Trace: c0169ff8 <ip_rcv+2a0/2d4> Trace: c015f2f4 <net_bh+16c/1cc> Trace: c01179dd <do_bottom_half+49/64> Trace: c0110a63 <schedule+3b/264> Trace: c0108055 <sys_idle+65/ac> Trace: c010808c <sys_idle+9c/ac> Trace: c0109820 <system_call+34/38> Trace: c0106084 <init> Trace: c0106073 <cpu_idle+7/18> Trace: c0106000 <get_options> Trace: c0100176 <L6> Code: c01da498 <csum_partial+5c/e8> Code: c01da498 <csum_partial+5c/e8> 13 46 80 adcl 0xffffff80(%esi),%eax Code: c01da49b <csum_partial+5f/e8> 13 46 84 adcl 0xffffff84(%esi),%eax Code: c01da49e <csum_partial+62/e8> 13 46 88 adcl 0xffffff88(%esi),%eax Code: c01da4a1 <csum_partial+65/e8> 13 46 8c adcl 0xffffff8c(%esi),%eax Code: c01da4a4 <csum_partial+68/e8> 13 46 90 adcl 0xffffff90(%esi),%eax Code: c01da4a7 <csum_partial+6b/e8> 13 46 94 adcl 0xffffff94(%esi),%eax Code: c01da4aa <csum_partial+6e/e8> 13 46 00 adcl 0x0(%esi),%eax Code: c01da4ad <csum_partial+71/e8> 90 nop Code: c01da4ae <csum_partial+72/e8> 90 nop Code: c01da4af <csum_partial+73/e8> 90 nop
---- ---- ---- David Woodhouse David.Woodhouse@mvhi.com Office: (+44) 1223 810302 Project Leader, Process Information Systems Mobile: (+44) 976 658355 Axiom (Cambridge) Ltd., Swaffham Bulbeck, Cambridge, CB5 0NA, UK. finger dwmw2@ferret.lmh.ox.ac.uk for PGP key.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |