Data-on-MDT phase II (LU-10176)

[LU-11121] DoM: mdt take discard lock at cleanup stage Created: 05/Jul/18  Updated: 21/Aug/18  Resolved: 18/Aug/18

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.12.0

Type: Technical task Priority: Minor
Reporter: Joseph Gmitter (Inactive) Assignee: Mikhail Pershin
Resolution: Fixed Votes: 0
Labels: DoM2

Issue Links:
Related
is related to LU-11270 Racer is stuck on ldlm lock Resolved
Rank (Obsolete): 9223372036854775807

 Description   

Call mdt_dom_check_and_discard() after mdt_object_unlock() to avoid possible deadlock if some third lock is conflicting with both like in the scenario below:

  • thread1: mdt_object_lock() with some bits
  • thread2: take conflicting lock and wait
  • thread1: mdt_dom_check_and_discard() with bits conflicting with thread2 causes deadlock.


 Comments   
Comment by Joseph Gmitter (Inactive) [ 05/Jul/18 ]

Patch is at https://review.whamcloud.com/#/c/29930/

Comment by Gerrit Updater [ 18/Aug/18 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/29930/
Subject: LU-11121 mdt: take discard lock at cleanup stage
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 2506fa2a42b7ae542fae9346a9cc8a6ae271f5de

Comment by Peter Jones [ 18/Aug/18 ]

Landed for 2.12

Comment by Gerrit Updater [ 18/Aug/18 ]

Mike Pershin (mpershin@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33026
Subject: LU-11121 mdt: discard data after all object are put
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: b9e8e2b076537c120778f2523d286df8040d04e7

Generated at Sat Feb 10 02:41:07 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.