Whamcloud - gitweb
LU-3308 mdc: allow setting readdir RPC size parameter 88/26088/10
authorAndreas Dilger <andreas.dilger@intel.com>
Sun, 19 Mar 2017 06:45:55 +0000 (00:45 -0600)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 2 May 2017 01:57:46 +0000 (01:57 +0000)
commit664bad91b5c0e2a5c9423d4b524d9906db9ef9b5
treed866859412e75f454a8df5b9ea153b8e8b98efd9
parentbdd470ff9765cb81d94b888ee1067e1c420303bc
LU-3308 mdc: allow setting readdir RPC size parameter

Allow the mdc.*.max_pages_per_rpc tunable to set the MDS bulk
readdir RPC size, rather than always using the default 1MB RPC
size.  The tunable is set in the MDC, as it should be, rather
than in the llite superblock, which requires extra code just to
get it up from the MDC's connect_data only to send it back down.
The RPC size could be tuned independently if different types of
MDSes are used (e.g. local vs. remote).

Remove the md_op_data.op_max_pages and ll_sb_info.ll_md_brw_pages
fields that previously were used to pass the readdir size from
llite to mdc_read_page().  Reorder some 32-bit fields in md_op_data
to avoid struct holes.

Remove lprocfs_obd_rd_max_pages_per_rpc() as it is no longer used.
Move osc_obd_max_pages_per_rpc_seq_write() to obdclass along with
lprocfs_obd_max_pages_per_rpc_seq_show().

Remove debug messages from fid_flatten*() since this clutters up
the debug logs, and is redundant with other debug messages.

Fix test_24v's calculation for the number of RPCs being sent, so
that it will be correct even if the readdir RPC size is modified.
Register cleanup trap to avoid leaving lots of files behind.

Merge "slow" sanity test_24D into test_24v since they both need to
have many files in a single directory, which avoids duplication.

Change calc_osc_stats() and calc_llite_stats() into calc_stats()
to be used in test_24v and other tests.  Similarly, clear_osc_stats()
and clear_llite_stats() are consolidated into clear_stats().

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ibd814cea3b788129be8aca2866d1bb139b3ebbe5
Reviewed-on: https://review.whamcloud.com/26088
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
20 files changed:
lustre/include/lprocfs_status.h
lustre/include/lustre_fid.h
lustre/include/lustre_net.h
lustre/include/obd.h
lustre/llite/dir.c
lustre/llite/lcommon_cl.c
lustre/llite/llite_internal.h
lustre/llite/llite_lib.c
lustre/llite/llite_nfs.c
lustre/llite/statahead.c
lustre/mdc/lproc_mdc.c
lustre/mdc/mdc_request.c
lustre/mdt/mdt_handler.c
lustre/obdclass/lprocfs_status.c
lustre/osc/lproc_osc.c
lustre/ptlrpc/import.c
lustre/ptlrpc/sec_bulk.c
lustre/tests/sanity.sh
lustre/tests/sanityn.sh
lustre/tests/test-framework.sh