I found a missing cfs_wreq_lock spin_unlock().


On 9/26/05, John Byrne <john.l.byrne@hp.com> wrote:
Roger Tsang wrote:
> Hi,
> I found these two processes in a deadlock at text.lock  and I can't kill
> them either.  Any ideas?
> Roger

There is at probably least one more thread involved that has the
semaphore and is deadlocked. One way to look for this is to use screen
to capture all the output of the "bta" command in kdb (use LINES=10000
to keep from having to page the output) and look for 0xc6bd5af4 which is
the address of the dentry involved. You may also have to look for the
inode address inode address, which you'd have to pull out of the dentry.


> 0xccbc5020   120553        1  0    0   D  0xccbc51e0  httpd
> EBP        EIP        Function (args)
> 0xdbff1e50 0xc03befc9 schedule+0x2a9 (0xc027fb87, 0xe7f93884,
> 0xe7f93804, 0x0, 0xe7f93884)
> 0xdbff1e84 0xc03bfb25 rwsem_down_write_failed+0x75 (0xe7f93804, 0x0,
> 0x0, 0x48, 0xc027514f)
>            0xc0159168 .text.lock.open+0x13
> 0xdbff1ee4 0xc015782f do_truncate+0x5f (0xc6bd5af4, 0x0, 0x0,
> 0xc6bd5af4, 0xdbff1f58)
> 0xdbff1f08 0xc0169185 may_open+0x245 (0xdbff1f58, 0x2, 0x242, 0x0,
> 0xdbff1f60)
> 0xdbff1f40 0xc01692f6 open_namei+0x126 (0xe1937000, 0x242, 0x1b6,
> 0xdbff1f58, 0xc6bd5af4)
> 0xdbff1f9c 0xc0158afa filp_open+0x3a (0xe1937000, 0x241, 0x1b6,
> 0x89f5e1c, 0x89f5e1c)
> 0xdbff1fbc 0xc0158ef5 sys_open+0x55
>            0xc0103c55 sysenter_past_esp+0x52
> 0xe9eb5550   123638        1  0    0   D  0xe9eb5710  httpd
> EBP        EIP        Function (args)
> 0xd3003dd0 0xc03befc9 schedule+0x2a9 (0xe7f93878, 0x1, 0xe9eb5550,
> 0xc0118ea0, 0xe7f93878)
> 0xd3003e08 0xc03beb74 __down+0x64 (0x0, 0xe7f93734)
> 0xd3003e18 0xc03bece2 __down_failed+0xa (0xe7f93804, 0x0, 0x0, 0x2, 0x0)
>            0xc0270095 .text.lock.inode+0x15
> 0xd3003e58 0xc026f2f3 cfs_setattr+0x93 (0xc6bd5af4, 0xd3003e98, 0x81a4,
> 0x43383bdf, 0x6ebc849)
> 0xd3003e88 0xc0175dd0 notify_change+0x240 (0xc6bd5af4, 0xd3003e98, 0x48,
> 0xc027514f, 0xe7f93804)
> 0xd3003ee4 0xc015783e do_truncate+0x6e (0xc6bd5af4, 0x0, 0x0,
> 0xc6bd5af4, 0xd3003f58)
> 0xd3003f08 0xc0169185 may_open+0x245 (0xd3003f58, 0x2, 0x242, 0x0,
> 0xd3003f60)
> 0xd3003f40 0xc01692f6 open_namei+0x126 (0xf6c0f000, 0x242, 0x1b6,
> 0xd3003f58, 0xc6bd5af4)
> 0xd3003f9c 0xc0158afa filp_open+0x3a (0xf6c0f000, 0x241, 0x1b6,
> 0x891481c, 0x891481c)
> 0xd3003fbc 0xc0158ef5 sys_open+0x55
>            0xc0103c55 sysenter_past_esp+0x52