oops in proc_follow_link/permission

Alexander V. Lukyanov (lav@alpha.netis.ru)
Fri, 3 Apr 1998 22:18:35 +0400


On alpha machine with kernel 2.1.92 I got this oops on boot:

Unable to handle kernel paging request at virtual address 0000000000000008

pc = [<fffffc00003738cc>] ra = [<fffffc000037386c>] ps = 0000
r0 = 0000000000000000 r1 = 0000000000000000 r2 = fffffc0006e30000
r3 = 0000000000000147 r4 = fffffc00002b84c0 r5 = fffffc00073db908
r6 = fffffc00004b0218 r7 = 000000000000001f r8 = fffffc0006d28000
r9 = 0000000001470007 r10= 0000000000000001 r11= 0000000000000000
r12= fffffc000007c00d r13= fffffc0007ed9c60 r14= 0000000000000001
r15= 0000000000000001
r16= fffffc0006e8ab80 r17= 0000000000000001 r18= 0000000000000000
r19= 0000000100000010 r20= 0000000000000001 r21= fffffc0006e8ac30
r22= 0000000000000000 r23= 00000200001b0cd8 r24= 0000000000000080
r25= 000000000000000a r27= fffffc0000373850 r28= 0000000000000001
gp = fffffc00004a69a0 sp = fffffc0006d2be28
Code: f45ffffb e440000d a42203f0 <a4610008> f4600003 c3e00009 47ff0400
c3e00008 406405a1
Trace: [permission] [proc_follow_link] [do_follow_link] [lookup_dentry]
[namei__] [sys_newstat] [entSys]

I think dentry->d_inode happened to be NULL in proc_follow_link.
I looked at do_follow_link and it seems to be a race condition,
because d_inode is checked before follow_link call.

This is almost fresh 2.1.92 kernel, with newer 3c59x and aic7xxx drivers.

Alexander.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu