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

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

    XMLWordPrintable

Details

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

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: