Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-1369

cl_unuse_try() ASSERTION

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • None
    • Lustre 2.2.0, Lustre 2.3.0
    • None
    • 3
    • 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.

      Attachments

        Activity

          People

            jay Jinshan Xiong (Inactive)
            aboyko Alexander Boyko
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: