Alex Zhuravlev
authored
with OSP there is a risk of getting a lot of commit callbacks. say, 10K unlinks/sec on 4-striped files could result in 4*10K*5 = 200K commit callbacks. this patch implements another schema: every OSP registers own callback every second. this should result in 4*5 commit callbacks in the same situation. in case of forced sync the commit callback is registered unconditionally. the patch removes th_tags and th_ctx from struct thandle as they are not used anymore. this elimintates 3 allocations from every transaction: (lu_object.c:1714:keys_init()) kmalloced 'ctx->lc_value': 320 (update_records.c:1217:update_key_init()) kmalloced 'value': 408 (osp_dev.c:1807:osp_txn_key_init()) kmalloced 'value': 4 Lustre-change: https://review.whamcloud.com/17270 Lustre-commit: 0ba690a5 Change-Id: I460d5eccb585b166423d84d5c142af2e27751d8b Signed-off-by:Alex Zhuravlev <alexey.zhuravlev@intel.com> Reviewed-by:
Andreas Dilger <andreas.dilger@intel.com> Reviewed-by:
Lai Siyao <lai.siyao@intel.com> Signed-off-by:
Minh Diep <minh.diep@intel.com> Reviewed-on: https://review.whamcloud.com/29879 Tested-by: Jenkins Tested-by:
Maloo <hpdd-maloo@intel.com> Reviewed-by:
John L. Hammond <john.hammond@intel.com>
Name | Last commit | Last update |
---|---|---|
.. | ||
.gitignore | ||
Makefile.am | ||
barrier.c | ||
out_handler.c | ||
out_lib.c | ||
tgt_grant.c | ||
tgt_handler.c | ||
tgt_internal.h | ||
tgt_lastrcvd.c | ||
tgt_main.c | ||
update_records.c | ||
update_recovery.c | ||
update_trans.c |