[LU-1369] cl_unuse_try() ASSERTION Created: 04/May/12  Updated: 21/Nov/12  Resolved: 15/Jun/12

Status: Closed
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.2.0, Lustre 2.3.0
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Alexander Boyko Assignee: Jinshan Xiong (Inactive)
Resolution: Fixed Votes: 1
Labels: None

Severity: 3
Rank (Obsolete): 6408

 Description   
LustreError: 18631:0:(cl_lock.c:1360:cl_unuse_try()) ASSERTION( lock->cll_state == CLS_HELD || lock->cll_state == CLS_ENQUEUED ) failed: 
LustreError: 18631:0:(cl_lock.c:1360:cl_unuse_try()) LBUG
crash> bt
PID: 18631 TASK: ffff8801eaa80100 CPU: 6 COMMAND: "iozone"
#0 [ffff8801e9acd830] crash_kexec at ffffffff8107ed1d
#1 [ffff8801e9acd900] panic at ffffffff812e2d23
#2 [ffff8801e9acd980] lbug_with_loc at ffffffffa012cd03 [libcfs]
#3 [ffff8801e9acd9b0] cl_unuse_try at ffffffffa0247704 [obdclass]
#4 [ffff8801e9acd9e0] osc_lock_upcall at ffffffffa05eedd8 [osc]
#5 [ffff8801e9acda40] osc_enqueue_base at ffffffffa05da7a4 [osc]
#6 [ffff8801e9acdae0] osc_lock_enqueue at ffffffffa05edae0 [osc]
#7 [ffff8801e9acdb70] cl_enqueue_try at ffffffffa0247cbb [obdclass]
#8 [ffff8801e9acdbc0] lov_lock_enqueue at ffffffffa066265f [lov]
#9 [ffff8801e9acdc50] cl_enqueue_try at ffffffffa0247cbb [obdclass]
#10 [ffff8801e9acdca0] cl_enqueue_locked at ffffffffa0249137 [obdclass]
#11 [ffff8801e9acdce0] cl_lock_request at ffffffffa0249413 [obdclass]
#12 [ffff8801e9acdd40] cl_io_lock at ffffffffa024d511 [obdclass]
#13 [ffff8801e9acddb0] cl_io_loop at ffffffffa024d80b [obdclass]
#14 [ffff8801e9acddf0] ll_file_io_generic at ffffffffa073379f [lustre]
#15 [ffff8801e9acde60] ll_file_aio_read at ffffffffa0733dd2 [lustre]
#16 [ffff8801e9acdeb0] ll_file_read at ffffffffa0735b6c [lustre]
#17 [ffff8801e9acdf10] vfs_read at ffffffff8111e988
#18 [ffff8801e9acdf40] sys_read at ffffffff8111eb30
#19 [ffff8801e9acdf80] system_call_fastpath at ffffffff812e60fb
RIP: 00000000004e3470 RSP: 00007fffffffa6b0 RFLAGS: 00000246
RAX: 0000000000000000 RBX: ffffffff812e60fb RCX: 0000000000001000
RDX: 0000000000010000 RSI: 00002aab6db00000 RDI: 0000000000000005
RBP: 00007fffffffa7d0 R8: 00000000a5a5a5a5 R9: 0000000000000001
R10: ffffffffffffffff R11: 0000000000000246 R12: 00000000000020c0
R13: 0000000020c00000 R14: 0000000000005f3f R15: 0000000000010000
ORIG_RAX: 0000000000000000 CS: 0033 SS: 002b

lock wich cause ASSERT

crash> struct cl_lock 0xffff8803edc18a58
struct cl_lock {
  cll_ref = {
    counter = 4
  }, 
  cll_layers = {
    next = 0xffff8803acbc82b8, 
    prev = 0xffff8802166f04c0
  }, 
  cll_linkage = {
    next = 0xffff88021668db10, 
    prev = 0xffff8803acbcb990
  }, 
  cll_descr = {
    cld_obj = 0xffff8801a0dc5e68, 
    cld_start = 134128, 
    cld_end = 146191, 
    cld_gid = 0, 
    cld_mode = CLM_READ, 
    cld_enq_flags = 0
  }, 
  cll_state = CLS_QUEUING, 
  cll_wq = {
    lock = {
      {
        rlock = {
          raw_lock = {
            slock = 771
          }
        }
      }
    }, 
    task_list = {
      next = 0xffff8803edc18ab8, 
      prev = 0xffff8803edc18ab8
    }
  }, 

I have found that this change was added by Fan Young commit 6f5813d3 LU-925 (cl_unuse_try to osc_lock_upcall()), and it cause ASSERT.



 Comments   
Comment by Cory Spitz [ 15/Jun/12 ]

This is probably fixed with LU-1299.

Comment by Jinshan Xiong (Inactive) [ 15/Jun/12 ]

Yes, I confirm this problem should be fixed in LU-1299.

Comment by Jinshan Xiong (Inactive) [ 26/Jul/12 ]

fixed in lu-1299.

Comment by Nathan Rutman [ 21/Nov/12 ]

Xyratex-bug-id: MRP-507

Generated at Sat Feb 10 01:16:02 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.