Whamcloud - gitweb
LU-8998 lod: accomodate to composite layout 23/24823/12
authorNiu Yawei <yawei.niu@intel.com>
Wed, 11 Jan 2017 13:58:05 +0000 (08:58 -0500)
committerJinshan Xiong <jinshan.xiong@intel.com>
Thu, 9 Feb 2017 18:54:59 +0000 (18:54 +0000)
commita11a1e4c1484cb93f99de73d5679eb059021eb3d
tree4690854c3f548770b5075e3d880f11dd7bd0ea22
parent25397a808489671116c8732e8781df8e9b87b03d
LU-8998 lod: accomodate to composite layout

Modify the LOD to make it support the composite layout:

- Introduced lod_layout_component structure to represent each
  individual layout component, and added ldo_comp_entries and
  ldo_comp_cnt in the lod_object structure to hold the striping
  information for composite layout.

- Object allocation code is adjusted to not only check the used
  OSTs in this round of allocation, but also the used OSTs in
  the existing layout components.

- Support special xattr names to add/set/delete layout component(s).

- Store default layout xattr on the filesystem root inode.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I73736df1cd529a3b0e32b2bb6a09b5c436e08c86
Reviewed-on: https://review.whamcloud.com/24823
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
17 files changed:
libcfs/include/libcfs/libcfs_debug.h
lustre/include/lustre/lustre_idl.h
lustre/include/lustre/lustre_user.h
lustre/lod/lod_dev.c
lustre/lod/lod_internal.h
lustre/lod/lod_lov.c
lustre/lod/lod_object.c
lustre/lod/lod_qos.c
lustre/mdc/mdc_request.c
lustre/mdd/mdd_object.c
lustre/mdt/mdt_handler.c
lustre/mdt/mdt_internal.h
lustre/mdt/mdt_lib.c
lustre/mdt/mdt_open.c
lustre/mdt/mdt_xattr.c
lustre/ptlrpc/layout.c
lustre/ptlrpc/pack_generic.c