Whamcloud - gitweb
LU-16872 lod: reset llc_ostlist when using O_APPEND stripes 59/51559/4
authorThomas Bertschinger <bertschinger@lanl.gov>
Fri, 7 Jul 2023 14:57:40 +0000 (10:57 -0400)
committerOleg Drokin <green@whamcloud.com>
Sat, 19 Aug 2023 05:33:35 +0000 (05:33 +0000)
commit766b35a9700f36aa08b652fa9d18b890d34bf4a5
tree5307df9dae5873420870d70b51b508a3d2335d4f
parent0d0a419151ab32ceb7d75a2660a74be5ea168bc1
LU-16872 lod: reset llc_ostlist when using O_APPEND stripes

Files created with O_APPEND can have special striping set with the
parameters mdd.*.append_stripe_count and mdd.*.append_pool, and
should not inherit a list of OSTs to use from a parent directory
when these parameters are set. However, if a file is created with
O_APPEND and its create is handled by a kernel thread that has
previously created a file with a default list of OSTs, then those
defaults were erroneously applied to the O_APPEND file. This can
lead to the create returning EINVAL or to a crash.

This commit ensures that llc_ostlist is cleared when a file is
created with special append stripes.

Signed-off-by: Thomas Bertschinger <bertschinger@lanl.gov>
Change-Id: Ib2023e17c9ef31a2e029e09e67b257eb2c77b113
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/51559
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/lod/lod_object.c