On Thu, Jan 27, 2005 at 05:41:10PM -0800, Daniel McNeil wrote: > dlm_astd D 00000008 0 10264 6 3235 (L-TLB) > dc9c3ee8 00000046 dc9c3ed8 00000008 00000002 00000800 00000008 c8cc35e0 > f7bc0568 5f8a4c1c 0179a889 e4676c5a 00004b2d dc9c3f14 c051c000 c1716f60 > 00000001 000001b0 0167c50b 00005e6b e9db55e0 e9db574c c1714060 00000000 > Call Trace: > [<c03cef7c>] rwsem_down_read_failed+0x9c/0x190 > [<f8aca119>] .text.lock.ast+0xc7/0x1de [dlm] > [<f8ac9ea5>] dlm_astd+0x1e5/0x210 [dlm] > [<c013245a>] kthread+0xba/0xc0 > [<c0101315>] kernel_thread_helper+0x5/0x10 > > So, it looks like dlm_astd is stuck on a down_read(). > > The only down_read I see is in process_asts(). > > down_read(&ls->ls_in_recovery); Yep, that's it. The ls struct is freed while dlm_astd is blocked there. I checked in a fix for this a few days ago. -- Dave Teigland <teigland@xxxxxxxxxx>