Whamcloud - gitweb
LU-11303 quota: enforce block quota for chgrp
authorHongchao Zhang <hongchao@whamcloud.com>
Fri, 14 Jan 2022 08:39:24 +0000 (16:39 +0800)
committerAndreas Dilger <adilger@whamcloud.com>
Tue, 18 Jan 2022 06:41:37 +0000 (06:41 +0000)
commitfc39ebc983cb4eadc441f14cbe27060c7d5cdf80
tree4947fdf8c868ba6d216228aa3022d56503e6a5ce
parentfe81fa253e1c142b0c77488e293dabc585c878d0
LU-11303 quota: enforce block quota for chgrp

In patch https://review.whamcloud.com/30146 "LU-5152 quota: enforce
block quota for chgrp", problems were introduced due to synchronous
requests from the MDS to the OSS to change the quota assignment of
files during chgrp operations. However, in some cases, the OSTs are
themselves out of grant and may send a quota request to the MDS,
which may result in a deadlock. Another issue is the slow performance
caused by the synchronous operation between MDT and OSTs.

This patch drops the synchronous RPC requirement of the original
patch #30146 to avoid this problem.

Previously, problems in quota tracking related to chgrp were introduced
due to synchronous RPCs from the MDS to the OSS when changing the group
ownership of objects for quota tracking since

Lustre-change: https://review.whamcloud.com/33996
Lustre-commit: 83f5544d8518ad12ea49e27829fff8f2739b86e2

Fixes: 8a71fd5061b ("LU-5152 quota: enforce block quota for chgrp")
Signed-off-by: Hongchao Zhang <hongchao@whamcloud.com>
Change-Id: I40556b9e8a0628eb18aa806d2f6b3dfb9b53e874
Reviewed-on: https://review.whamcloud.com/46111
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
13 files changed:
lustre/include/dt_object.h
lustre/include/lustre_quota.h
lustre/llite/llite_lib.c
lustre/mdd/mdd_object.c
lustre/osd-ldiskfs/osd_handler.c
lustre/osd-ldiskfs/osd_quota.c
lustre/osd-zfs/osd_handler.c
lustre/osd-zfs/osd_object.c
lustre/osd-zfs/osd_quota.c
lustre/quota/qsd_handler.c
lustre/target/out_lib.c
lustre/target/tgt_lastrcvd.c
lustre/tests/sanity-quota.sh