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

mdc_set_lock_data()) ASSERTION( old_inode->i _state & I_FREEING ) failed: ...

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • Lustre 2.6.0
    • Lustre 2.6.0
    • 3
    • 13507

    Description

      This will likely be fixed in the master stripe series (it is currently) but we need to ensure that clients are not allowed to access stripe FIDs and that attempts are handled gracefully.

      # git describe
      2.5.57-71-g46f58aa
      # export MDSCOUNT=4
      # llmount.sh 
      ...
      # lfs mkdir -c4 /mnt/lustre/d0
      t:~# lfs getdirstripe /mnt/lustre/d0
      /mnt/lustre/d0
      lmv_stripe_count: 4
      lmv_stripe_offset: 0
      mdtidx                   FID[seq:oid:ver]
           0                   [0x280000400:0x3:0x0]          
           1                   [0x2c0000400:0x1:0x0]
           2                   [0x300000400:0x1:0x0]   
           3                   [0x340000400:0x1:0x0]  
      # stat /mnt/lustre/.lustre/fid/[0x2c0000400:0x1:0x0]
        File: `/mnt/lustre/.lustre/fid/[0x2c0000400:0x1:0x0]'
        Size: 16384           Blocks: 8          IO Block: 4096   directory
      Device: 2c54f966h/743766374d    Inode: 198158400784171009  Links: 2
      Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
      Access: 2014-04-08 10:34:54.000000000 -0500
      Modify: 2014-04-08 10:34:54.000000000 -0500
      Change: 2014-04-08 10:34:54.000000000 -0500
      #
      # touch /mnt/lustre/.lustre/fid/[0x300000400:0x1:0x0]/f0
      # ls /mnt/lustre/d0
      f0
      # touch /mnt/lustre/.lustre/fid/[0x300000400:0x1:0x0]/f1
      # ls /mnt/lustre/d0
      f0  f1
      # touch /mnt/lustre/.lustre/fid/[0x300000400:0x1:0x0]/f2
      # ls /mnt/lustre/d0
      f0  f1  f2
      # ls -ai /mnt/lustre/.lustre/fid/[0x300000400:0x1:0x0]
      
      Message from syslogd@t at Apr  8 10:38:37 ...
       kernel:LustreError: 26929:0:(mdc_locks.c:130:mdc_set_lock_data()) ASSERTION( old_inode->i_state & I_FREEING ) failed: Found existing inode ffff880216d70bb8/180144002274689027/41943044 state 0 in lock: setting data to ffff8801b7972b78/216172799293652993/50331652
      
      crash> bt
      PID: 26929  TASK: ffff8801b2282040  CPU: 2   COMMAND: "ls"
       #0 [ffff8801a7667900] machine_kexec at ffffffff81035d6b
       #1 [ffff8801a7667960] crash_kexec at ffffffff810c0e22
       #2 [ffff8801a7667a30] panic at ffffffff8150f01f
       #3 [ffff8801a7667ab0] lbug_with_loc at ffffffffa0bb4eeb [libcfs]
       #4 [ffff8801a7667ad0] mdc_set_lock_data at ffffffffa07f6a3d [mdc]
       #5 [ffff8801a7667b20] mdc_read_page at ffffffffa07e52df [mdc]
       #6 [ffff8801a7667c40] mdc_read_entry at ffffffffa07e5bb4 [mdc]
       #7 [ffff8801a7667ca0] lmv_read_entry at ffffffffa05c795e [lmv]
       #8 [ffff8801a7667d70] ll_dir_entry_start at ffffffffa0e1bf3d [lustre]
       #9 [ffff8801a7667db0] ll_dir_read at ffffffffa0e1c28f [lustre]
      #10 [ffff8801a7667e50] ll_readdir at ffffffffa0e1c56d [lustre]
      #11 [ffff8801a7667ee0] vfs_readdir at ffffffff81197da0
      #12 [ffff8801a7667f30] sys_getdents at ffffffff81197f29
      #13 [ffff8801a7667f80] system_call_fastpath at ffffffff8100b072
          RIP: 0000003d046a8fa5  RSP: 00007fffefe08fd0  RFLAGS: 00010202
          RAX: 000000000000004e  RBX: ffffffff8100b072  RCX: 00000000009dd270
          RDX: 0000000000008000  RSI: 00000000009d5278  RDI: 0000000000000003
          RBP: ffffffffffffff00   R8: 00000000009d5278   R9: 0000000000000001
          R10: 0000000000008028  R11: 0000000000000246  R12: 00000000009d5230
          R13: 00000000009d5278  R14: 0000000000000000  R15: 00000000009d5250
          ORIG_RAX: 000000000000004e  CS: 0033  SS: 002b
      

      Attachments

        Issue Links

          Activity

            People

              di.wang Di Wang
              jhammond John Hammond
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: