Whamcloud - gitweb
Patrick Farrell [Mon, 7 Feb 2022 18:51:27 +0000 (18:51 +0000)]
Revert "EX-3637 osd-ldiskfs: revalidate nonrotational state"
This reverts commit
5a1da772cf1721967d9dae55fae3d19aebba70f8.
Change-Id: I576d4cbd9794e4d4c4d941929e9c9e35ec01212a
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46473
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alena Nikitenko [Thu, 3 Feb 2022 01:47:50 +0000 (04:47 +0300)]
EX-3342 tests: fix Lustre ver in skip checks in sanity-flr
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanity-flr test 50c was modified.
Fixes:
f2d1c4ee463 ("LU-14647 flr: mmap write/punch does not stale other mirrors")
Test-Parameters: env=ONLY="50c" serverversion=2.12.6-ddn42 \
testlist=sanity-flr
Test-Parameters: trivial env=ONLY="50c" testlist=sanity-flr
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: Ia210c88586827bf8a9289cd6f9dd96c5e0cdc319
Reviewed-on: https://review.whamcloud.com/46440
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alena Nikitenko [Thu, 3 Feb 2022 02:37:09 +0000 (05:37 +0300)]
EX-3342 tests: fix version skip checks in sanity-quota
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanity-quota test 78 was modified.
Fixes:
9abc60b6782 ("LU-15167 quota: fallocate send UID/GID for quota")
Test-Parameters: env=ONLY="78" serverversion=2.12.6-ddn42 \
testlist=sanity-quota
Test-Parameters: trivial env=ONLY="78" testlist=sanity-quota
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: If9022a5006c6d595e12c037aecd5c6eff0096725
Reviewed-on: https://review.whamcloud.com/46443
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Thu, 27 Jan 2022 21:43:21 +0000 (16:43 -0500)]
LU-12585 mdt: Add read/write latency to MDT stats
The MDT does not currently record latency stats for reads
and writes.
Add this, and change the naming to be the same as for the
OFD.
Note on this:
Existing naming on the MDT uses "read/write" instead of
"{read,write}_bytes", which is inconsistent with OFD and
also inconsistent within the MDT, since other ops without
the "_bytes" suffix are latency.
It's not deal to change the names of existing stats, but I
decided this was less problematic than leaving them
inconsistent.
Lustre-change: https://review.whamcloud.com/46229/
Lustre-commit:
ab1f7876b4b9e81738b1357395289aab76124255 (tbd)
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I7b7a5742678cbe0269086f37877833e877a5ca5f
Reviewed-on: https://review.whamcloud.com/46230
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Thu, 27 Jan 2022 21:40:03 +0000 (16:40 -0500)]
LU-12585 obdfilter: Use actual I/O bytes in stats
Currently the obdfilter stats note the number of bytes
requested by the client rather than the number of bytes
actually read or written. This is particularly confusing
for reads because clients can request more data than
exists and some applications do this normally.
This results in statistics that can be off by almost any
amount from the actual number of bytes read. This patch
moves the stats to be collected just before commit, which
allows the true number of bytes to be recorded but does not
include the commit time in the time stats. (Since commit
time is not part of the operation latency as experienced by
the client.)
Lustre-change: https://review.whamcloud.com/46075/
Lustre-commit:
34cbc31a9e73498d7f9324e942c85fbc44791c83 (tbd)
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I81fe9a6afdad5b48e8421f4aa72b8ef10a0eee93
Reviewed-on: https://review.whamcloud.com/46076
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Cyril Bordage [Wed, 2 Feb 2022 18:56:44 +0000 (10:56 -0800)]
LU-14074 scripts: automatic LNet unconfigure
After using the lnetctl utility a reference count is taken on the LNet
modules. lnetctl lnet unconfigure is called in order for
lustre_rmmod to remove the LNet module.
Lustre-change: https://review.whamcloud.com/41698
Lustre-commit:
ebdf71a2df044c441ff633dbfc2f463520892bfb
Signed-off-by: Cyril Bordage <cbordage@whamcloud.com>
Change-Id: I7251a0c62c45da7b3cb0fddea97394b32cb6902a
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46426
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Thu, 3 Feb 2022 00:23:25 +0000 (17:23 -0700)]
RM-620 build: New tag 2.14.0-ddn34
New tag 2.14.0-ddn34
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ib79e7cb1fc5ae91aff6038db52979b1f17c78a59
Alena Nikitenko [Tue, 28 Dec 2021 13:58:30 +0000 (16:58 +0300)]
EX-3342 tests: fix Lustre ver in skip checks in recovery-small
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Recovery-small tests 110k,136,138,139,143 were
modified.
Fixes:
80eb31f5367 ("LU-11761 fld: let's caller to retry FLD_QUERY")
Fixes:
5bf8c0eaf91 ("LU-12098 mdd: explicitly clear changelogs on deregister")
Fixes:
18a53eddc08 ("LU-12846 mdd: return error while delete failed")
Fixes:
c2d5af902d8 ("LU-13061 osp: check catlog FID after reading in")
Fixes:
18a53eddc08 ("LU-12846 mdd: return error while delete failed")
Test-Parameters: env=ONLY="110k 136 138 139 143" serverversion=2.10.8 \
serverdistro=el7.6 testlist=recovery-small
Test-Parameters: env=ONLY="110k 136 138 139 143" \
clientversion=2.12.6-ddn42 testlist=recovery-small
Test-Parameters: env=ONLY="110k 136 138 139 143" \
serverversion=2.12.6-ddn42 testlist=recovery-small
Test-Parameters: trivial env=ONLY="110k 136 138 139 143" \
testlist=recovery-small
Lustre-change: https://review.whamcloud.com/45947
Lustre-commit:
4a981ce7975a499680bc53c374dd002bb89fb515
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: Id86d1d0fbbb5eca5aec9b6fcbf5baae8941573e1
Reviewed-on: https://review.whamcloud.com/46418
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alena Nikitenko [Tue, 28 Dec 2021 14:37:20 +0000 (17:37 +0300)]
EX-3342 tests: fix Lustre ver in skip checks in replay-single
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Replay-single tests 2d,80c,80d were modified.
Lustre-change: https://review.whamcloud.com/45948
Lustre-commit:
a5f7c423b685517a8ff805f3602f56aec3fdedda
Test-Parameters: env=ONLY="2d 80c 80d" serverversion=2.10.8 \
serverdistro=el7.6 testlist=replay-single
Test-Parameters: env=ONLY="2d 80c 80d" clientversion=2.12.6-ddn42 \
testlist=replay-single
Test-Parameters: env=ONLY="2d 80c 80d" serverversion=2.12.6-ddn42 \
testlist=replay-single
Test-Parameters: trivial env=ONLY="2d 80c 80d" testlist=replay-single
Fixes:
c44b6a5f36c ("LU-10143 tests: Add version check for interop")
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: I6491e8ef2828ed73d049dd97a240298c08670daf
Reviewed-on: https://review.whamcloud.com/46419
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alena Nikitenko [Thu, 18 Nov 2021 13:41:13 +0000 (16:41 +0300)]
EX-3342 tests: correct Lustre version in skip checks in sanity-flr
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanity-flr tests 44c and 207 were modified.
Lustre-change: https://review.whamcloud.com/45607
Lustre-commit:
3b31d79a53a7daebcd214b83b4d0a20d9a570eba
Test-Parameters: env=ONLY="44c 207" serverversion=2.12.6-ddn3 serverdistro=el7.7 testlist=sanity-flr
Test-Parameters: env=ONLY="44c 207" clientversion=2.12.6-ddn42 testlist=sanity-flr
Test-Parameters: env=ONLY="44c 207" serverversion=2.12.6-ddn42 testlist=sanity-flr
Test-Parameters: trivial env=ONLY="44c 207" testlist=sanity-flr
Fixes:
e317b4ef681 ("LU-13730 lod: don't confuse stale with primary flag")
Fixes:
6c3a4fad094 ("LU-14526 flr: mirror split downgrade SOM")
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: Ic479c21f0d6de644b466291ca82ceb4bbc498d93
Reviewed-on: https://review.whamcloud.com/46424
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alena Nikitenko [Tue, 28 Dec 2021 17:26:53 +0000 (20:26 +0300)]
EX-3342 tests: fix Lustre ver in skip checks in sanity-flr
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Sanity-flr tests 0b, 0h, 37 were modified.
Performing test steps on versions >= 2.12.56 or between
versions 2.12.2 and 2.12.50 makes no sense for b_es5_2
branch, because all Lustre tags on this branch are lower
than 2.12.50.
Similar checks happen in all three of the modified tests.
Checks in tests 0b and 0h will be changed to >= 2.12.3.1
which is a tag for the patches that added these tests to
this branch. Test 37 check doesn't need elif statement,
because original test excludes versions between 2.12.50
and 2.12.52, which doesn't make sense for b_es5_2 branch.
It will be replaced with else statement.
Fixes:
3a8d96a1ebf ("LU-11022 lfs: remove mirror by pool name")
Fixes:
79346930b34 ("LU-11485 lod: disallow setting the last non-stale mirror as stale")
Fixes:
24f181513fb ("LU-10258 lfs: lfs mirror copy command")
Lustre-change: https://review.whamcloud.com/45949
Lustre-commit:
896b18bf3dd169641147ad382314f86d482ad670
Test-Parameters: env=ONLY="0b 0h 37" serverversion=2.10.8 \
serverdistro=el7.6 testlist=sanity-flr
Test-Parameters: trivial env=ONLY="0b 0h 37" testlist=sanity-flr
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: Ie417f72b7ccafff600a762f78f5c2c1605e00221
Reviewed-on: https://review.whamcloud.com/45949
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46414
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alena Nikitenko [Wed, 29 Dec 2021 11:47:45 +0000 (14:47 +0300)]
EX-3342 tests: fix Lustre ver in skip checks in sanity
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanity tests 24z,27M,36g were modified.
Fixes:
9cbefa99f23 ("LU-12037 mdt: add option for cross-MDT rename")
Fixes:
3c0733aea94 ("LU-9341 lod: Add special O_APPEND striping")
Fixes:
5456b1bdbf9 ("LU-10496 tgt: move FMD handling from OFD to target")
Test-Parameters: env=ONLY="24z 27M 36g" serverversion=2.10.8 \
serverdistro=el7.6
Test-Parameters: env=ONLY="24z 27M 36g" clientversion=2.12.6-ddn42
Test-Parameters: env=ONLY="24z 27M 36g" serverversion=2.12.6-ddn42
Test-Parameters: trivial env=ONLY="24z 27M 36g"
Lustre-change: https://review.whamcloud.com/45951
Lustre-commit:
1c8ed467169e27302ec53c43751496c31de2f51a
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: I151d9a0a90a27f1b47a567b40c6f1f4ea641420a
Reviewed-on: https://review.whamcloud.com/46407
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Tue, 1 Feb 2022 17:46:28 +0000 (09:46 -0800)]
LU-15417 build: find the new path for MOFED 5.5
The path of the mofed header files has change to
/usr/src/ofa_kernel/x86_64/<kernel>,
so we cannot assume it's /usr/src/ofa_kernel/default.
Besides updating lbuild, we also need to update
lustre-lnet.m4 and lustre.spec.in.
Lustre-change: https://review.whamcloud.com/46383
Lustre-commit: TBD (from
a770658032bfe2717a689b3d6346e6b98e5cdeff)
Test-Parameters: trivial
Change-Id: Iab42ce9e458f78b0dc0233ac6fd23a1760be5324
Fixes:
0dbbe482148 ("LU-15417 build: build MOFED 5.5")
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46412
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Nathaniel Clark <nclark@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Tue, 1 Feb 2022 08:37:49 +0000 (01:37 -0700)]
RM-620 build: New tag 2.14.0-ddn33
New tag 2.14.0-ddn33
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Id4409efdeeed893c50e9685ce6c1cb26478855fb
Andreas Dilger [Fri, 28 Jan 2022 05:14:49 +0000 (22:14 -0700)]
LU-13335 ldiskfs: add projid to debug logs
There is virtually no tracking of projid changes in osd-ldiskfs,
which makes it very difficult to debug operations therein.
Add some minimal debugging on the client and servers to print
the projid when it is changed, along with the affected FID.
Lustre-change: https://review.whamcloud.com/46369
Lustre-commit: TBD
Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ibcf3f09ee243ebe052c8f9119383897072ce7057
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46373
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alex Zhuravlev [Mon, 27 Apr 2020 04:52:01 +0000 (07:52 +0300)]
LU-13195 osp: track destroyed OSP object
retain destroyed OSP objects in memory to prevent races when
in-flight destroyed is passed by read or attr_get leading to
incorrect local states.
also block operations to such an object with -ENOENT.
Lustre-change: https://review.whamcloud.com/38385
Lustre-commit:
f5a8f1bcf5563f96cf6ba0e5de5a99a1ea524cc6
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ied59f1a95458e8890249b92d4efc38e258a7e3cf
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-on: https://review.whamcloud.com/46338
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alex Zhuravlev [Mon, 27 Sep 2021 13:28:50 +0000 (16:28 +0300)]
LU-13195 osp: osp_send_update_req() should check generation
and don't send requests depending on just failed one
Lustre-change: https://review.whamcloud.com/45042
Lustre-commit:
dff1e0d21c8c6bb20d63669252190795198bc49f
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I27a2b21130e33287168204ad829c0a53002b517e
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46337
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alena Nikitenko [Mon, 27 Dec 2021 15:41:50 +0000 (18:41 +0300)]
EX-3342 tests: fix Lustre version in skip checks in conf-sanity
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Conf-sanity test_126 was modified.
Fixes:
efd1b764bac ("LU-11814 obd: Crashed while mount in parallel")
Test-Parameters: env=ONLY="126" serverversion=2.10.8 serverdistro=el7.6 \
testlist=conf-sanity
Test-Parameters: env=ONLY="126" clientversion=2.12.6-ddn42 testlist=conf-sanity
Test-Parameters: env=ONLY="126" serverversion=2.12.6-ddn42 testlist=conf-sanity
Test-Parameters: trivial env=ONLY="126" testlist=conf-sanity
Lustre-change: https://review.whamcloud.com/45942/
Lustre-commit:
5f2b47b4d9fb4625290c9fa498c776b3df15ceb9
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: I953be8ec00e28b09eb492ffa24c03c50430f59df
Reviewed-on: https://review.whamcloud.com/46365
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Mikhail Pershin [Fri, 28 Jan 2022 20:39:25 +0000 (23:39 +0300)]
EX-3253 iokit: correct device name in ec_using_srv_nid()
Patch changes in ec_using_srv_nid():
- use 'oscname' instead of 'ocsname', that also fixes typo
introduced by EX-1873
- use explicit --device parameter for echo_client setup, that
was missed in EX-1873 and completes its work
Test-Parameters: trivial testlist=obdfilter-survey env=ONLY=3a
Fixes:
aba6201da5 (EX-1873 iokit: fix the obsolete usage of cfg_device)
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I661a58299adfba09983ec73f9801726789d79f4a
Reviewed-on: https://review.whamcloud.com/46366
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Bobi Jam [Wed, 26 Jan 2022 19:05:55 +0000 (14:05 -0500)]
LU-14713 llite: tighten condition for fault not drop mmap_sem
As __lock_page_or_retry() indicates, filemap_fault() will return
VM_FAULT_RETRY without releasing mmap_sem iff flags contains
FAULT_FLAG_ALLOW_RETRY and FAULT_FLAG_RETRY_NOWAIT.
So ll_fault0() should pass in FAULT_FLAG_ALLOW_RETRY |
FAULT_FLAG_RETRY_NOWAIT in ll_filemap_fault() so that when it
returns VM_FAULT_RETRY, we can pass on trying normal fault
under DLM lock as mmap_sem is still being held.
While in Linux 5.1 (
6b4c9f4469819) FAULT_FLAG_RETRY_NOWAIT is enough
to not drop mmap_sem when failed to lock the page.
Lustre-change: https://review.whamcloud.com/44715
Lustre-commit:
81aec05103558f57adb10fd319847304cdf44aa7
Fixes:
87865e4ae9 ("LU-13182 llite: Avoid eternel retry loops with MAP_POPULATE")
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I9420c587301722b597155558657577349a8141e4
Reviewed-on: https://review.whamcloud.com/46322
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Sat, 29 Jan 2022 05:14:40 +0000 (00:14 -0500)]
LU-15502 llite: set default LMV hash type with 2.12 MDS
If default LMV hash type is CRUSH, or unset, it should be converted
to fnv_16_64, because 2.12 MDS doesn't understand this.
Fix LMV_HASH_FLAG_KNOWN to match actual known flags.
Lustre-change: https://review.whamcloud.com/46378/
Lustre-commit: TBD (from
420337ba103433cc194822aec0da3516638ade6b)
Test-Parameters: testlist=sanity env=ONLY=300 mdtcount=2 serverversion=2.12.6-ddn42
Fixes:
0a1cf8da8069 ("LU-11025 dne: introduce new directory hash type: "crush")
Fixes:
bb60caa1c6e7 ("LU-14459 lmv: change default hash type to crush")
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Ie2ad5a456040dcd01bc2c5ab96db52bf944abbd2
Reviewed-on: https://review.whamcloud.com/46381
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Yang Sheng [Sat, 29 Jan 2022 14:24:17 +0000 (22:24 +0800)]
LU-15503 quota: fix list entry usage
Fetch next list entry.
Lustre-change: https://review.whamcloud.com/46380
Lustre-commit: TBD (from
48903591fe31735391564ee36ca6723f2aa5ac18)
Fixes:
d527e81246 (LU-15283 quota: deadlock between reint & lquota_wb)
Test-Parameters: trivial mdtcount=4 mdscount=2 testlist=sanity-quota
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I86befdfaa96151a6fd61902ffbf43ee8e5cae8cb
Reviewed-on: https://review.whamcloud.com/46396
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Mon, 31 Jan 2022 22:06:00 +0000 (15:06 -0700)]
LU-14724 tbf: fix backport of patch
Backport of LU-14724 patch https://review.whamcloud.com/43925
was based on an old version of the patch on master that had
later changes applied. Use newer version of change.
Test-Parameters: trivial testlist=sanityn env=ONLY=77o,ONLY_REPEAT=100
Fixes:
345f0d8e56c4 ("LU-14724 nrs: TBF rule list broken when change rule rank")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ieb6b2fc4d48350dba509d1a4ee7a97ca7fba886a
Reviewed-on: https://review.whamcloud.com/46401
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
John L. Hammond [Mon, 31 Jan 2022 16:32:10 +0000 (10:32 -0600)]
EX-4695 lipe: remove unneeded build utilities
Remove the unused lipe/ specific build utilities lipe_build,
lipe_c_check, lipe_install, lipe_install_build_deps, prepare_build.sh,
and supporting files.
Test-Parameters: trivial testlist=hot-pools,sanity-lipe
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: If3469beb6d1efa3baedc38f2707d7e92683802f3
Reviewed-on: https://review.whamcloud.com/46393
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
John L. Hammond [Fri, 28 Jan 2022 19:16:46 +0000 (13:16 -0600)]
EX-4694 lipe: remove clownfish
Remove the unused clownfish RPM.
Test-Parameters: trivial testlist=hot-pools,sanity-lipe
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: I0e858e431189fa134dc7979db7bed89e611c9e0a
Reviewed-on: https://review.whamcloud.com/46392
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
John L. Hammond [Fri, 28 Jan 2022 18:38:53 +0000 (12:38 -0600)]
EX-4683 lipe: remove lipe_test
Remove the unused utilities lipe_test, lipe_test_lauch,
lipe_test_console, lipe_test_scheduler and lipe_virt. Remove
supporting files. Remove the lipe-pyltest RPM.
Test-Parameters: trivial testlist=hot-pools,sanity-lipe
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: I365c6fb6995a5029a397499b36deefc5996e4507
Reviewed-on: https://review.whamcloud.com/46363
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Bobi Jam [Thu, 25 Nov 2021 10:39:22 +0000 (18:39 +0800)]
LU-15278 mdt: protect layout xattr
During layout change, the layout xattr could be simultaneously
used by others.
This patch put the server LOVEA access in the protection of
mdt_object::mot_lov_mutex.
Lustre-change: https://review.whamcloud.com/45663
Lustre-commit: TBD (from
48bb7206fb656a35283ea7eefdec208dd6c42078)
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: Iabad4a3211b7ef74592d92b86082201687964ab2
Reviewed-on: https://review.whamcloud.com/46262
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46327
Alex Zhuravlev [Mon, 19 Apr 2021 05:42:26 +0000 (08:42 +0300)]
LU-14621 mdd: fix lock-tx order in mdd_xattr_merge()
to follow common transaction-first-then-locks rule.
Lustre-change: https://review.whamcloud.com/43366
Lustre-commit:
b7bd4e3422935fec82d13348d90ec205ac2f4da4
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I437c919e498781b8d5dc653bf90aac799df4882a
Reviewed-on: https://review.whamcloud.com/46235
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Patrick Farrell [Wed, 26 Jan 2022 18:46:03 +0000 (13:46 -0500)]
LU-14828 tests: Remove extra debug
Accidentally committed 398m with extra debug.
This is sometimes causing OOMs in testing, and it's a
mistake anyway.
Lustre-change: https://review.whamcloud.com/44175
Lustre-commit:
b6dda827fbcf8e4e20526e1b22bfb44af3784e67
Fixes:
cba07b68f9 ("LU-13798 llite: parallelize direct i/o issuance")
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I734aa3a952d2c085b3fc0014af1bdc0e881000e6
Reviewed-on: https://review.whamcloud.com/46321
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sergey Cheremencev [Mon, 27 Dec 2021 16:45:51 +0000 (19:45 +0300)]
LU-13639 tests: increase limit in sanity-quota t_2
If limit is equal to the least_qunit, slave target may
preacquire more quota while creating "limit number" of files
causing EDQUOT. Change limit from soft_qunit to 2 soft_qunit.
The patch also changes test behaviour - createmany is devided
to 2 parts. Firstly, it creates (limit-least_qunit) nodes and
check that there is no EDQUOT. Then it creates least_qunit
nodes and ignore the result of creating - it is a valid case
if it hits the limit. And only after that check that we
can't create nodes over quota.
Lustre-commit: https://review.whamcloud.com/45943
Lustre-change:
c19acc6c2400fdf72ebfd2b07fd1da0bf5e21266
Change-Id: Iad7c1cc05119c8d3e0f1cfc2adffb276d79f18c7
Test-Parameters: testlist=sanity-quota env=ONLY=2,ONLY_REPEAT=200
Signed-off-by: Sergey Cheremencev <sergey.cheremencev@hpe.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-on: https://review.whamcloud.com/46331
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Tue, 25 Jan 2022 22:35:36 +0000 (15:35 -0700)]
RM-620 build: New tag 2.14.0-ddn32
New tag 2.14.0-ddn32
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ie73cee256d6d1e5c641e38450711aedf9aa6d48a
Jian Yu [Tue, 25 Jan 2022 06:25:34 +0000 (22:25 -0800)]
LU-15220 utils: avoid gcc-11 -Werror=stringop-truncation warning
This patch fixes the following -Werror=stringop-truncation warning:
In function 'hsm_scan_item_alloc',
inlined from 'hsm_scan_handle_dir' at libhsm_scanner.c:124:10:
libhsm_scanner.c:64:9: error: 'strncpy' output may be truncated
copying 4096 bytes from a string of length 4351 [-Werror=stringop-truncation]
64 | strncpy(item->hsi_pathname, pathname, sizeof(item->hsi_pathname));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'hsm_scan_item_alloc',
inlined from 'hsm_scan_process' at libhsm_scanner.c:165:7:
libhsm_scanner.c:64:9: error: 'strncpy' specified bound 4096 equals
destination size [-Werror=stringop-truncation]
64 | strncpy(item->hsi_pathname, pathname, sizeof(item->hsi_pathname));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test-Parameters: trivial testlist=sanity-pcc
Change-Id: I74c6c1de82f18ad2a652034b5952d55d44032b89
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46286
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Tue, 25 Jan 2022 06:02:44 +0000 (22:02 -0800)]
LU-15420 llite: add rcu argument to ->get_acl() callback
Kernel 5.15 commit
0cad6246621b5887d5b33fea84219d2a71f2f99a
added a rcu argument to the ->get_acl() callback.
Lustre-change: https://review.whamcloud.com/46086
Lustre-commit: TBD (from
66d55d4c3c93837b725d4cfece30a30683082b56)
Test-Parameters: trivial
Change-Id: Icd711b38dda1a5a3c56bd631fa2edd94eab3572c
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46289
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Mon, 24 Jan 2022 20:59:19 +0000 (12:59 -0800)]
LU-15420 libcfs: replace deprecated CPU-hotplug functions
Kernel 5.15 commit
8c854303ce0e38e5bbedd725ff39da7e235865d8
removed deprecated CPU-hotplug functions get_online_cpus()
and put_online_cpus(). They map directly to cpus_read_lock()
and cpus_read_unlock().
Lustre-change: https://review.whamcloud.com/46085
Lustre-commit: TBD (from
c531bac68680b899ba34a4e16bd8528937b4f06b)
Change-Id: I09d489cd3ca9a575b20ea25f24210702fbfdd725
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46288
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Mon, 24 Jan 2022 20:58:05 +0000 (12:58 -0800)]
LU-14651 build: remove KALLSYMS build requirement
Now that kallsyms is no longer exported some distros kernels are
disabling it by default. If kallsyms is disabled lustre will fail
configure. Remove this hard requirmenet.
Lustre-change: https://review.whamcloud.com/46070
Lustre-commit: TBD (from
2901a756a1496e809627ad0d2e195256b8afbd4f)
Test-Parameters: trivial
Change-Id: I710433e99afd75eea6a3bf1d77878b97beaed605
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/46287
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Mon, 24 Jan 2022 17:06:23 +0000 (09:06 -0800)]
LU-15220 lnet: use 'fallthrough' in ksocknal_process_receive()
'/* Fall through */' hits implicit-fallthrough error with GCC 11.
This patch replaces it with the 'fallthrough' pseudo keyword,
which was added by Linux kernel commit v5.4-rc2-141-g294f69e662d1.
Test-Parameters: trivial
Fixes:
2bc0700160 ("LU-15220 lnet: use 'fallthrough' pseudo keyword for switch")
Change-Id: I9001373af4e16c3ec185c982e6c4aa1356ad65a6
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46285
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Mon, 24 Jan 2022 07:37:30 +0000 (23:37 -0800)]
LU-14651 llite: extend inode methods with user namespace arg
Kernel 5.12 supports idmapped mounts, which extends
vfsmount struct with a new struct user_namespace member,
and also extends some inode methods with an additional
user namespace argument.
The series can be found here:
https://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux.git/log/?h=idmapped_mounts
Lustre-change: https://review.whamcloud.com/45938
Lustre-commit:
0feec5a3c7d4518d5c563739124b202a6a0a99f7
Change-Id: I7cccde8cb3288e1ce3d9b6255796b954a6e115df
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46278
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Mon, 24 Jan 2022 07:20:59 +0000 (23:20 -0800)]
LU-15220 tests: avoid gcc-11 -Werror=stringop-overread warning
GCC 11 warns about string and memory operations on fixed address:
In function 'memcpy', inlined from 'obd_uuid2str' at
lustre/include/uapi/linux/lustre/lustre_user.h:1222:3,
include/linux/fortify-string.h:20:33: error: '__builtin_memcpy'
reading 39 bytes from a region of size 0 [-Werror=stringop-overread]
20 | #define __underlying_memcpy __builtin_memcpy
| ^
include/linux/fortify-string.h:191:16: note:
in expansion of macro '__underlying_memcpy'
191 | return __underlying_memcpy(p, q, size);
| ^~~~~~~~~~~~~~~~~~~
The patch avoids the above warning by not using a fixed address.
badarea_io.c:47:14: error: 'write' reading 5 bytes from a region
of size 0 [-Werror=stringop-overread]
47 | rc = write(fd, (void *)0x4096000, 5);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The patch avoids the above warning by making the pointer volatile
as suggested in:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578#c16
Lustre-change: https://review.whamcloud.com/45777
Lustre-commit: TBD (from
300b310a3cc6b4591a8b98d7e93d363604983680)
Change-Id: I90b936835c6236a0f47e744013e3e480442f682c
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46277
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Mon, 24 Jan 2022 05:48:37 +0000 (22:48 -0700)]
RM-620 build: New tag 2.14.0-ddn31
New tag 2.14.0-ddn31
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: If11afa0d2368c989768ead85159a6f9c8f5daa49
Andreas Dilger [Thu, 26 Aug 2021 21:10:58 +0000 (15:10 -0600)]
LU-12058 tests: improve sanity test_51d reliability
The original commit message (b=10671, not in git history) stated:
When selecting which OSTs to stripe files over, for files with
a stripe count that divides evenly into the number of OSTs,
the MDS is always picking the same starting OST for each file.
Return the OST selection heuristic to the original design.
This test is mainly to catch logic errors in the object allocation
code, not to achieve perfect balance across all OSTs.
Firstly, fix the test to actually verify stripe-0 precession works.
This needs stripe_count=$OSTCOUNT, which was once the test default.
Make the test more robust by disabling QOS to give a more uniform
distribution of files across OSTs, even if they are space imbalanced.
Increase the threshold of error to reduce sensitivity to allocation
imbalances due to fewer preallocated objects available on the MDS.
Lustre-change: https://review.whamcloud.com/44762
Lustre-commit:
2e832a0038af7f3d9f022beb862578988592d682
Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I21f80ebb6f51e72bf4a5b19abe497ee9797a616a
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Vikentsi Lapa <vlapa@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46272
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Sun, 23 Jan 2022 10:25:29 +0000 (02:25 -0800)]
LU-15220 utils: use 'fallthrough' pseudo keyword for switch
'/* fallthrough */' hits implicit-fallthrough error with GCC 11.
This patch replaces the existing '/* fallthrough */' comments and
its variants with the 'fallthrough' pseudo keyword, which was added
by Linux kernel commit v5.4-rc2-141-g294f69e662d1.
Lustre-change: https://review.whamcloud.com/46270
Lustre-commit: TBD (from
6cae135625159733c0fc1b02ad0cd3ee25ff4d2b)
Test-Parameters: trivial
Change-Id: Icace4c9953950f86d3c48068d8c6bba7dd1160a7
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46276
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Sun, 23 Jan 2022 10:19:46 +0000 (02:19 -0800)]
LU-15220 lustre: use 'fallthrough' pseudo keyword for switch
'/* fallthrough */' hits implicit-fallthrough error with GCC 11.
This patch replaces the existing '/* fallthrough */' comments and
its variants with the 'fallthrough' pseudo keyword, which was added
by Linux kernel commit v5.4-rc2-141-g294f69e662d1.
Lustre-change: https://review.whamcloud.com/46269
Lustre-commit: TBD (from
e08dd4bdd1711efd1c3410fbfc39af55b94e18b9)
Test-Parameters: trivial
Change-Id: Icace4c9953950f86d3c48068d8c6bba7dd1160a6
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46275
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Sun, 23 Jan 2022 09:21:13 +0000 (01:21 -0800)]
LU-15220 lnet: use 'fallthrough' pseudo keyword for switch
'/* fallthrough */' hits implicit-fallthrough error with GCC 11.
This patch replaces the existing '/* fallthrough */' comments and
its variants with the 'fallthrough' pseudo keyword, which was added
by Linux kernel commit v5.4-rc2-141-g294f69e662d1.
Lustre-change: https://review.whamcloud.com/45566
Lustre-commit: TBD (from
17563df10b6c2dd1ebc451e9df8d3b8ffc6063a9)
Test-Parameters: trivial
Change-Id: Icace4c9953950f86d3c48068d8c6bba7dd1160a5
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46274
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Thu, 20 Jan 2022 00:38:48 +0000 (16:38 -0800)]
LU-14093 utils: fix DLSYM buffer over flow
The 'name' string passed to DLSYM macro is created from the fsname
buffer in load_backfs_module(). That buffer is greater than 512
bytes in size but the temporary buffer in DLSYM is only 64. The
newest gcc version detect this bug.
mount_utils.c: In function ‘load_backfs_module’:
mount_utils.c:530:36: error: ‘%s’ directive output may be truncated writing up to 507 bytes into a region of size 64 [-Werror=format-truncation=]
530 | snprintf(_fname, sizeof(_fname), "%s_%s", prefix, #func); \
| ^~~~~~~
mount_utils.c:593:2: note: in expansion of macro ‘DLSYM’
593 | DLSYM(name, ops, init);
Lustre-change: https://review.whamcloud.com/43938
Lustre-commit:
76bea6ca661609e3788d1cfe7e08e4a63af0a349
Change-Id: I8ae30a5288f236fb9272dffd40f44175e5e03ef9
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46214
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 21 Jan 2022 20:43:34 +0000 (12:43 -0800)]
LU-15220 libcfs: fix panic_notifier_list undeclared error
In kernel 5.14 commit
f39650de687e35766572ac89dbcd16a5911e2f0a,
panic and oops helpers are split out from include/linux/kernel.h.
This patch accommodates the above changes and fixes the
"'panic_notifier_list' undeclared" error.
Lustre-change: https://review.whamcloud.com/45812
Lustre-commit:
fb545fa83837c1478ad41f752cf5d3e313b67c73
Change-Id: I6888f9f4878906c572bb40d950a70ff642d3474e
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46250
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Patrick Farrell [Fri, 21 Jan 2022 02:20:29 +0000 (18:20 -0800)]
LU-15220 llite: Compat for set_pagevec_dirty
If we can't access account_page_dirtied either via export
or via kallsyms lookup, the benefit of vvp_set_pagevec_dirty
is mostly lost, since we have to take the xarray lock
repeatedly to handle accounting dirty pages.
Replace the more complicated compat code by just falling
back to __set_page_dirty_nobuffers in a loop, since this
has the same effect and is much simpler.
This also resolves 5.14 compatibility, as __set_page_dirty
is no longer exported there.
Lustre-change: https://review.whamcloud.com/45927
Lustre-commit:
8fdef1381ea07657d6689818b2897d69cb7e9c83
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I3feb526b8eaaec3811c689a895875b409204a159
Reviewed-by: Yingjin Qian <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/46249
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 21 Jan 2022 20:37:10 +0000 (12:37 -0800)]
LU-15220 utils: fix gcc-11 -Werror=format-truncation= error
This patch fixes the following -Werror=format-truncation= error in
liblustreapi.c:
liblustreapi.c: In function 'lov_dump_comp_v1':
liblustreapi.c:3673:57: error: 'snprintf' output may be truncated
before the last format character [-Werror=format-truncation=]
3673 | snprintf(pool_name, LOV_MAXPOOLNAME, "%s",
| ^
Lustre-change: https://review.whamcloud.com/45815
Lustre-commit:
9b0b7264a8d7a6a2abe681d15fefc88c27d20c1e
Change-Id: I55c3e05a933ff3d2c33a71ed269fffe63797b528
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46246
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Fri, 21 Jan 2022 01:31:36 +0000 (17:31 -0800)]
LU-14596 ldiskfs: Fix mounting issues for newer kernels
During 2.15 development cycle project quotas was enabled by
default which broke mounting ldiskfs for Ubuntu20 5.4 and
5.8 kernels. The following error showed up:
LDISKFS-fs warning (device loop0): ldiskfs_enable_quotas:6118:
Failed to enable quota tracking (type=0, err=-3). Please run
e2fsck to fix.
This was due to Ubuntu20 kernels compiling their quota support
as modules but distributing those modules in the package
linux-modules-extra-$(uname) which is not installed by default.
For debian packaging include the dependency 'linux-generic' that
should install the needed package.
The next problem noticed while debugging is the wrong value
value for EXT4_MOUNT_DIRDATA with newer kernels. The current
value used is a combo of EXT4_MOUNT_QUOTA and EXT4_MOUNT_BARRIER
which is wrong. Set EXT4_MOUNT_DIRDATA to the proper value of
0x0002.
Lustre-change: https://review.whamcloud.com/45960
Lustre-commit:
32c4b80192652f55bcef5786e4ec683e85234c04
Change-Id: I17a9008edb9ded348bda3a2bf137bb23f9e8b980
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/46242
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Thu, 20 Jan 2022 03:11:07 +0000 (19:11 -0800)]
LU-13783 osd-ldiskfs: use alloc_file_pseudo to create fake files
With kallsyms_lookup_name() no longer exported with 5.8+ kernels
this means the work around to setup the security handling broke.
Currently osd-ldiskfs will crash due to security_alloc() never
being called. The solution is to use alloc_file_pseudo() instead
to create our fake file.
Lustre-change: https://review.whamcloud.com/43876
Lustre-commit:
b0f150eba4c2ced44c3a41bcb7cfc7517f7b31f1
Change-Id: Ib417ebdda7d9829a231c568022618154c273f3e6
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46224
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Thu, 11 Mar 2021 23:10:29 +0000 (15:10 -0800)]
LU-14385 utils: add range check to strtol() in lfs.c
Most of the strtol() and strtoll() functions called
in lfs.c did not check the range of the return value.
This patch fixes those issues.
Lustre-change: https://review.whamcloud.com/41756
Lustre-commit:
b217593a9e68d15e34c257b8d9485d34d3ccbbec
Test-Parameters: trivial
Change-Id: I9ff51662bf0d2320961a7838da08f09552e9ef1e
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46265
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Tue, 23 Feb 2021 17:26:37 +0000 (09:26 -0800)]
LU-14385 utils: add range check to strtoul() in lfs.c
Most of the strtoul() functions called in lfs.c
did not check the range of the return value.
This patch fixes those issues.
Lustre-change: https://review.whamcloud.com/41726
Lustre-commit:
c8b1f4d886b71e1439eb8d521f282dbdf366ec26
Test-Parameters: trivial
Change-Id: If1eb64750507b5fa4e22abe710e475e2f0032b4d
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46264
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Fri, 19 Feb 2021 23:33:34 +0000 (15:33 -0800)]
LU-14385 tests: verify lfs setstripe comp-flags and flags options
This patch adds more test cases to verify lfs setstripe
--comp-flags|--component-flags and --flags options.
Lustre-change: https://review.whamcloud.com/41423
Lustre-commit:
4b40d2bd165308457c033d468961a2e9347baf23
Test-Parameters: trivial testlist=sanity-flr env=ONLY=0
Change-Id: Ie09089ceb65372fdf4e3b50df3771c9a355210cc
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46263
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Alena Nikitenko [Wed, 17 Nov 2021 15:11:25 +0000 (18:11 +0300)]
EX-3342 tests: correct Lustre version in skip checks in sanity
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanity tests 272d, 272e and 272f were modified.
Fixes:
dfc707a23aa ("LU-11421 dom: manual OST-to-DOM migration via mirroring")
Test-Parameters: env=ONLY="272d 272e 272f" serverversion=2.12.6-ddn3 \
serverdistro=el7.7
Test-Parameters: env=ONLY="272d 272e 272f" clientversion=2.12.6-ddn42
Test-Parameters: env=ONLY="272d 272e 272f" serverversion=2.12.6-ddn42
Test-Parameters: trivial env=ONLY="272d 272e 272f"
Lustre-change: https://review.whamcloud.com/45590
Lustre-commit:
cf7546cd146d3b2db2bd9afc3e31f5ea488b09f5
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: I1c6cba7e738f5ddb7b02ce63ab554a650967b947
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-by: Wei Liu <sarah@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46184
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Minh Diep [Thu, 20 Jan 2022 22:45:01 +0000 (14:45 -0800)]
EX-4608 build: build almalinux
Test-Parameters: trivial
Change-Id: I7a36465021f4a318d682d3737b848c6babc7f213
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46240
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Wed, 19 Jan 2022 01:59:56 +0000 (17:59 -0800)]
EX-4052 tests: enable sanity-lipe test_8/9
The original issue was resolved in commit
2fef2436ad770b4415692aad9491cb23be2b3100
(LU-13560 lod: set default LMV for "lfs mkdir -c 1")
Test-Parameters: trivial testlist=sanity-lipe
Test-Parameters: testlist=sanity-lipe mdscount=2 mdtcount=4
Change-Id: I546243fd9a2d77793e8dbbe67476b473893dbc86
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46190
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lei Feng [Fri, 17 Dec 2021 03:15:01 +0000 (11:15 +0800)]
LU-15314 utils: set default max-inherit to 3
Change LMV_INHERIT_DEFAULT from 0 to 3. So that the default stripe
policy of dir will not be inherited unlimited and reduce performance
unexpectly.
Lustre-change: https://review.whamcloud.com/45874
Lustre-commit:
956b4b1e0d9f18c6fe62d84e1c20268363b8159b
Signed-off-by: Lei Feng <flei@whamcloud.com>
Test-Parameters: trivial
Change-Id: I67ef540046867ccec7ccc3aab035edbff95874c3
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46208
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Lai Siyao [Wed, 19 Jan 2022 05:29:56 +0000 (21:29 -0800)]
LU-13560 lod: set default LMV for "lfs mkdir -c 1"
With the introduction of filesystem-wide default LMV, dirs will be
created on MDT by space usage, but if dir is created by
"lfs mkdir -c 1 ...", its subdirs should be kept on the same MDT.
To achieve this, set default LMV on such dirs, NB if user doesn't
want this, he needs to create dir with
"lfs mkdir -c 1 --max-inherit=0 ...".
The policy to choose MDT in mkdir is as below:
1. is "lfs mkdir -i N"? mkdir on MDT N.
2. is "lfs mkdir -i -1"? mkdir by space usage.
3. is starting MDT specified in default LMV? mkdir on MDT N.
4. is default LMV space balanced? mkdir by space usage.
Changes on server side:
* Don't inherit default LMV for "lfs mkdir".
* Don't migrate default LMV in dir migration/split.
Remove setting default LMV in mkdir_on_mdt().
Update sanity 412.
Lustre-change: https://review.whamcloud.com/45290
Lustre-commit:
bc2d7f065af6b4f9a69bc7d3d250b948b33a1018
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I0ffdcf7a4a85a31e2df788198aeb5e9a910160d8
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46189
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Thu, 16 Dec 2021 09:00:34 +0000 (01:00 -0800)]
LU-15331 kernel: kernel update SLES15 SP2 [5.3.18-24.96.1]
Update SLES15 SP2 kernel to 5.3.18-24.96.1 for Lustre client.
Test-Parameters: trivial \
env=SANITY_EXCEPT="100 103 125 130 136 154 255 428 817" \
clientdistro=sles15sp2 \
testlist=sanity
Change-Id: Ia457af76060a96f574cb501af6456afdc7de6411
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/45772
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Yang Sheng [Mon, 29 Nov 2021 15:00:03 +0000 (23:00 +0800)]
LU-15283 quota: deadlock between reint & lquota_wb
The reintegration thread may be still running while
the lquota_wb thread process the update record. The
reint thread will hold the dynlock and start a
transaction, lquota_wb thread will start a transacation
then try to grab the dynlock. So we must avoid the
reint & writeback thread running in parallel. This
issue only occur on the ldiskfs case.
COMMAND: "qsd_reint_2.wor"
__schedule
schedule
wait_transaction_locked [jbd2]
add_transaction_credits [jbd2]
start_this_handle [jbd2]
jbd2__journal_start [jbd2]
__ldiskfs_journal_start_sb [ldiskfs]
ldiskfs_release_dquot [ldiskfs]
dqput
dquot_get_dqblk
osd_acct_index_lookup [osd_ldiskfs]
lquota_disk_read [lquota]
qsd_refresh_usage [lquota]
qsd_reconciliation [lquota]
qsd_reint_main [lquota]
kthread
ret_from_fork
COMMAND: "lquota_wb_work-"
__schedule
schedule
dynlock_lock [osd_ldiskfs]
__iam_it_get [osd_ldiskfs]
iam_it_get [osd_ldiskfs]
osd_index_iam_lookup [osd_ldiskfs]
lquota_disk_write [lquota]
qsd_update_index [lquota]
qsd_upd_thread [lquota]
kthread
ret_from_fork
Lustre-change: https://review.whamcloud.com/45667
Lustre-commit:
d527e812461baf9db2f6ed960a3b6cc12d4ab37c
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I8cdd6227d3b0c5d4f67c432c3129da42a83c0ef2
Reviewed-by: Sergey Cheremencev <sergey.cheremencev@hpe.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46143
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Wed, 19 Jan 2022 18:21:01 +0000 (10:21 -0800)]
LU-15448 kernel: kernel update RHEL7.9 [3.10.0-1160.53.1.el7]
Update RHEL7.9 kernel to 3.10.0-1160.53.1.el7.
Test-Parameters: trivial clientdistro=el7.9 serverdistro=el7.9
Change-Id: I59aa1c997b1a19047e4bf14562946aec9c1d7c39
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46204
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 21 Jan 2022 02:17:01 +0000 (18:17 -0800)]
LU-15220 utils: fix gcc-11 -Werror=mismatched-dealloc error
This patch fixes the following -Werror=mismatched-dealloc error in
lustre_rsync.c:
lustre_rsync.c: In function 'lr_locate_rsync':
lustre_rsync.c:1472:17: error: 'fclose' called on pointer returned
from a mismatched allocation function [-Werror=mismatched-dealloc]
1472 | fclose(fp);
| ^~~~~~~~~~
lustre_rsync.c:1467:14: note: returned from 'popen'
1467 | fp = popen(rsync, "r");
| ^~~~~~~~~~~~~~~~~
Test-Parameters: trivial testlist=lustre-rsync-test
Lustre-change: https://review.whamcloud.com/45814
Lustre-commit:
64ba2b18349b56c5d7ade944ea713bade84bc02e
Change-Id: I518db394a282c8e6123d878f63312bfb27c59235
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46248
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Fri, 21 Jan 2022 02:13:57 +0000 (18:13 -0800)]
LU-14651 libcfs: use namespace CRYPTO_INTERNAL
In kernel 5.12 commit
0eb76ba29d16df2951d37c54ca279c4e5630b071,
cipher routines are moved into include/crypto/internal/cipher.h,
and the symbol exports are moved into namespace CRYPTO_INTERNAL.
This patch accommodates the above changes and fixes the following
build errors:
ERROR: modpost: module libcfs uses symbol crypto_cipher_encrypt_one
from namespace CRYPTO_INTERNAL, but does not import it.
ERROR: modpost: module libcfs uses symbol crypto_cipher_setkey
from namespace CRYPTO_INTERNAL, but does not import it.
Test-Parameters: trivial
Lustre-change: https://review.whamcloud.com/45805
Lustre-commit:
67e1017da0e5c71367336ccb77c4cb6f1fbc0e88
Change-Id: I908006f81ee632c2d02fe3dd6ac41fdd6296a4b0
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46247
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Fri, 21 Jan 2022 20:31:55 +0000 (12:31 -0800)]
LU-14651 uapi: rename CONFIG_T_* to MGS_CFG_T_*
The Linux kernel uses CONFIG_* as a way to determine if a feature
is available. Using CONFIG_* in an UAPI is considered an error
and in the most recent kernels will break a build. While we don't
have any CONFIG_* in our UAPI headers we do have CONFIG_T_*
which is used for config logs. This naming confuses the Linux
kernel build system so just rename these variables to MGS_CFG_T_*
instead.
Lustre-change: https://review.whamcloud.com/43494
Lustre-commit:
4d5a2eba617780eadf172cb5c1fc28d5ab023a97
Test-Parameters: trivial
Change-Id: I574510c2da90e9ae608c9e2374d75220b7abb19d
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46245
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Arshad Hussain [Thu, 20 Jan 2022 08:05:07 +0000 (00:05 -0800)]
LU-15167 quota: fallocate send UID/GID for quota
Calling fallocate() on a newly created file did not account quota
usage properly because the OST object did not have a UID/GID
assigned yet. Update the fallocate code in the OSC to always send
the file UID/GID/PROJID to the OST so that the object ownership
can be updated before space is allocated.
Test-case: sanity-quota/78 added
Lustre-change: https://review.whamcloud.com/45475
Lustre-commit:
789038c97ae1072874dcd6afcc9cd78e9c885368
Fixes:
48457868a02a ("LU-3606 fallocate: Implement fallocate preallocate operation")
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I86d80a7f415a80100f7d2fb5f417cf47bf5b2900
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-on: https://review.whamcloud.com/46227
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Arshad Hussain [Thu, 20 Jan 2022 03:06:11 +0000 (19:06 -0800)]
LU-14640 osd: ASSERTION(!PageDirty(lnb[i].lnb_page)
fallocate(PUNCH_HOLE) was leaving the partially-zeroed
page in the buffer cache. This was causing ASSERT when
doing large direct read/write operations. This was see
when executing a fsx run with options:-
$ fsx -c 50 -p 1000 -S 7919 -P /tmp -l 5407677 -N 100000 <file>
Lustre: DEBUG MARKER: GENERIC DEBUG start start
LustreError: 15768:0:(osd_io.c:1563:osd_write_commit())
ASSERTION( !PageDirty(lnb[i].lnb_page) ) failed:
LustreError: 15768:0:(osd_io.c:1563:osd_write_commit()) LBUG
Pid: 15768, comm: ll_ost_io00_000 3.10.0-957.el7_lustre.x86_64
Call Trace:
[<0>] libcfs_call_trace+0x90/0xf0 [libcfs]
[<0>] lbug_with_loc+0x4c/0xa0 [libcfs]
[<0>] osd_write_commit+0x52c/0x870 [osd_ldiskfs]
[<0>] ofd_commitrw_write+0xe79/0x1510 [ofd]
[<0>] ofd_commitrw+0x2ad/0x9a0 [ofd]
[<0>] tgt_brw_write+0xfd0/0x1cb0 [ptlrpc]
[<0>] tgt_request_handle+0x7ea/0x1750 [ptlrpc]
[<0>] ptlrpc_server_handle_request+0x256/0xb10 [ptlrpc]
[<0>] ptlrpc_main+0xb3c/0x14e0 [ptlrpc]
[<0>] kthread+0xd1/0xe0
[<0>] ret_from_fork_nospec_begin+0xe/0x21
[<0>] 0xfffffffffffffffe
Kernel panic - not syncing: LBUG
Test-case: sanity-benchmark/fsx_partial_punch added
Lustre-change: https://review.whamcloud.com/43462
Lustre-commit:
76c5e8ed9560fe232bcc0c2ee0069dbdb8411565
Test-Parameters: testlist=sanity-benchmark
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I89fcbc6af0cbf4b544b8d149703053909ecb6cad
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46223
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sebastien Buisson [Fri, 13 Aug 2021 15:16:08 +0000 (17:16 +0200)]
LU-14937 build: re-use config cache in 'make rpms/debs'
Idea is to pass along the value of the -C or --cache-file options from
the initial ./configure to the one launched as part of the rpm or deb
build.
But all the environment variables related cache info must be removed
otherwise the config cache file cannot be reused.
Lustre-change: https://review.whamcloud.com/44659
Lustre-commit:
a5084c2f2ec851fe888838fb1e90aff8b5ed6fd2
Test-Parameters: trivial
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Iab4ae2815961ba10132d9cb44f82ca58d313e908
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46197
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Fri, 21 Jan 2022 23:41:05 +0000 (16:41 -0700)]
RM-620 build: New tag 2.14.0-ddn30
New tag 2.14.0-ddn30
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Icbfebbc841deb16bb0fb7e2fc063a56a63485952
James Beal [Fri, 21 Jan 2022 01:24:36 +0000 (17:24 -0800)]
LU-15005 build: Ubuntu dkms packages missing dependancies
It was noted that on astandard ubuntu install the dkms package
would fail to install as libnl-genl-3-dev was missing. As a
test we tried installing the dkms package on an upstream
cloud image for 18.04 and 20.04. We noted that a number of
packages were needed before dkms would install cleanly.
Test-Parameters: trivial testgroup=review-ldiskfs-ubuntu
Lustre-change: https://review.whamcloud.com/44999
Lustre-commit:
98eb212b1b6b1882b0776d16b081f72b04980326
Signed-off-by: James Beal <jb23@sanger.ac.uk>
Change-Id: I53a2f143dd2154a2d0b598db8c60fd8ff1421860
Reviewed-on: https://review.whamcloud.com/46241
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alex Zhuravlev [Thu, 20 Jan 2022 08:03:04 +0000 (00:03 -0800)]
LU-15396 osd: include linux/file.h
in some 4.x kernels we need to include linux/file.h to have
alloc_file() defined.
Lustre-change: https://review.whamcloud.com/45923
Lustre-commit:
a945a7cfe98df369933c8e8dfc50ba214296e150
Fixes:
b0f150eba4 ("LU-13783 osd-ldiskfs: use alloc_file_pseudo to create fake files")
Test-Parameters: trivial
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I279945f70578030bf581fa2afc0ca7b4dfa83653
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yingjin Qian <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/46225
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Thu, 20 Jan 2022 03:02:00 +0000 (19:02 -0800)]
LU-14160 tests: fix fsx logdump to fit in 80 chars
Fix fsx logdump fallocate/truncate lines to fit within 80 columns.
Remove spurious leading 0 for every operation length.
Lustre-change: https://review.whamcloud.com/44510
Lustre-commit:
e7897043c6eff00593123f2b43075bebeb50934f
Test-Parameters: trivial testlist=sanityn env=ONLY=16
Fixes:
cb037f305c64 ("LU-14160 fallocate: Add punch mode to fallocate")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I93460b62be8611926e620241232d886dee3ebbe5
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/46222
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Arshad Hussain [Thu, 20 Jan 2022 02:58:30 +0000 (18:58 -0800)]
LU-14160 fallocate: Add punch mode to fallocate
This patch adds fallocate(2) punch operation
(FALLOCATE_FL_PUNCH_HOLE) mode support for ldiskfs backend
OSD and for OSC/OST
Test cases sanity/150{f,g} are added for verification.
FSX test was modified:
- add 'punch' operation to an output
- fix 'No space' problem when fallocate length become negative
- fix wrong bytes number in output
Lustre-change: https://review.whamcloud.com/40877
Lustre-commit:
cb037f305c64cd5121fa308afc1e6b7d3df3f61a
Test-Parameters: testlist=sanity ostsizegb=12 env=ONLY="150f 150g"
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I0c180d413efdf995823e25d5c340013bec0c8611
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-on: https://review.whamcloud.com/46221
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Mikhail Pershin [Thu, 20 Jan 2022 02:53:48 +0000 (18:53 -0800)]
LU-14433 llite: do fallocate() size checks under lock
Check about fallocate() range vs file size in vvp_io_setattr_start()
instead of ll_fallocate() so inode size cannot be changed by pending
write or truncate. This implies that IO is initialized already and
requires changes in LOV to update sub-IOs with proper inode size and
valid size attribute values
Fix also vvp_io_setattr_lock() to don't include fallocate_end in
lock range
Lustre-change: https://review.whamcloud.com/41668
Lustre-commit:
f23ac22c4c79750fed6b05ddbe460bfc9b0f0ea5
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I8c1d295464be24d6638005bc9d46cff50656cf11
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46220
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Thu, 20 Jan 2022 01:47:11 +0000 (17:47 -0800)]
LU-13783 procfs: fix improper prop_ops fields
The lod pool and nodemap proc_ops missed renaming the fields to
start with .proc_*. On newer distros like Ubuntu 20.04 HWE you
get the following compile error:
lustre-release/lustre/ptlrpc/nodemap_lproc.c:686:3: error: ‘const struct proc_ops’ has no member named ‘open’
686 | .open = nodemap_ranges_open,
Lustre-change: https://review.whamcloud.com/43880
Lustre-commit:
d106dfc1458702865118e73bfcdfc2ec2676a7d6
Test-Parameters: trivial
Fixes:
13cd0f9f667 ("LU-13344 libcfs: Abstract proc_fs with proc_ops")
Signed-off-by: James Simmons <jsimmons@infradead.org>
Change-Id: I5fff7519a801f585690d468255f7ca6c73adcc90
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-on: https://review.whamcloud.com/46219
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Thu, 20 Jan 2022 01:18:20 +0000 (17:18 -0800)]
LU-14093 tests: silence gcc10 error for badarea_io
With gcc10 badarea_io will fail to build with the following error.
badarea_io.c: In function 'main':
badarea_io.c:59:7: error: 'write' reading 2097152 bytes from a
region of size 4 [-Werror=stringop-overflow=]
59 | rc = write(fd, &fd, 2UL*1024*1024);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Talking to Oleg see stated this is the done this way on purpose.
So instead of 'fixing' the issue in this case we silence the gcc
warning.
Lustre-change: https://review.whamcloud.com/44670
Lustre-commit:
084546f7d01b0eec8dafae9bc50edc778c3886ca
Test-Parameters: trivial
Test-Parameters: env=ONLY=133f,133g testlist=sanity
Change-Id: Iee79c7988cc209fd099c23c38a8bd7df96015b05
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46218
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alex Zhuravlev [Thu, 20 Jan 2022 01:07:02 +0000 (17:07 -0800)]
LU-14093 mgc: rework mgc_apply_recover_logs() for gcc10
rework mgc_apply_recover_logs() to use a separate buffer of
appropriate size so that gcc10 doesn't complain:
mgc_request.c:1506:24: error: argument 4 may overlap destination
object [-Werror=restrict]
1506 | pos += sprintf(obdname + pos, "-%s-%s", cname, inst);
Lustre-change: https://review.whamcloud.com/40484
Lustre-commit:
d13d8158e816b7ac4437ff6d6c6aec3926ba7531
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ice863b412475e53705dc6523ab30ba613244bd90
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46217
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Thu, 20 Jan 2022 00:48:45 +0000 (16:48 -0800)]
LU-14093 gss: gcc10 fixes for GSS
Building with gcc10 reports the following issues when building
GSS:
gss_util.h:37: multiple definition of `this_realm';
gssd.h:73: multiple definition of `clnt_list';
svcgssd.h:38: multiple definition of `krb_enabled';
Properly scope these variables.
Lustre-change: https://review.whamcloud.com/44363
Lustre-commit:
39e4c97530c4657192e7c0d6a22ca30c90cdb6e4
Test-Parameters: env=SHARED_KEY=true testlist=sanity,recovery-small,sanity-sec
Change-Id: I05fc298fb90d67314c6963273688c2577099188a
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-on: https://review.whamcloud.com/46216
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Dominique Martinet [Thu, 20 Jan 2022 00:44:55 +0000 (16:44 -0800)]
LU-14093 lnet: annotate LNET_WIRE_HANDLE_COOKIE_NONE as u64
Fix the following warning on new gcc with -Wextra when including
lustre_idl.h on external project:
.../include/linux/lnet/lnet-types.h: In function LNetMDHandleIsInvalid:
.../include/linux/lnet/lnet-types.h:355:46:
error: comparison of integer expressions of different signedness:
int and __u64 {aka long long unsigned int} [-Werror=sign-compare]
return (LNET_WIRE_HANDLE_COOKIE_NONE == h.cookie);
^~
Lustre-change: https://review.whamcloud.com/43713
Lustre-commit:
27214876fcdfbda016c920bce4ab1da800fcda4b
Change-Id: I05f21dcca5fe9dd15d1e0b6cb9a29c3999bcd807
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46215
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Dominique Martinet [Thu, 20 Jan 2022 00:28:45 +0000 (16:28 -0800)]
LU-14093 llapi: remove ignored qualifier
Fixes the following warning on newer gcc with -Wextra:
.../include/lustre/lustreapi.h:1000:1: error: type qualifiers ignored on function return type [-Werror=ignored-qualifiers]
1000 | const __u16 llapi_layout_string_flags(char *string);
| ^~~~~
As the parameter is ignored, this should make no code difference
Test-parameters: trivial
Lustre-change: https://review.whamcloud.com/43712
Lustre-commit:
90ee0457c9fb1da939558186961f346c917d678f
Change-Id: I049166bbc586007cdecc93225d508693607ef04e
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46213
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Dominique Martinet [Thu, 20 Jan 2022 00:25:07 +0000 (16:25 -0800)]
LU-14093 utils: fix format-overflow warning
Fix the following warning on gcc11 by making numbuf big enough to fit
format content.
lfs.c: In function ‘print_quota’:
lfs.c:7719:48: error: ‘sprintf’ may write a terminating nul past the end of the destination [-Werror=format-overflow=]
7719 | sprintf(numbuf[0], "%s*", strbuf);
| ^
lfs.c:7719:25: note: ‘sprintf’ output between 2 and 33 bytes into a destination of size 32
7719 | sprintf(numbuf[0], "%s*", strbuf);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test-parameters: trivial
Lustre-change: https://review.whamcloud.com/43711
Lustre-commit:
a0fe9be254b944f5b005dd4b36c414827bcb40df
Change-Id: I021e6ffff2e1405eadbe689f718674af4d4d6376
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46212
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alex Zhuravlev [Thu, 20 Jan 2022 00:19:49 +0000 (16:19 -0800)]
LU-14093 utils: trivial changes to support gcc10
just to fix gcc10 complains.
Lustre-change: https://review.whamcloud.com/40485
Lustre-commit:
79acd674e3bc49ac630d84ef64df2291fc9ade01
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I8390d28fe78c9dad15a41301cc2b6d6184fdc330
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46211
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Louis Douriez [Wed, 15 Dec 2021 10:08:19 +0000 (11:08 +0100)]
EXA-4252 debian: remove mpi dependency for lustre debs
Remove mpi-default-bin and mpi-default-dev dependencies for all
debian packages except lustre-tests.
Change-Id: I8fef87aa9fec427c93115b3aad338f093cc5c65c
Signed-off-by: Louis Douriez <ldouriez@ddn.com>
Reviewed-on: https://review.whamcloud.com/45860
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Bobi Jam [Thu, 13 Jan 2022 09:08:47 +0000 (17:08 +0800)]
LU-15268 mdt: reveal the real intent close error code
mdt_mfd_close() clobbers the intent close error so that user space
tool only knows that the close intent hasn't finished and reports
-EBUSY instead of the real error code.
Lustre-change: https://review.whamcloud.com/45636
Lustre-commit: TBD (from
dc6dee1f5683ac91d637533b4c220617f62e60d2)
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I72f474a73e8b73cdc35ca38eaaec5af182f63ca7
Reviewed-on: https://review.whamcloud.com/46092
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Mikhail Pershin [Fri, 12 Nov 2021 16:00:22 +0000 (19:00 +0300)]
LU-15219 lfs: migration to DoM layout fix
Migration to DoM layout from OST-striped file can skip
data sync beyond DoM component if it is not initialized.
Patch forces data copy prior layout merge, so new layout
is initialized and contains needed data
Tests 272e/272f in sanity.sh were modified to migrate data
for both MDT and OST parts
Lustre-change: https://review.whamcloud.com/45549
Lustre-commit:
cf872dcce3b33d309d31dc5cce8794729f14a924
Fixes:
44a721b8c1 ("LU-11421 dom: manual OST-to-DOM migration via mirroring")
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I206358e762780ab7cfaa7587888174a31bc7b196
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46012
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Bobi Jam [Thu, 13 Jan 2022 09:35:24 +0000 (17:35 +0800)]
LU-14642 flr: abolish MDS transfer layout version to OST
Quit setting layout version to OST object from MDS, and client
write request will carry the new layout version and OST object
rejects old layout version write and update new layout version
accordingly.
Lustre-change: https://review.whamcloud.com/c/45443/
Lustre-commit: TBD (from
aea66b7d3fdc37d61704bd5df2a25a4747a6cce5)
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I655044f69a4509a2b0cfe99f86de2ce4ee846979
Reviewed-on: https://review.whamcloud.com/45278
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Lai Siyao [Wed, 19 Jan 2022 05:28:23 +0000 (21:28 -0800)]
LU-14448 lod: verify LOV early in lod_get_default_striping
lod_get_default_striping() will get both default LOV and default LMV,
and parse them to struct lod_default_striping one by one, however the
LOV and LMV data are both stored in lod_thread_info.lti_ea_store, so
lod_verify_striping() should verify LOV upon getting LOV, otherwise
if both exists, it's LMV that's verified, which will return -EINVAL.
Lustre-change: https://review.whamcloud.com/45370
Lustre-commit:
eba1b49172259ece89ab604a2ed2285e4770baa2
Fixes:
6a08df2d0effc7a ("LU-14448 lod: verify LOV before set/inherit")
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I9763d35bdbc74101fa8515d5096ec457a4cb3524
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46182
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
John L. Hammond [Thu, 6 Jan 2022 15:09:30 +0000 (09:09 -0600)]
EX-4463 flr: ensure layout generation is incremented on merge
In lod_declare_layout_merge(), load the striping before we increment
the layout generation. Add sanity-flr:test_51a to check this.
Fixes:
6b5a29c0ac94 (Revert "LU-14642 flr: transfer layout version on layout change")
Test-Parameters: testlist=sanity-flr envdefinitions=FAIL_ON_ERROR=false,ONLY=51a,ONLY_REPEAT=20
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: I357501edfd2bc0d710be902df9c40aab53c11824
Reviewed-on: https://review.whamcloud.com/46028
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Li Dongyang [Tue, 30 Nov 2021 01:13:03 +0000 (12:13 +1100)]
LU-12056 ldiskfs: add trusted.projid virtual xattr
Add trusted.projid virtual xattr in ldiskfs to export the
current project id, intended for ldiskfs level MDT backup.
When the project id is EXT4_DEF_PROJID/0,
the virtual xattr is hidden from listxattr(2).
It's also hidden on lustre client when parent has the
project inherit flag and the same project ID,
to stop mv from setting the virtual xattr on the dest with
the project id from src, which could be different from dest.
getxattr(2) on trusted.projid will report current project id,
setxattr(2) will change curent project id and
removexattr(2) will set project id back to EXT4_DEF_PROJID/0
Both get|setxattr(2) will work even when the virtual xattr is
hidden.
Invalidate client xattr cache for the inode when changing its
project id, so the virtual xattr can get the new value
for next getxattr(2)
Add test cases to verify the virtual projid xattr and backup
restore MDT using tar can now preserve the project id.
Change mds_backup_restore in test framework, to use
tar with --xattrs --xattrs-include='trusted.*'" options.
Lustre-change: https://review.whamcloud.com/45679
Lustre-commit:
665383d3a1f4d1dc7f404301039432271ad85eaf
Change-Id: I29b1aa922ef72d734cdc87125401fa08fb13d4af
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46083
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andriy Skulysh [Fri, 30 Aug 2019 11:43:29 +0000 (14:43 +0300)]
LU-15121 llite: skip request slot for lmv_revalidate_slaves()
Some syscalls need lmv_revalidate_slaves(). It requires
second lock enqueue and the it can be blocked by
lack of RPC slots.
Don't acquire rpc slot for second lock enqueue.
Lustre-change: https://review.whamcloud.com/45275
Lustre-commit:
7e781c605c4189ea1f4b0a343863280ebeb237d4
Change-Id: Ida23c648c2bd169c4d238543731796232aa490dc
HPE-bug-id: LUS-8416
Signed-off-by: Andriy Skulysh <c17819@cray.com>
Reviewed-by: Vitaly Fertman <c17818@cray.com>
Reviewed-by: Alexander Zarochentsev <c17826@cray.com>
Reviewed-by: Vitaly Fertman <vitaly.fertman@hpe.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46106
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Tue, 18 Jan 2022 21:56:26 +0000 (13:56 -0800)]
LU-15133 osp: only deactivate OSP on LAST_FID error
ofd_get_info_hdl() should return -EFAULT upon LAST_FID error, which
is the same as LAST_ID error.
osp_get_lastfid_from_ost() should deactivate OSP only upon -EFAULT,
which means reading LAST_FID on OST failed. This can avoid unnecessary
admin intervention.
Add sanity 27S.
Lustre-change: https://review.whamcloud.com/45309
Lustre-commit:
f738156aa621c6c800d08af18ca52c39c40c3bd3
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Ib78c8994c0398dd4b4db32005abd018933ef3a7c
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46180
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Lai Siyao [Tue, 18 Jan 2022 04:29:19 +0000 (23:29 -0500)]
LU-15456 llite: deadlock in ll_new_node()
ll_new_node() will call ll_dir_getstripe() to fetch parent default
LMV if md_create() returns -EREMOTE, it should call
ll_finish_md_op_data() before calling ll_dir_getstripe() because
the latter will lock lli_lsm_sem again, which will deadlock.
Lustre-change: https://review.whamcloud.com/46157/
Lustre-commit:
d46e8deb9c0e680e195ef4d2c8755f25ad27865f
Fixes:
55ca00c3d1cd863 ("LU-11213 ptlrpc: intent_getattr fetches default LMV")
Test-Parameters: mdscount=2 mdtcount=4 testlist=racer,racer,racer
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Ib858bae19ff88533fe487583c27d544026aafa3f
Reviewed-on: https://review.whamcloud.com/46196
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Wed, 19 Jan 2022 05:26:18 +0000 (21:26 -0800)]
LU-14957 mdd: prepare xattrs before migration
In directory migration, the xattrs should be prepared before starting
transaction, otherwise if remote MDT is down, which will cause local
MDT stuck as well.
Lustre-change: https://review.whamcloud.com/44741
Lustre-commit:
dc1aa272d24cff9f06fd9ea71e4ad468c16acc52
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I79279e7b0c051a7542a71066fffd4ad70f559368
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46188
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Chris Horn [Wed, 28 Apr 2021 01:10:16 +0000 (20:10 -0500)]
LU-14655 lnet: Protect lpni deref in lnet_health_check
Discovery thread can modify peer NI/peer net/peer relationship
so we need to be careful when dereferencing the peer NI pointer in
lnet_health_check(). Discovery thread operations under net lock, so
move the peer NI dereference under the net lock which is taken for
incrementing the health stats.
Move some of the other code that is only relevant for messages with a
health status != LNET_MSG_STATUS_OK under the appropriate condition.
Lustre-commit:
d87af24452a2e883b0e7400661a5b768c35088b1
Lustre-change: https://review.whamcloud.com/43503
Test-Parameters: testlist=sanity-lnet
HPE-bug-id: LUS-9962
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I3e6763b71bcdc9281f46b79c59e40f939190d468
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46138
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Li Dongyang [Thu, 20 Jan 2022 00:03:49 +0000 (16:03 -0800)]
LU-14432 misc: update e2fsprogs to 1.46.2.wc1
Update Changelog for the new e2fsprogs release.
Lustre-change: https://review.whamcloud.com/43469
Lustre-commit:
80f352fe90cad09cbdf7b61f74cc6ce4cd999bbf
Change-Id: I173c43f1c777b7223a56841a06545c1741e1a903
Test-Parameters: trivial
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46210
Tested-by: jenkins <devops@whamcloud.com>
Andreas Dilger [Wed, 19 Jan 2022 23:28:41 +0000 (16:28 -0700)]
RM-620 build: New tag 2.14.0-ddn29
New tag 2.14.0-ddn29
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Iefb38a16d3744398fad1296f221d216a863d494d
Alena Nikitenko [Thu, 11 Nov 2021 21:11:18 +0000 (00:11 +0300)]
EX-3342 tests: correct Lustre version in test skip checks in sanityn
Many patches land to the EXAScaler branches as ports from
other branches. Sometimes the tests that are included with
the ported patches check the version of Lustre to ensure
that the feature it tests exists in this version of Lustre.
These version values are not always changed when patches
are ported from one branch to another.
Change Lustre test suite version checks to be relative to
this branch. Sanityn tests 43j, 81c and 84 were modified.
Fixes:
1c01d0867da ("LU-10235 mdt: mdt_create: check EEXIST without lock")
Fixes:
23fa920b0ce ("LU-13437 mdt: rename misses remote LOOKUP lock revoke")
Fixes:
c4a91e08b1e ("LU-12485 obdclass: 0-nlink race in lu_object_find_at()")
Test-Parameters: env=ONLY="43j 81c 84" serverversion=2.10.8 \
serverdistro=el7.6 testlist=sanityn
Test-Parameters: env=ONLY="43j 81c 84" clientversion=2.12.6-ddn42 \
testlist=sanityn
Test-Parameters: env=ONLY="43j 81c 84" serverversion=2.12.6-ddn42 \
testlist=sanityn
Test-Parameters: trivial env=ONLY="43j 81c 84" testlist=sanityn
Lustre-change: https://review.whamcloud.com/45537
Lustre-commit:
c525d9367976fe38fd6fba6fdda8c3a9df6fd6e1
Signed-off-by: Alena Nikitenko <anikitenko@ddn.com>
Change-Id: I3116af827889ccc5a23434f9a253f3115b56dfb4
Reviewed-on: https://review.whamcloud.com/46186
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Vladimir Saveliev [Tue, 18 Jan 2022 21:48:29 +0000 (13:48 -0800)]
LU-13513 osp: make neterr not fatal for precreate_reserve
When OST_CREATE (not resendable rpc) sent by precreate thread fails
with network error, osp_pre_update_status() sets d->opd_pre_status to
EIO. osp_precreate_reserve() considers EIO as fatal and does not wait
for another attempt from precreate thread. That may make
mdt_intent_open() to return ENOSPC confusing a caller. ENOSPC comes
from lod_alloc_rr().
osp_precreate_send(): in case of network error switch EIO to ENOTCONN.
Test to illustrate the issue is added.
Lustre-change: https://review.whamcloud.com/38472
Lustre-commit:
4bba67075aa3d8739d8ca99642ff2b2836774479
Cray-bug-id: LUS-8811
Signed-off-by: Vladimir Saveliev <c17830@cray.com>
Change-Id: Iffaad9bd16f216f758c784b708e21b525c999b14
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46179
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Sat, 4 Dec 2021 05:14:09 +0000 (22:14 -0700)]
EX-3637 osd-ldiskfs: revalidate nonrotational state
Until the nonrotational state of the device is correctly exported by
the underlying storage, periodically recheck the nonrotational state
in case it is changed by the udev/tune_devices.sh script after the
OST is mounted. It would be possible to check less often (e.g. after
a time limit or some number of operations), but directly checking the
rotational state each time is not more expensive and is only checked
on statfs RPCs (sent about once per 5s from the MDS).
If the nonrotational state is changed and the flash-related cache
parameters have not been explicitly set, then tune them appropriately.
Rename the parameter functions and variables for read_cache_enable,
writethrough_cache_enable, and read_cache_max_filesize to match the
parameter names to make them easier to find in the code.
Lustre-change: https://review.whamcloud.com/45745
Lustre-commit: TBD (from
cbc74314532632fbcab88531d43deed7555e125e)
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Iec78a5d5c22c0474eda84a5a793fbb006f3ebbe5
Reviewed-on: https://review.whamcloud.com/45829
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Gaurang Tapase <gtapase@ddn.com>
Tested-by: Gaurang Tapase <gtapase@ddn.com>
Bobi Jam [Thu, 2 Sep 2021 16:27:34 +0000 (00:27 +0800)]
LU-14514 flr: mirror split should not make stale file
Mirror split could leave an all stale mirrors file, this patch
prevent removing the last non-stale mirror from the file.
Lustre-change: https://review.whamcloud.com/42024
Lustre-commit:
83c790cbf2f8f7452e1382051564af6f155b47cf
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I63007784929a2cd18d2823e2250f7307ca7d8d45
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46089
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Wed, 19 Jan 2022 05:22:47 +0000 (21:22 -0800)]
LU-14430 mdd: rename mti_fid to mdi_fid and friends
Rename mdd_thread_info fields to avoid confusion with mdt_thread_info.
The final patch to rename mdd_thread_info fields to a unique prefix:
mti_cattr->mdi_cattr
mti_fid->mdi_fid
mti_fid2->mdi_fid2
MTI_KEEP_KEY->MDI_KEEP_KEY
mti_la_for_fix->mdi_la_for_fix
mti_la_for_start->mdi_la_for_start
mti_pattr->mdi_pattr
mti_tattr->mdi_tattr
mti_tpattr->mdi_tpattr
Lustre-change: https://review.whamcloud.com/43740
Lustre-commit:
b1ed8e57da67feddb9c5e67abaf6db1b70333fa0
Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I17bcc3ddfae400a5ca76e4f654c696da6d3ebbe5
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46195
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Wed, 19 Jan 2022 05:18:09 +0000 (21:18 -0800)]
LU-14430 mdd: rename mti_oa to mdi_oa and friends
Rename fields in mdd_thread_info to confusion with mdt_thread_info.
The second patch of several to rename all mdd_thread_info fields
to use a more unique field prefix:
mti_dof->mdi_dof
mti_dt_rec->mdi_dt_rec
mti_ent->mdi_ent
mti_flags->mdi_flags
mti_hint->mdi_hint
mti_key->mdi_key
mti_link_data->mdi_link_data
mti_name->mdi_name
mti_oa->mdi_oa
mti_range->mdi_range
mti_spec->mdi_spec
The mti_lmv and mti_lrl fields are removed since they are unused.
Lustre-change: https://review.whamcloud.com/43739
Lustre-commit:
9a23a5de12164f9d50db9e602f085bb0c3cc9d8a
Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I6fd4b7f26b7e9561d8a8585eaa5438d6093ebbe5
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/46194
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>