Whamcloud - gitweb
LU-11625 ofd: handle upgraded filter_fid properly 27/33627/4
authorAndreas Dilger <adilger@whamcloud.com>
Wed, 7 Nov 2018 02:40:18 +0000 (19:40 -0700)
committerPeter Jones <pjones@whamcloud.com>
Thu, 3 Jan 2019 23:13:35 +0000 (23:13 +0000)
commit51a88bc3f04d0bc76272055ed4fe63138539ebd7
tree165e05822c62388cba1fe11f8c1a12727b578291
parent1499531d9e9fa14ee089a3e85bf8a8579636c60d
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.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ifef2292296236cb06ff7e8cd50caff4b133ebbe5
lustre/include/lustre_fid.h
lustre/include/uapi/linux/lustre/lustre_user.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