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

mdt_big_xattr_get()) ASSERTION( info->mti_big_lmm_used == 0 ) failed

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • None
    • None
    • 3
    • 9223372036854775807

      Recent runs showed the assertion below:

      LustreError: 25386:0:(mdt_handler.c:950:mdt_big_xattr_get()) ASSERTION( info->mti_big_lmm_used == 0 ) failed:
      LustreError: 25386:0:(mdt_handler.c:950:mdt_big_xattr_get()) LBUG
      Pid: 25386, comm: mdt00_003 3.10.0-1062.18.1.el7_lustre.x86_64 #1 SMP Wed May 27 23:19:17 UTC 2020
      Call Trace:
      [<ffffffffc08bf1dc>] libcfs_call_trace+0x8c/0xc0 [libcfs]
      [<ffffffffc08bf28c>] lbug_with_loc+0x4c/0xa0 [libcfs]
      [<ffffffffc11643a7>] mdt_big_xattr_get+0x667/0x830 [mdt]
      [<ffffffffc11647a7>] mdt_stripe_get+0x237/0x410 [mdt]
      [<ffffffffc118a92b>] mdt_reint_migrate+0x116b/0x16c0 [mdt]
      [<ffffffffc118af03>] mdt_reint_rec+0x83/0x210 [mdt]
      [<ffffffffc1163970>] mdt_reint_internal+0x710/0xae0 [mdt]
      [<ffffffffc116ed47>] mdt_reint+0x67/0x140 [mdt]
      [<ffffffffc0e3ac0a>] tgt_request_handle+0x96a/0x1640 [ptlrpc]
      [<ffffffffc0ddc216>] ptlrpc_server_handle_request+0x256/0xb10 [ptlrpc]
      [<ffffffffc0de0744>] ptlrpc_main+0xbb4/0x1550 [ptlrpc]
      [<ffffffff998c6321>] kthread+0xd1/0xe0
      [<ffffffff99f8ed37>] ret_from_fork_nospec_end+0x0/0x39
      [<ffffffffffffffff>] 0xffffffffffffffff
      

      This is result of inappropriate usage of mti_big_lmm buffer in various places. Originally it was introduced to be used for getting big LOV/LMV EA and passing them to reply buffers. Meanwhile it is widely used now for internal server needs. These cases should be distinguished and if there is no intention to return EA in reply then flag {mti_big_lmm_used}} should not be set. Maybe it is worth to rename it as mti_big_lmm_keep to mark that is to be kept until reply is packed.

            tappro Mikhail Pershin
            tappro Mikhail Pershin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: