From: Patrick Farrell Date: Thu, 2 May 2019 13:06:58 +0000 (-0400) Subject: LU-11690 lod: fix LBUG with wide striping X-Git-Tag: 2.12.54~93 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=f1ca2c0bd059e3606225127e5ff72b4db9a1ed6e LU-11690 lod: fix LBUG with wide striping When striping extremely widely (~1600+ stripes), we reach more than half of the theoretical limit of layout size, and LBUG. It is also possible to trigger this assert with multi-component PFL files, where all the components are below the stripe count limit, but together they exceed it. PFL makes asserting based on LOV_MAX_STRIPE_COUNT unworkable, so just remove the assert. Further work is planned to match up maximum allowed layout size with the real maximum EA size. Signed-off-by: Patrick Farrell Change-Id: Id0240785792e7d4084ea6e53b44469a40e59043d Reviewed-on: https://review.whamcloud.com/33708 Reviewed-by: Andreas Dilger Reviewed-by: Alex Zhuravlev Reviewed-by: James Simmons Tested-by: Jenkins Tested-by: Maloo --- diff --git a/lustre/lod/lod_lov.c b/lustre/lod/lod_lov.c index 3223e98..673ca5b 100644 --- a/lustre/lod/lod_lov.c +++ b/lustre/lod/lod_lov.c @@ -600,8 +600,6 @@ int lod_ea_store_resize(struct lod_thread_info *info, size_t size) { __u32 round = size_roundup_power2(size); - LASSERT(round <= - lov_mds_md_size(LOV_MAX_STRIPE_COUNT, LOV_MAGIC_V3)); if (info->lti_ea_store) { LASSERT(info->lti_ea_store_size); LASSERT(info->lti_ea_store_size < round);