On Tue, Oct 14, 2008 at 11:40:16PM +0900, [EMAIL PROTECTED] wrote:
> Louis Rilling:
> > > The message about the possible recursive locking is due to my recent
> > > reducing lockdep_off/on work. I guess it will be fixed by reverting them
> > > (but narrowing down its region).
> > 
> > Surely a good thing to do.
> 
> Here is a patch for the lockdep warning.
> Will you test it and let me know the result?
> Of course, you may meet the deadlock again because this patch is
> unrelated to the deadlock.

I obtained another lockdep alert, which I guess was hidden by the first one:
[   54.188183] =============================================
[   54.188316] [ INFO: possible recursive locking detected ]
[   54.188395] 2.6.25-elric #10
[   54.188461] ---------------------------------------------
[   54.188535] nfsd/2598 is trying to acquire lock:
[   54.188601]  (&rw->rwsem){----}, at: [<ffffffff883f5abd>] 
au_do_open+0xf6/0x551 [aufs]
[   54.188861]
[   54.188862] but task is already holding lock:
[   54.188982]  (&rw->rwsem){----}, at: [<ffffffff8840db9a>] 
aufs_fh_to_dentry+0x106/0x48c [aufs]
[   54.189233]
[   54.189234] other info that might help us debug this:
[   54.189356] 2 locks held by nfsd/2598:
[   54.189420]  #0:  (hash_sem){..--}, at: [<ffffffff882e9801>] 
nfsd+0x189/0x2b4 [nfsd]
[   54.189701]  #1:  (&rw->rwsem){----}, at: [<ffffffff8840db9a>] 
aufs_fh_to_dentry+0x106/0x48c [aufs]
[   54.189992]
[   54.189993] stack backtrace:
[   54.190110] Pid: 2598, comm: nfsd Not tainted 2.6.25-elric #10
[   54.190178]
[   54.190179] Call Trace:
[   54.190297]  [<ffffffff80253b7b>] __lock_acquire+0x8e0/0xc7a
[   54.190375]  [<ffffffff80254362>] lock_acquire+0x88/0xb2
[   54.190458]  [<ffffffff883f5abd>] :aufs:au_do_open+0xf6/0x551
[   54.190544]  [<ffffffff883f83f5>] :aufs:aufs_open_dir+0x0/0x75
[   54.190618]  [<ffffffff8042f7a0>] down_read+0x32/0x3b
[   54.190700]  [<ffffffff883f5abd>] :aufs:au_do_open+0xf6/0x551
[   54.190785]  [<ffffffff883f8ff0>] :aufs:do_open_dir+0x0/0x543
[   54.190858]  [<ffffffff802a2fad>] file_move+0x1d/0x51
[   54.190942]  [<ffffffff883f83f5>] :aufs:aufs_open_dir+0x0/0x75
[   54.191089]  [<ffffffff802a0a41>] __dentry_open+0xe9/0x1c0
[   54.191180]  [<ffffffff8840c2d3>] :aufs:au_lkup_by_ino+0x7a/0x211
[   54.191254]  [<ffffffff802abc20>] do_path_lookup+0x165/0x1de
[   54.191339]  [<ffffffff8840d591>] :aufs:decode_by_path+0x4f8/0x589
[   54.191415]  [<ffffffff802b43e9>] ifind_fast+0x1a/0x92
[   54.191478]  [<ffffffff80430685>] _spin_unlock+0x17/0x20
[   54.191478]  [<ffffffff802b4458>] ifind_fast+0x89/0x92
[   54.191478]  [<ffffffff8840dd9b>] :aufs:aufs_fh_to_dentry+0x307/0x48c
[   54.191478]  [<ffffffff8829d46e>] :sunrpc:sunrpc_cache_lookup+0x30/0x132
[   54.191478]  [<ffffffff8043063b>] _read_unlock+0x17/0x20
[   54.191478]  [<ffffffff8829c3d7>] :sunrpc:cache_check+0x66/0x435
[   54.191478]  [<ffffffff88289593>] :exportfs:exportfs_decode_fh+0x30/0x1e1
[   54.191478]  [<ffffffff882ebc32>] :nfsd:nfsd_acceptable+0x0/0xd3
[   54.191478]  [<ffffffff8029dc3d>] kfree+0x20d/0x224
[   54.191478]  [<ffffffff80252e07>] trace_hardirqs_on+0xf5/0x118
[   54.191478]  [<ffffffff80242023>] set_current_groups+0x15e/0x16a
[   54.191478]  [<ffffffff882f1e96>] :nfsd:nfsd_setuser+0x11f/0x20d
[   54.191478]  [<ffffffff882eb7bb>] :nfsd:nfsd_setuser_and_check_port+0x52/0x57
[   54.191478]  [<ffffffff882ebf52>] :nfsd:fh_verify+0x24d/0x48f
[   54.191478]  [<ffffffff8029d142>] __kmalloc+0x142/0x176
[   54.191478]  [<ffffffff882f3ea3>] :nfsd:nfsd3_proc_getattr+0x7d/0xb5
[   54.191478]  [<ffffffff882e9249>] :nfsd:nfsd_dispatch+0xde/0x1b6
[   54.191478]  [<ffffffff88296854>] :sunrpc:svc_process+0x3eb/0x707
[   54.191478]  [<ffffffff882e9678>] :nfsd:nfsd+0x0/0x2b4
[   54.191478]  [<ffffffff882e9818>] :nfsd:nfsd+0x1a0/0x2b4
[   54.191478]  [<ffffffff8020d028>] child_rip+0xa/0x12
[   54.191478]  [<ffffffff8020c5bc>] restore_args+0x0/0x30
[   54.191478]  [<ffffffff882e9678>] :nfsd:nfsd+0x0/0x2b4
[   54.191478]  [<ffffffff8020d01e>] child_rip+0x0/0x12
[   54.191478]

> 
> To investigate your deadlock, I'd like to ask you to enable
> both of CONFIG_AUFS_DEBUG_LOCK and CONFIG_MAGIC_SYSRQ, and press
> MagicSysRq + A after the deadlock happend.

Tests running, I'll let you know in later reply.

Thanks!

Louis

> 
> I will try LTP by myself in a few days.
> 
> 
> Junjiro R. Okajima
> 


> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/

-- 
Dr Louis Rilling                        Kerlabs
Skype: louis.rilling                    Batiment Germanium
Phone: (+33|0) 6 80 89 08 23            80 avenue des Buttes de Coesmes
http://www.kerlabs.com/                 35700 Rennes

Attachment: signature.asc
Description: Digital signature

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/

Reply via email to