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

ll_intent_file_open() may pass unitialized req to ptlrpc_req_finished()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • Lustre 2.6.0
    • Lustre 2.6.0
    • 3
    • 13553

    Description

      In ll_intent_file_open() an error return from md_intent_lock() may leave req uninitialized. This is easy to reproduce running racer with 1 MDT and 5% RPC drop.

      # export MDSCOUNT=1
      # export OSTCOUNT=4
      # export MOUNT_2=y
      # llmount.sh
      # lctl set_param fail_loc=0x08000505
      # lctl set_param fail_val=20
      # sh lustre/tests/racer.sh
      
      [  798.842752] LustreError: 22840:0:(file.c:174:ll_close_inode_openhandle()) lustre-clilm\
      v
      -ffff8801af4ecce0: inode [0x200000400:0x1:0x0] mdc close failed: rc = -108
      [  798.845246] BUG: unable to handle kernel NULL pointer dereference at 0000000000000376
      [  798.845250] IP: [<ffffffffa067d44a>] __ptlrpc_req_finished+0x4a/0x6d0 [ptlrpc]
      [  798.845309] PGD 1a6a93067 PUD 1a6e13067 PMD 0
      [  798.845313] Oops: 0000 [#1] SMP
      ...
      [  798.845357] Pid: 22819, comm: cp Not tainted 2.6.32-431.5.1.el6.lustre.x86_64 #1 Bochs\
       Bochs
      [  798.845361] RIP: 0010:[<ffffffffa067d44a>]  [<ffffffffa067d44a>] __ptlrpc_req_finished\
      +0x4a/0x6d0 [ptlrpc]
      [  798.845391] RSP: 0018:ffff8801a5f41b68  EFLAGS: 00010293
      [  798.845391] RAX: 5a5a5a5a5a5a5a5a RBX: 0000000000000246 RCX: 0000000000000000
      [  798.845391] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 0000000000000246
      [  798.845391] RBP: ffff8801a5f41b88 R08: 00000000fffffff8 R09: 00000000fffffffb
      [  798.845391] R10: 0000000000000002 R11: 0000000000000000 R12: 0000000000000000
      [  798.845391] R13: ffff8801a6f60bf0 R14: ffff8801a5cf4938 R15: 0000000000000000
      [  798.845391] FS:  00007ff80b1637a0(0000) GS:ffff88002fe00000(0000) knlGS:00000000000000\
      00
      [  798.845391] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      [  798.845391] CR2: 0000000000000376 CR3: 00000001a6e20000 CR4: 00000000000006e0
      [  798.845391] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [  798.845391] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      [  798.845391] Process cp (pid: 22819, threadinfo ffff8801a5f40000, task ffff8801a6e38580\
      )
      [  798.845391] Stack:
      [  798.845391]  ffff8801a5cf4938 ffff8801a5f41ca8 00000000ffffff94 ffff8801a6f60bf0
      [  798.845391] <d> ffff8801a5f41b98 ffffffffa067e330 ffff8801a5f41c28 ffffffffa0e0614c
      [  798.845391] <d> ffff8801a5f41bf0 ffffffffa0e31e90 0000000000000000 ffff8801a5f0c208
      [  798.845391] Call Trace:
      [  798.845391]  [<ffffffffa067e330>] ptlrpc_req_finished+0x10/0x20 [ptlrpc]
      [  798.845391]  [<ffffffffa0e0614c>] ll_intent_file_open+0x31c/0x7b0 [lustre]
      [  798.845391]  [<ffffffffa0e31e90>] ? ll_md_blocking_ast+0x0/0x800 [lustre]
      [  798.845391]  [<ffffffffa0e07055>] ll_file_open+0x265/0xc00 [lustre]
      [  798.845391]  [<ffffffff815547cb>] ? _spin_unlock+0x2b/0x40
      [  798.845391]  [<ffffffffa0e06df0>] ? ll_file_open+0x0/0xc00 [lustre]
      

      Attachments

        Activity

          People

            wc-triage WC Triage
            jhammond John Hammond
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: