Whamcloud - gitweb
LU-5835 ptlrpc: Introduce iovec to bulk descriptor 25/12525/22
authorAmir Shehata <amir.shehata@intel.com>
Fri, 31 Oct 2014 17:08:14 +0000 (10:08 -0700)
committerOleg Drokin <oleg.drokin@intel.com>
Thu, 11 Jun 2015 18:33:05 +0000 (18:33 +0000)
commit7cb2e4b642b51b42f9f3a448251774929073e17c
tree3b0de42094b9df26bef23ede763be506bf2b6a0b
parentaf8129c6039ecf3e23b722270ddbb786248a5164
LU-5835 ptlrpc: Introduce iovec to bulk descriptor

Added a union to ptlrpc_bulk_desc for KVEC and KIOV buffers.
bd_type changed to be a bit mask.
Bits are set in bd_type to specify {put,get}{source,sink}{kvec,kiov}
changed all instances in the code to access the union properly
ASSUMPTION: all current code only works with KIOV and new DNE code
to be added will introduce a different code path that uses IOVEC

As part of the implementation buffer operations are added
as callbacks to be defined by users of ptlrpc.  This enables
buffer users to define how to allocate and release buffers.

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: I86d718a668e7c0b422b96b393a6a69e5b8e89291
Reviewed-on: http://review.whamcloud.com/12525
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
18 files changed:
lustre/include/lustre_net.h
lustre/mdc/mdc_request.c
lustre/mgc/mgc_request.c
lustre/mgs/mgs_nids.c
lustre/osc/osc_page.c
lustre/osc/osc_request.c
lustre/osp/osp_object.c
lustre/ptlrpc/client.c
lustre/ptlrpc/events.c
lustre/ptlrpc/gss/gss_bulk.c
lustre/ptlrpc/gss/gss_krb5_mech.c
lustre/ptlrpc/niobuf.c
lustre/ptlrpc/pers.c
lustre/ptlrpc/ptlrpc_internal.h
lustre/ptlrpc/sec_bulk.c
lustre/ptlrpc/sec_plain.c
lustre/quota/qsd_request.c
lustre/target/tgt_handler.c