Whamcloud - gitweb
LU-11625 ofd: handle upgraded filter_fid properly 58/33958/5
authorAlex Zhuravlev <bzzz@whamcloud.com>
Fri, 21 Dec 2018 09:27:31 +0000 (12:27 +0300)
committerOleg Drokin <green@whamcloud.com>
Fri, 15 Feb 2019 01:37:42 +0000 (01:37 +0000)
commite23385f9b0184462e42c2a00fc46d43650d6b1cc
tree667beb8b54db05a25cda19e7bf20f49c8c5d53cb
parentfb77f09ac8907059552eb5d606e9f8bcab580426
LU-11625 ofd: handle upgraded filter_fid properly

Since there have been several iterations of struct filter_fid stored
on disk, the current code wasn't checking for all of the possible
cases when trying to decide what action to take when accessing and
upgrading the xattr for new capabilities.

Properly check for the various different struct filter_fid sizes and
handle them appropriately.  Add a more verbose description of the
various cases so that this is more clear to others in the future.

Add decoding of filter_fid fields added for FLR in 2.11.

We should already be testing for upgrading the filter_fid xattr
from different OST versions in conf-sanity test_32d.

Lustre-change: https://review.whamcloud.com/33627
Lustre-commit: 51a88bc3f04d0bc76272055ed4fe63138539ebd7

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ifef2292296236cb06ff7e8cd50caff4b133ebbe5
Reviewed-on: https://review.whamcloud.com/33958
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/include/lustre/lustre_user.h
lustre/include/lustre_fid.h
lustre/lod/lod_internal.h
lustre/osd-ldiskfs/osd_handler.c
lustre/osd-ldiskfs/osd_internal.h
lustre/osd-ldiskfs/osd_scrub.c
lustre/utils/ll_decode_filter_fid.c