Re: Update for 2.1.57 /proc patch

Henrik Wallin (henrik@triton.campus.luth.se)
Fri, 3 Oct 1997 00:44:58 +0200 (CEST)


On Wed, 1 Oct 1997, Bill Hawes wrote:

> Please give the patch a test and let me know of any problems.
>
> Regards,
> Bill

root ~ > cd /proc/<pid>/fd
root ~ > ls -l
Segmentation fault
root ~ >

and in syslog:
Unable to handle kernel NULL pointer dereference at virtual address 0000003c
current->tss.cr3 = 01725000, ^_r3 = 01725000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c0149d5c>]
EFLAGS: 00010282
eax: 00000000 ebx: 00d70100 ecx: 00000000 edx: 00000216
esi: 00000000 edi: c01f5c74 ebp: c1f0b300 esp: c1f45f04
ds: 0018 es: 0018 ss: 0018
Process ls (pid: 2754, process nr: 20, stackpage=c1f45000)
Stack: ffffffff c01f5c74 000000d7 c014b77d c01f5c74 00d70100 00000000 c1f0b300
c0f634c0 c1f45f80 00000000 c0cad061 c01f5c74 c0129222 c0f634c0 c1f0b300
c1f0b360 c1f45f80 c1f45f80 c1f0b360 c2e62001 c1f0b360 c01294dc c1f0b360
Call Trace: [<c014b77d>] [<c0129222>] [<c01294dc>] [<c0129558>] [<c01275da>] [<c0109246>]
Code: 83 7e 3c 00 74 15 8b 46 38 50 8b 46 04 50 68 16 84 1b c0 e8

Using /System.map' to map addresses to symbols.

>>EIP: c0149d5c <proc_get_inode+18/dc>
Trace: c014b77d <proc_lookupfd+119/144>
Trace: c0129222 <real_lookup+3e/74>
Trace: c01294dc <lookup_dentry+158/1ac>
Trace: c0129558 <__namei+28/7c>
Trace: c01275da <sys_newlstat+16/64>
Trace: c0109246 <system_call+3a/40>
Code: c0149d5c <proc_get_inode+18/dc>
Code: c0149d5c <proc_get_inode+18/dc> 83 7e 3c 00 cmpl $0x0,0x3c(%esi)
Code: c0149d60 <proc_get_inode+1c/dc> 74 15 je c0149d77 <proc_get_inode+33/dc>
Code: c0149d62 <proc_get_inode+1e/dc> 8b 46 38 movl 0x38(%esi),%eax
Code: c0149d65 <proc_get_inode+21/dc> 50 pushl %eax
Code: c0149d6c <proc_get_inode+28/dc> 8b 46 04 movl 0x4(%esi),%eax
Code: c0149d6f <proc_get_inode+2b/dc> 50 pushl %eax
Code: c0149d70 <proc_get_inode+2c/dc> 68 16 84 1b c0 pushl $0xc01b8416
Code: c0149d75 <proc_get_inode+31/dc> e8 00 90 90 90 call 90909018 <_EIP+90909018>

( I can repeat this with any <pid> ( it seems anyway) )
No modules in use at the time.

clean 2.1.57 and following patches from the list:

buffer_wake56-patch
dcache_57-patch
inode_mem57-patch
nfs_57-patch
procfs_57-patch
smbfs_57-patch
sunrpc_57-patch
sysreq_inode55-patch (manually patched)

..hmm. all from Bill Hawes.. :)
thanks for your excellent work...

/ Henrik Wallin, henrik@triton.campus.luth.se