[LU-10131] Update inode attributes on unlink Created: 17/Oct/17  Updated: 23/Jun/19  Resolved: 25/Oct/17

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.11.0, Lustre 2.10.2

Type: Bug Priority: Minor
Reporter: Patrick Farrell (Inactive) Assignee: Patrick Farrell (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-2857 2.1.4<->2.4.0 interop: sanity test_76... Resolved
is related to LU-7925 ll_d_iput() can clear i_nlink for an ... Resolved
is related to LU-2036 sanity.sh test_76: fails with lod/osp... Resolved
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

Currently, the last unlink of an inode sends back the inode attributes from the MDS, but the client ignores them. This results in i_nlink on the inode (in memory on the client) staying at one after it has been fully unlinked, which means it stays in memory until discarded from pressure. This is also problematic for wrapfs atop Lustre, would like to use the nlink count to be certain the file is really gone.

The only attribute which is relevant on a fully unlinked inode is i_nlink, so we just read that out. Patch coming momentarily.



 Comments   
Comment by Gerrit Updater [ 17/Oct/17 ]

Patrick Farrell (paf@cray.com) uploaded a new patch: https://review.whamcloud.com/29651
Subject: LU-10131 llite: Update i_nlink on unlink
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 14f7e4c59437b52222136382e12773aa5e353b33

Comment by Gerrit Updater [ 25/Oct/17 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/29651/
Subject: LU-10131 llite: Update i_nlink on unlink
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 947b22b08d3725852a811a9e330562dd986d7336

Comment by Peter Jones [ 25/Oct/17 ]

Landed for 2.11

Comment by Gerrit Updater [ 25/Oct/17 ]

Minh Diep (minh.diep@intel.com) uploaded a new patch: https://review.whamcloud.com/29785
Subject: LU-10131 llite: Update i_nlink on unlink
Project: fs/lustre-release
Branch: b2_10
Current Patch Set: 1
Commit: b819421c7873dee9b6c9e904776510d5c7896b12

Comment by Gerrit Updater [ 26/Oct/17 ]

John L. Hammond (john.hammond@intel.com) merged in patch https://review.whamcloud.com/29785/
Subject: LU-10131 llite: Update i_nlink on unlink
Project: fs/lustre-release
Branch: b2_10
Current Patch Set:
Commit: 00fea22a18bf1bec71869be2fc5c661ed5d99b4d

Comment by Andreas Dilger [ 23/Nov/17 ]

The patch http://review.whamcloud.com/19164 in LU-7925 was the one that removed the i_nlink update.

Comment by Patrick Farrell (Inactive) [ 24/Nov/17 ]

Yes, I know - Andrew and I hashed out the new patch together. FWIW, I don't think test 76 could pass with that approach to the i_nlink update, though I might be wrong.

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