Re: unix socket & fcntl => kernel oops ?

From: Horst von Brand (vonbrand@sleipnir.valparaiso.cl)
Date: Tue May 30 2000 - 22:53:33 EST


"Khimenko Victor" <khim@sch57.msk.ru> said:
> Do you think so ? See attachments (sample program, strace and kernel oops).
> Yes, if open will fail on them it'll be acceptable (not pretty, but
> acceptable - postgresql will be unable to track socket usage but will
> start anyway "in hope for best"). Unfortunatelly id DOES NOT fail and then
> you getting oops (and core dump) out of fcntl.
>
> AV> Victor, care to resend the oops? Sorry, missed it on l-k...
>
> No problem.
>
> P.S. It's all with 2.2.15pre9 but Horst von Brand
> <vonbrand@sleipnir.valparaiso.cl> said it's oopsing under 2.2.16pre4 as well.

Tried again. linux-2.2.16pre6, gcc-2.95.3-0.20000517 (selfcompiled for i686
from Red Hat rawhide), binutils-2.9.5.0.42-1 (compiled from sources by
HJLu, again i686). [Sorry for that, but somebody must try them out
somewhere...]

Again, Oops:

ksymoops 2.3.4 on i686 2.2.16pre6. Options used
     -V (default)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.2.16pre6/ (default)
     -m /boot/System.map-2.2.16pre6 (specified)

Unable to handle kernel NULL pointer dereference at virtual address 00000038
current->tss.cr3 = 01ed3000, %cr3 = 01ed3000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[fcntl_setlk+299/388]
EFLAGS: 00010202
eax: 00000000 ebx: c1ea9f18 ecx: 00000000 edx: c771d9c0
esi: c20d1780 edi: c1ea9f18 ebp: c1ea9f08 esp: c1ea9efc
ds: 0018 es: 0018 ss: 0018
Process a.out (pid: 2250, process nr: 71, stackpage=c1ea9000)
Stack: bffff9f4 c20d1780 fffffff7 00000001 00000000 00000000 0804829b 00000000
       00000000 00000000 00000000 00000000 c771d9c0 000008ca 00000000 c20d1780
       00000101 00000000 7fffffff 00000000 00000000 00000000 00000004 bffff9f4
Call Trace: [sys_fcntl+747/932] [free_pages+39/44] [sys_open+105/160] [error_code+45/52] [system_call+52/56]
Code: 83 78 38 00 74 1a 83 c4 fc 53 8b 54 24 7c 52 56 8b 40 38 ff
Using defaults from ksymoops -t elf32-i386 -a i386

Code; 00000000 Before first symbol
00000000 <_EIP>:
Code; 00000000 Before first symbol
   0: 83 78 38 00 cmpl $0x0,0x38(%eax)
Code; 00000004 Before first symbol
   4: 74 1a je 20 <_EIP+0x20> 00000020 Before first symbol
Code; 00000006 Before first symbol
   6: 83 c4 fc add $0xfffffffc,%esp
Code; 00000009 Before first symbol
   9: 53 push %ebx
Code; 0000000a Before first symbol
   a: 8b 54 24 7c mov 0x7c(%esp,1),%edx
Code; 0000000e Before first symbol
   e: 52 push %edx
Code; 0000000f Before first symbol
   f: 56 push %esi
Code; 00000010 Before first symbol
  10: 8b 40 38 mov 0x38(%eax),%eax
Code; 00000013 Before first symbol
  13: ff 00 incl (%eax)

-- 
Horst von Brand                             vonbrand@sleipnir.valparaiso.cl
Casilla 9G, Viņa del Mar, Chile                               +56 32 672616

- 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/



This archive was generated by hypermail 2b29 : Wed May 31 2000 - 21:00:26 EST