Whamcloud - gitweb
LU-12321 mdc: allow ELC for DOM file unlink 42/36442/10
authorMikhail Pershin <mpershin@whamcloud.com>
Fri, 27 Sep 2019 18:29:00 +0000 (21:29 +0300)
committerOleg Drokin <green@whamcloud.com>
Fri, 14 Feb 2020 05:49:24 +0000 (05:49 +0000)
commite07d4a58206756252c28b51048057c87a7cdb3c6
treefea29e98e09cb11535aaeaceb76e91f6027e2c90
parentebea7c87f758d843cf71fb5873b2955f6fbf9044
LU-12321 mdc: allow ELC for DOM file unlink

ELC is skipping DOM bit to prevent data flush when it
is not really needed. Meanwhile if lock bits are combined
that caused unlink slowdown because ELC is disabled for
whole lock if DOM bit exists.

This patch is simple approach which determines if inode has
dirty pages and allows ELC for DOM unlink if there are none.

Test result of mdtest_easy_delete on DoM that unlink for
zero-byte files demostrated 28% perforamnce improvements.

1 x AI400(4 x MDS/MDT) on 10 node challenges:
Without patch:
mdtest_easy_delete  96.564 kiops : time 649.36 seconds
With patch:
mdtest_easy_delete 123.630 kiops : time 454.82 seconds

Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: Ic5b2aed8c8c0884ee518a587a0c45ad54915f4fa
Reviewed-on: https://review.whamcloud.com/36442
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
lustre/include/obd.h
lustre/llite/namei.c
lustre/mdc/mdc_reint.c