Whamcloud - gitweb
LU-16501 tgt: skip free inodes in OST weights 90/49890/3
authorAndreas Dilger <adilger@whamcloud.com>
Fri, 3 Feb 2023 10:14:39 +0000 (03:14 -0700)
committerAndreas Dilger <adilger@whamcloud.com>
Fri, 3 Feb 2023 12:21:22 +0000 (05:21 -0700)
commitab24f031908d100146b2f2900ab88e99e689d236
treed804ab2a72e57627988dc69aecc42f66b5744246
parent9ddcdee2c8b9ec14986b93cf3180d946cd4869f7
LU-16501 tgt: skip free inodes in OST weights

In lu_tgt_qos_weight_calc() calculate the target weight consistently
with how the per-OST and per-OSS penalty calculation is done in
ltd_qos_penalties_calc().  Otherwise, the QOS weighting calculations
combine two different units, which incorrectly weighs allocations on
OST with more free inodes over those with more free space.

Fixes: d3090bb2b486 ("LU-11213 lod: share object alloc QoS code with LMV")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I1ccc52d7ad5dc440ae48403ba129efd6a0a51c33
lustre/include/lu_object.h
lustre/lmv/lmv_obd.c
lustre/lod/lod_qos.c
lustre/obdclass/lu_tgt_descs.c