Whamcloud - gitweb
LU-8680 osc: soft lock - osc_makes_rpc() 26/23326/6
authorBobi Jam <bobijam.xu@intel.com>
Mon, 24 Oct 2016 05:11:25 +0000 (13:11 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Fri, 28 Oct 2016 23:49:32 +0000 (23:49 +0000)
commita687000d2400fee88f122526444700502cb57fe4
tree3302ca48fc1fb2c294a8c7f9bbfea41b3526c4ad
parent165c3082079d48f70b6e340ad23514e0e7524978
LU-8680 osc: soft lock - osc_makes_rpc()

It is possible that an osc_extent contains more than 256 chunks, and
the IO engine won't add this extent in one RPC
(try_to_add_extent_for_io) so that osc_check_rpcs() run into a loop
upon this extent and never break.

This patch changes osc_max_write_chunks() to make sure the value
can cover all possible osc_extent, so that all osc_extent will be
added into one RPC.

This patch also add another field erd_max_extents in extent_rpc_data
to make sure not to add too many fragments in a single RPC.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: Icf58a6bd04655bb9aa5589dd002e118c21ed932d
Reviewed-on: http://review.whamcloud.com/23326
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/osc/osc_cache.c