Whamcloud - gitweb
LU-13054 ldiskfs: htree_node wrongly granted 20/44120/3
authorYang Sheng <ys@whamcloud.com>
Sun, 26 Apr 2020 11:56:40 +0000 (19:56 +0800)
committerOleg Drokin <green@whamcloud.com>
Sun, 14 Nov 2021 05:49:22 +0000 (05:49 +0000)
commit02dfee29d46d3b7af7723d1df72723876b5b6eca
tree2addefd85d612794e9d16f50afb4eb38e1c93b8a
parent679ed2f62da49bfbc5f91e37d55b9edd2583f7d1
LU-13054 ldiskfs: htree_node wrongly granted

The thread was waken up accidently. So need check
whether the lock granted or not after wake up.
Also fix issue that major always set to 0 since
hbit initialize incorrect. The performace should be
impacted especial operate in big directory.

kernel BUG at lustre/ldiskfs/htree_lock.c:429!
 Call Trace:
 htree_node_release_all+0x5a/0x80 [ldiskfs]
 htree_unlock+0x22/0x70 [ldiskfs]
 osd_index_ea_delete+0x30e/0xb10 [osd_ldiskfs]
 lod_sub_delete+0x1c8/0x460 [lod]
 lod_delete+0x24/0x30 [lod]
 __mdd_index_delete_only+0x194/0x250 [mdd]
 __mdd_index_delete+0x46/0x290 [mdd]
 mdd_unlink+0x5f8/0xaa0 [mdd]
 mdo_unlink+0x46/0x48 [mdt]
 mdt_reint_unlink+0xbed/0x14b0 [mdt]

Lustre-change: https://review.whamcloud.com/38371
Lustre-commit: 4597a2b4fc33711f66eb1c21fc125d028bd3f2ec

Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I5972961bc78b349214c6756642717d126f0c4b26
Reviewed-on: https://review.whamcloud.com/44120
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
ldiskfs/kernel_patches/patches/rhel7.7/ext4-pdirop.patch