Whamcloud - gitweb
LU-11690 lod: fix LBUG with wide striping 17/34917/2
authorPatrick Farrell <pfarrell@whamcloud.com>
Thu, 2 May 2019 13:06:58 +0000 (09:06 -0400)
committerOleg Drokin <green@whamcloud.com>
Sat, 8 Jun 2019 02:33:37 +0000 (02:33 +0000)
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.

Lustre-change: https://review.whamcloud.com/33708
Lustre-commit: f1ca2c0bd059e3606225127e5ff72b4db9a1ed6e

Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Id0240785792e7d4084ea6e53b44469a40e59043d
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/34917
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/lod/lod_lov.c

index 7434374..f4f2062 100644 (file)
@@ -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);