Whamcloud - gitweb
fs/lustre-release.git
3 days agoLU-17567 tests: skip sanity/27T for older OSTs 61/56261/2
Andreas Dilger [Thu, 5 Sep 2024 02:35:30 +0000 (20:35 -0600)]
LU-17567 tests: skip sanity/27T for older OSTs

Skip sanity test_27T for OSTs < 2.14.57.71 since the test depends on
changes made to the OST code on the server.

Test-Parameters: trivial testlist=sanity env=ONLY=27T serverversion=2.14
Fixes: 73d5ee7033 ("LU-15459 llite: clear async errors on write commit sync")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I15dad430c52a351e21cf85511e2c55de07740087
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56261
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Vladimir Saveliev <vladimir.saveliev@hpe.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-18195 osd-ldiskfs: use IGET_NO_CHECKS for objects under lost+found 76/56276/3
Li Dongyang [Fri, 6 Sep 2024 11:20:24 +0000 (21:20 +1000)]
LU-18195 osd-ldiskfs: use IGET_NO_CHECKS for objects under lost+found

With e2fsck older than v1.47.1-rc2-10-g849a9e6e1,
e2fsck could link ea inode under lost+found, and this
creates problems on kernels enforce ea_inode flag checks.

Check for lost+found fid and use NO_CHECKS flag
in the lfsck code path.

Add s_lpf_ino in sbi, and set it by find the lost+found
entry during ext4_fill_super().
In ext4_lookup, check if the parent is the lost+found dir.
Note lost+found won't be changed when target mounted as
lustre, so we only lookup once during mount and don't
monitor lost+found entry. Even if it's changed duing e2fsck
or mounted as ldiskfs, we could still detect at next mount.

Test-Parameters: trivial
Test-Parameters: fstype=ldiskfs serverdistro=el9.4 testlist=conf-sanity env=ONLY=61b
Change-Id: I95492fcc2f0ec4188dfb92b1dc1aa6055cab6ca8
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56276
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-18095 sec: fix ACL handling on recent kernels 54/56254/11
Sebastien Buisson [Wed, 4 Sep 2024 08:36:42 +0000 (10:36 +0200)]
LU-18095 sec: fix ACL handling on recent kernels

On recent distributions like Ubuntu 24.04, the kernel imposes that
ACLs are fetched via the dedicated .get_acl operation (or
.get_inode_acl) instead of doing this via the xattr handlers.
So in ll_get_acl() explicitly fetch the xattr containing ACLs,
XATTR_NAME_ACL_ACCESS or XATTR_NAME_ACL_DEFAULT. This is going to
populate to xattr cache, hence avoiding multiple requests to the MDS.

Also fix sanity-sec test_23b to make sure variable comparisons are
correct. And fix test cleanup to avoid leftovers.

Test-Parameters: testlist=sanity-sec env=ONLY=23b,ONLY_REPEAT=50 mdscount=2 mdtcount=4 osscount=1 ostcount=8 clientcount=2
Test-Parameters: testlist=sanity-sec env=ONLY=23b,ONLY_REPEAT=50 mdscount=2 mdtcount=4 osscount=1 ostcount=8 clientcount=2 clientdistro=ubuntu2404 serverdistro=el9.4
Test-Parameters: testlist=sanity env=ONLY=103a,ONLY_REPEAT=50 mdscount=2 mdtcount=4 osscount=1 ostcount=8 clientcount=2 clientdistro=ubuntu2404 serverdistro=el9.4
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I467d5a558eaa524e823527a8798478934f65abf9
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56254
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: updating llapi-[cr-f] man page style 38/56138/3
Frederick Dilger [Fri, 23 Aug 2024 16:24:33 +0000 (10:24 -0600)]
LU-4315 doc: updating llapi-[cr-f] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- llapi_create_volatile_param.3
- llapi_fd2parent.3
- llapi_fid_parse.3
- llapi_fid_to_handle.3
- llapi_file_create.3
- llapi_file_create_foreign.3
- llapi_file_get_stripe.3
- llapi_file_open.3

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I9b9728e9611da455cb4ff61f424f4b976c533b36
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56138
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
3 days agoLU-4315 doc: updating lfs-[h-l] man page style 90/56090/3
Maximilian Dilger [Wed, 7 Aug 2024 09:34:02 +0000 (03:34 -0600)]
LU-4315 doc: updating lfs-[h-l] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lfs-heat_get.1
- lfs-heat_set.1
- lfs-hsm.1
- lfs-hsm_action.1
- lfs-hsm_clear.1
- lfs-hsm_set.1
- lfs-hsm_state.1
- lfs-ladvise.1

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I58223c11b886fcc8abcf9aab37d72e36a5d98af3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56090
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: updating lfs-[c-g] man page style 72/56072/6
Frederick Dilger [Thu, 15 Aug 2024 07:03:19 +0000 (01:03 -0600)]
LU-4315 doc: updating lfs-[c-g] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lfs-changelog.1
- lfs-changelog_clear.1
- lfs-df.1
- lfs-fid2path.1
- lfs-find.1
- lfs-flushctx.1
- lfs-getdirstripe.1
- lfs-getname.1
- lfs-getsom.1
- lfs-getstripe.1

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I238e137b3d85972229d256e09f620ec8112fd5ea
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56072
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: updating lctl-[node] man page style 59/56059/9
Frederick Dilger [Wed, 14 Aug 2024 17:48:46 +0000 (11:48 -0600)]
LU-4315 doc: updating lctl-[node] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lctl-nodemap-activate.8
- lctl-nodemap-add.8
- lctl-nodemap-add-idmap.8
- lctl-nodemap-add-range.8
- lctl-nodemap-del.8
- lctl-nodemap-del-idmap.8
- lctl-nodemap-del-range.8
- lctl-nodemap-modify.8
- lctl-nodemap-set-fileset.8
- lctl-nodemap-set-sepol.8

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I48a17b30f6e32918f5e1a0e874faaa18c39f65e0
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56059
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Maximilian Dilger <mdilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
3 days agoLU-4315 doc: updating lctl-[li-ne] man page style 55/56055/5
Frederick Dilger [Wed, 14 Aug 2024 05:42:04 +0000 (23:42 -0600)]
LU-4315 doc: updating lctl-[li-ne] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lctl-list_param.8
- lctl-llog_cancel.8
- lctl-llog_catlist.8
- lctl-llog_info.8
- lctl-llog_print.8
- lctl-network.8

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I97cd7e8665794ea80eac4c90c472826057cc71c7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56055
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: updating lctl-[e-lf] man page style 28/56028/10
Frederick Dilger [Tue, 13 Aug 2024 23:19:59 +0000 (17:19 -0600)]
LU-4315 doc: updating lctl-[e-lf] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'.

This also includes other changes like removing < > or { } for singular
required arguments and placing [ ] around optional ones as well as
making all arguments CAPITAL and italicized, literal arguments are
bolded. Lines over 80 characters should be split at the natural line
end rather than the word that goes over the limit as fewer lines will
need to be modified when making changes if each sentence is on it's
own line.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lctl-erase_lcfg.8
- lctl-fork_lcfg.8
- lctl-get_param.8
- lctl-lcfg_clear.8
- lctl-lcfg_erase.8
- lctl-lcfg_fork.8
- lctl-lfsck-query.8
- lctl-lfsck-start.8
- lctl-lfsck-stop.8

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: Ie4c66833f9aa577d1b6f57cbb079211450efdd4c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56028
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: updating lctl-[b-d] man page style 27/56027/6
Frederick Dilger [Tue, 13 Aug 2024 09:30:38 +0000 (03:30 -0600)]
LU-4315 doc: updating lctl-[b-d] man page style

Updating files to match the new code style for Lustre manual pages as
enforced by 'contrib/scripts/checkpatch-man.pl'. This also includes
other changes like removing < > or { } for singular required
arguments and placing [ ] around optional ones as well as making all
arguments CAPITAL and italicized, literal arguments are bolded.

Only using features that appear in groff 1.22.3 as this is the
available version is CentOS 8.

Checked files:
- lctl-barrier.8
- lctl-changelog_deregister.8
- lctl-changelog_register.8
- lctl-clear_conf.8
- lctl-del_ost.8
- lctl-device_list.8
- lctl-dl.8

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: Id214e36300b1b0806e7566cf71d3f97d778f8b79
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56027
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 days agoLU-4315 doc: add man pages to checkpatch 54/55954/54
Frederick Dilger [Wed, 7 Aug 2024 09:34:02 +0000 (03:34 -0600)]
LU-4315 doc: add man pages to checkpatch

Add formatting rules for Lustre Manual pages to checkpatch.
This will encourage not only a uniform formatting for new manual
pages, but it will help when updating older manual pages to ensure
they are following new formatting style.

Note that there is a new AVAILABILITY section that is required for
all pages. This section should include the release and commit
versions that the subject of the page was added.
The checkpatch-man.pl script will generate version based on
what appear in the NAME section of the manual which is also
a required section. This only occurs if the AVAILABILITY
section already exists but is missing either "release X.X.X"
or "commit X.X.X-*"

Using the following pages as guidelines for creating style
rules for man pages:
https://liw.fi/manpages/
https://man7.org/linux/man-pages/man7/man-pages.7.html

Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I5bd7af0cdbeb49a9edc07d0cc2f8a0dccca39a9e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55954
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-15253 mdt: object version race 20/45620/8
Andriy Skulysh [Mon, 31 Aug 2020 08:14:34 +0000 (11:14 +0300)]
LU-15253 mdt: object version race

MDT object version should be obtained under LDLM lock.

Change-Id: Ib828a4065d56e80cbe488a3fdfc6c5da808b20d0
HPE-bug-id: LUS-9280
Signed-off-by: Andriy Skulysh <andriy.skulysh@hpe.com>
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Vitaly Fertman <vitaly.fertman@hpe.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/45620
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
8 days agoLU-16741 osc: rename ptlrpc_req_finished for component osc 94/54694/4
Arshad Hussain [Mon, 8 Apr 2024 11:24:44 +0000 (07:24 -0400)]
LU-16741 osc: rename ptlrpc_req_finished for component osc

Patch renames ptlrpc_req_finished to ptlrpc_req_put for
osc component

Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ica158cc1704ad13a10eef834555b868e7573dfb3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/54694
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
8 days agoLU-18106 obdclass: Fix evict-by-nid for long NIDs 81/56281/2
Chris Horn [Fri, 6 Sep 2024 15:27:21 +0000 (09:27 -0600)]
LU-18106 obdclass: Fix evict-by-nid for long NIDs

LNet NIDs can be up to LNET_NIDSTR_SIZE (64) bytes (including the NUL
byte), but we are only copying UUID_MAX + 3 (43) bytes of the
userspace buffer. NIDs larger than this would get truncated, no
matching export found, and thus no eviction. Fix it by copying
LNET_NIDSTR_SIZE - 1 bytes.

Test-Parameters: trivial
Test-Parameters: testlist=conf-sanity env=ONLY=91,FORCE_LARGE_NID=true,LOAD_MODULES_REMOTE=true
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I9ca15a89f0d41a6ca355a690a7f9fb25a80d8f82
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56281
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
8 days agoLU-18027 tests: skip sanity/56ei in interop testing 65/56265/3
Andreas Dilger [Thu, 5 Sep 2024 06:22:16 +0000 (00:22 -0600)]
LU-18027 tests: skip sanity/56ei in interop testing

sanity test_56ei is checking for projid on special files, but this
is not working with older servers.  Skip it in this case.

Test-Parameters: trivial testlist=sanity env=ONLY=56ei serverversion=2.14
Fixes: 501e5b2c8a ("LU-18027 lfs: lfs find handling special files")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Id20b2677d84e7f3504f410262ead6e8c7e83af62
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56265
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Caleb Carlson <caleb.carlson@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-18141 obdclass: don't check for NULL before free'ing 42/56042/3
Timothy Day [Wed, 14 Aug 2024 04:56:29 +0000 (00:56 -0400)]
LU-18141 obdclass: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ie5d5567fecc1f421fb0894816c880b41ea93843b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56042
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-18051 ofd: Initialize the buffer for lvbo_update properly 08/55808/2
Yang Sheng [Fri, 19 Jul 2024 14:17:00 +0000 (22:17 +0800)]
LU-18051 ofd: Initialize the buffer for lvbo_update properly

The lu_env maybe used in different target than it initialized.
So we should refill it by tags to over come the issue while
MDT & OST work in same node.

Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: Ie7706dc9df2dd6fdbbac801fb266a87d9ed22026
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55808
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-15613 utils: add lfs_migrate --cp option 27/49727/5
Andreas Dilger [Thu, 3 Mar 2022 04:51:25 +0000 (21:51 -0700)]
LU-15613 utils: add lfs_migrate --cp option

Since "lfs_migrate" is only copying a single file at a time, there is
no real benefit from using "rsync" as the only copytool.  Add a short
"--cp" option with suitable arguments to complement "--rsync".

Also allow the copy command to be replaced arbitrarily with RSYNC and
RSYNC_OPTS environment variables to be specified by the caller.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I66c664948d5cc5a7baa5a65550abfaa8d73ebbe5
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/49727
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Feng Lei <flei@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-17943 osd-ldiskfs: initialize dquot before expanding inode size 73/55673/4
Li Dongyang [Tue, 9 Jul 2024 12:49:20 +0000 (22:49 +1000)]
LU-17943 osd-ldiskfs: initialize dquot before expanding inode size

Since upstream kernel v6.1-rc4
8994d11395f8 ext4: avoid unaccounted block allocation when expanding inode

If the quota is not initialized when trying to expand the inode size,
ext4/ldiskfs will just bail and return error.
Unfortunately this change made to some distro kernels like el8.10.

Change-Id: I874c86678c592a60c5954fcb2064150cf77e5634
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55673
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
8 days agoLU-18204 debian: remove mpi dependency for lustre debs 49/56249/5
Louis Douriez [Wed, 15 Dec 2021 10:08:19 +0000 (11:08 +0100)]
LU-18204 debian: remove mpi dependency for lustre debs

Remove mpi-default-bin and mpi-default-dev dependencies for all
debian packages except lustre-tests.

This is a port of
Lustre-change: https://review.whamcloud.com/45860
Lustre-commit: e851e3bf0c4d51f5bb8db78fcc181ade02fa25cc
EX-bug-id: EX-4252

Change-Id: I8fef87aa9fec427c93115b3aad338f093cc5c65c
Signed-off-by: Louis Douriez <ldouriez@ddn.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56249
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-18203 build: check OS type before using dpkg 47/56247/5
Jian Yu [Wed, 21 Sep 2022 07:41:33 +0000 (00:41 -0700)]
LU-18203 build: check OS type before using dpkg

Bright cluster manager by default installs dpkg
on it's centos/rhel installation - presumably to
allow provisioning debian nodes in the cluster,
so dpkg is in the path and can't be removed.

This patch fixes LB_USES_DPKG to check OS type
before checking if dpkg is installed.

This is a port of
Lustre-change: https://review.whamcloud.com/48616
Lustre-commit: 9c913c27e765dfd3a1a1aad47126164574508a13
Ex-bug-id: EX-5975

Test-Parameters: trivial clientdistro=ubuntu2404 testlist=runtests

Change-Id: Idc9f6edc91f9c89b40f259421b088287e08bfe9c
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56247
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Emoly Liu <emoly@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
8 days agoLU-18196 build: Use -j nproc in lustre dkms install during make 34/56234/4
Gaurang Tapase [Mon, 25 Apr 2022 12:59:46 +0000 (18:29 +0530)]
LU-18196 build: Use -j nproc in lustre dkms install during make

This is a port of
Lustre-change: https://review.whamcloud.com/47132
Lustre-commit: 56e33729e84f87a73415e195567ae29ec6ab6cda
EX-bug-id:EX-4080

Test-Parameters: trivial

Signed-off-by: Gaurang Tapase <gtapase@ddn.com>
Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: I4f815a0be8900ad427e59cace9a6afc3297710d0
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56234
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
8 days agoLU-18103 llite: Apply the change of splice_read 93/56093/4
Yang Sheng [Tue, 20 Aug 2024 04:25:48 +0000 (12:25 +0800)]
LU-18103 llite: Apply the change of splice_read

Upstream changes in kernel v6.4-rc2-3-g69df79a45111
("splice: Rename direct_splice_read() to copy_splice_read()")
the rule of splice_read().  For newer kernels we now
choose copy_splice_read() to adapt it.

Test-Parameters: mdtcount=4 mdscount=2 env=SANITY_EXCEPT="17e 27J 103" clientdistro=ubuntu2404 testlist=sanity
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: Ic13da773691ada3c21b9803f65ea3e2533f7885a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56093
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
8 days agoLU-18098 pcc: increase the async open time slightly for test_40 25/56225/2
Qian Yingjin [Sat, 31 Aug 2024 20:45:12 +0000 (04:45 +0800)]
LU-18098 pcc: increase the async open time slightly for test_40

Occasionally async open time may take a tiny bit longer due to
races in the test case sanity-pcc/test_40.
Increase the async open time slightly and ignore this kind of
error.

Test-Parameters: trivial
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I699f14a4c83e6e9700b64522b1ebb360d929e211
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56225
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-18092 test: skip sanity-lfsck read check 24/56224/2
Lai Siyao [Mon, 2 Sep 2024 02:21:14 +0000 (22:21 -0400)]
LU-18092 test: skip sanity-lfsck read check

On some new kernels read on foreign layout doesn't fail yet, skip
read failure check in sanity-lfsck test_38.

Test-Parameters: trivial testlist=sanity-lfsck env=ONLY=38,ONLY_REPEAT=30
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Ied10a95db217c58383a4082f0bca11c7b47e3276
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56224
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Alex Deiter
Reviewed-by: Oleg Drokin <green@whamcloud.com>
8 days agoLU-18193 test: fix sanity 300l 52/56252/3
Lai Siyao [Wed, 4 Sep 2024 07:23:08 +0000 (03:23 -0400)]
LU-18193 test: fix sanity 300l

Sanity.sh test_300l mkdir with non-root user, but it's creating a
remote dir, it will fail because it requires enable_remote_dir_gid=-1.

Fixes: 29d18f84e ("LU-6341 llite: Use ll_dir_getstripe to get default LMVEA")
Test-Parameters: trivial testlist=sanity env=ONLY=300l,ONLY_REPEAT=30
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I03d61e89396b205d80ed302b2fd6ccf716a39366
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56252
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-18030 tests: Add a test to ensure permissions copy on nfs 76/56176/8
Oleg Drokin (aider) [Wed, 28 Aug 2024 06:42:49 +0000 (02:42 -0400)]
LU-18030 tests: Add a test to ensure permissions copy on nfs

Also ensure no empty POSIX ACL is created.

Test-Parameters: trivial testlist=parallel-scale-nfsv4,parallel-scale-nfsv3
Change-Id: I85d37f8eebd17d6acdb67c552fec2caa79dbd39c
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56176
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
11 days agoLU-18182 lctl: Handle fault when issuing 'lctl net' cmd 05/56205/3
Arshad Hussain [Fri, 30 Aug 2024 07:24:14 +0000 (03:24 -0400)]
LU-18182 lctl: Handle fault when issuing 'lctl net' cmd

'lctl net' command whithout arguments should dump
usage message and not fault.

After patch:
$ lctl net
configure LNET
usage: net [Network] <up|down> [-l]
  -l: Override existing, else it will create new

Before patch:
$ lctl net
Segmentation fault (core dumped)

Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I7c885032d8b5493bcadc35062047a3e0a5a1e48f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56205
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-17899 scripts: Fix lsvcgss service startup dependencies 83/56183/3
Frederick Dilger [Wed, 28 Aug 2024 16:22:09 +0000 (10:22 -0600)]
LU-17899 scripts: Fix lsvcgss service startup dependencies

A VM was found which did not start networking on boot due to a
circular dependency between it and the lsvcgss service description:

 systemd: network-online.target: Found ordering cycle on network.target
 systemd: network-online.target: Found dependency on lsvcgss.service
 systemd: network-online.target: Found dependency on network-online.target
 systemd: network-online.target: Job network.target/stop deleted to
      break ordering cycle starting with network-online.target/stop

The lsvcgss.service file include "WantedBY=network.target", however
since "network.target" can start before "network-online.target" this
can cause service order issues on boot.

Instead "WantedBy=multi-user.target" is used, which is common usage
for network based services with RHEL linux.

Test-Parameters: trivial
Fixes: 5e39181b6d8 ("LU-17899 gss: improved systemd unit file for SSK daemon")
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I66a16f0601e8fddbcefad3c0301437d6120d6a27
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56183
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
11 days agoLU-18173 obdclass: remove lprocfs_strnstr() 66/56166/5
Etienne AUJAMES [Tue, 27 Aug 2024 12:51:23 +0000 (14:51 +0200)]
LU-18173 obdclass: remove lprocfs_strnstr()

strnstr() was added in the kernel since RHEL6, we no longer need
lprocfs_strnstr() and it can be removed.

Test-Parameters: trivial
Signed-off-by: Etienne AUJAMES <eaujames@ddn.com>
Change-Id: Id2e3c948dd506b2d983ff776a9136c244d54f6ce
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56166
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Feng Lei <flei@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
11 days agoLU-18086 sec: rename pages to objects 81/55981/6
Artem Blagodarenko [Fri, 9 Aug 2024 09:47:09 +0000 (10:47 +0100)]
LU-18086 sec: rename pages to objects

Page pool operates with pages, so it has right name. Some internal
structures and functions work with objects but contain "page" in
names. This adds some misunderstanding.

This patch rename pages to objects there needed to make code clear.

Test-Parameters: trivial
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Signed-off-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Change-Id: I15bed29116818c3ddae2bf9e490ce14318a4eded
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55981
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-18102 tests: skip read/write in sanity/27J for some kernels 77/55977/5
Bobi Jam [Fri, 9 Aug 2024 03:56:36 +0000 (11:56 +0800)]
LU-18102 tests: skip read/write in sanity/27J for some kernels

Kernel commit v5.11-10234-gcbd59c48ae2b (5.12) skips filemap_read()
with 0 file size, commit v6.2-rc4-61-g5956592ce337 (6.2) just correct
the last page read in filemap_read(), it still skips the real file
read with 0 sized file.

Test-Parameters: trivial
Fixes: b711af7d24 ("LU-16101 tests: skip sanity/27J for more kernels")
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I1c562cce1374df7659c8d178fb3601e4dfb01744
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55977
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
11 days agoLU-18171 tests: Update sanity-sec for IPv6 57/56157/4
Chris Horn [Mon, 26 Aug 2024 15:26:19 +0000 (09:26 -0600)]
LU-18171 tests: Update sanity-sec for IPv6

sanity-sec test 55 and 64 need to be updated to specify a netmask for
IPv6 client NIDs.

Test-Parameters: trivial
Test-Parameters: testlist=sanity-sec env=ONLY="55 64",FORCE_LARGE_NID=true,LOAD_MODULES_REMOTE=true
Fixes: 0ea23e0194 ("LU-13307 nodemap: have nodemap_add_member support large NIDs")
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I64680befee7c1049df1ceecb8a3bd5a16671f111
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56157
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
11 days agoLU-18162 lu: cleanup lu_object.h header 17/56117/2
Timothy Day [Sat, 17 Aug 2024 20:06:11 +0000 (16:06 -0400)]
LU-18162 lu: cleanup lu_object.h header

Use kernel doc style instead of the old Doxygen style. Avoid
using ** for comments that aren't kernel doc. Fix some
checkpatch.pl issues. Use SPDX.

Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I9e6e16b49e8ce64053248b182549ef94ab68cf4b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56117
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-10499 pcc: improve pcc-detach and man pages 54/54454/9
Andreas Dilger [Sun, 10 Oct 2021 21:52:19 +0000 (15:52 -0600)]
LU-10499 pcc: improve pcc-detach and man pages

Improve "lfs pcc detach_fid" to have a "--mnt|-m" option to match
the corresponding option for "lfs pcc attach_fid".  There isn't
any reason that they should be different.

Separate lfs-pcc-attach.1 and lfs-pcc-detach.1 from the
lfs-pcc.1 man page and improve descriptions of these commands.
Add links for lfs-pcc-attach_fid.1 and lfs-pcc-detach_fid.1.

Describe fields in lfs-pcc-state.1.  Add lfs-pcc-delete.1 page.

EX-bug-id: EX-4006
Test-Parameters: trivial testlist=sanity-pcc
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ieff40b7b133aef64200a9a3f6c1a948d7c3ebbe5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/54454
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-18108 idl: deprecate rr_mirror_id usage 88/55988/10
Andreas Dilger [Fri, 9 Aug 2024 22:24:00 +0000 (16:24 -0600)]
LU-18108 idl: deprecate rr_mirror_id usage

The rr_mirror_id_old field used the last reserved field in
struct mdt_rec_reint but is unused for any other reint type.
There are lots of unused fields in this struct that could be
used instead, so rr_umask was chosen for rs_mirror_id_new
since it is unlikely that a file resync will ever need it.
The other rs_padding fields could potentially be needed at
some point (timestamps or size/blocks) so they were not used.

This field is only used by "lfs mirror resync" operations, so
its usage is limited during normal operations, and only in a
few small functions, so the impact of this change is minimal.
It still needs interoperability, but the number of sites using
FLR mirroring is still not very widespread even today, so will
help shorten the time that interop needs to be maintained, but
I didn't add a LUSTRE_VERSION_CODE check for this yet.

After the rr_mirror_id_old field is no longer being used, it
could revert to a single __u32 and be used for something else.

Test-Parameters: testlist=sanity-flr serverversion=2.15
Test-Parameters: testlist=sanity-flr clientversion=2.15
Fixes: 14171e787d ("LU-10258 lfs: lfs mirror write command")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I5b760d3bb359ff28ca5c2b299880f00e953ebbe5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55988
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Feng Lei <flei@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
11 days agoLU-14518 ptlrpc: avoid server STONITH for slow request 25/53225/11
Andreas Dilger [Fri, 12 Mar 2021 22:32:45 +0000 (15:32 -0700)]
LU-14518 ptlrpc: avoid server STONITH for slow request

If a service is temporarily overloaded, request processing times
may exceed at_max for a short time.  We don't want to increase
at_max excessively, since that slows down client RPC resend and
recovery, but we also want to avoid server STONITH because at_max
is used directly by ptlrpc_svcpt_health_check() to determine if
the service reports "NOT HEALTHY" and forces HA takeover.

Slow request processing is not as serious as, say, an LBUG, so
allow a configurable parameter at_unhealthy_factor to allow
requests to exceed at_max before a service is considered unhealthy.
This defaults to 3x at_max, and 0 disables service health checks.

Also, importantly, it shouldn't be considered an error if the
RPC *requests* are waiting a long time (that can happen if the
server is overloaded, or NRS is delaying some RPCs), but only
if the *service* is unable to process *any* requests in a long
time.  Otherwise, it will only print a warning of delayed RPCs.

Add sanityn.sh test_200 to exercise related health check test

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ifaf4454efacf5f5ec8fc24f75a49e17e5a3ebbe5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53225
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
11 days agoLU-6142 osc: Fix style issues for osc_request.c 48/55348/8
Arshad Hussain [Fri, 7 Jun 2024 05:39:31 +0000 (01:39 -0400)]
LU-6142 osc: Fix style issues for osc_request.c

This patch fixes issues reported by checkpatch
for file lustre/osc/osc_request.c

Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I81bc9574364b9f6a1daab44bc350dc1ec7296a12
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55348
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18110 doc: llapi_pcc_detach_fid_fd wrong enum names 71/55971/3
Oleg Drokin [Thu, 8 Aug 2024 14:57:23 +0000 (10:57 -0400)]
LU-18110 doc: llapi_pcc_detach_fid_fd wrong enum names

The manpage incorrectly spells some enum names in description

Change-Id: Ic9cc27dc638886a0d41cbe939fb507e4057a3447
Test-Parameters: trivial
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55971
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Frederick Dilger <fdilger@whamcloud.com>
3 weeks agoLU-17428 ldlm: reduce default lru_max_age 82/53682/9
Andreas Dilger [Tue, 16 Jan 2024 06:28:01 +0000 (23:28 -0700)]
LU-17428 ldlm: reduce default lru_max_age

Decrease the default value of lru_max_age from 3900s to 600s.
Otherwise, clients can accumulate too many old locks.

Fixes: fe60e0135e ("LU-6529 ldlm: reclaim granted locks defensively")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I93e288491c868b79162620336830290a85529f0d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53682
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18137 ksocklnd: Fix TCP socket cleanup 89/56089/4
Mark Roper [Sun, 18 Aug 2024 18:25:54 +0000 (18:25 +0000)]
LU-18137 ksocklnd: Fix TCP socket cleanup

Linux upstream commit v6.11-rc3-g151c9c724d05d5b0d changed the
handling of orphaned TCP connections. The commit stops the timers
and orphan connection cleanup by default for kernel-created
sockets after sock_release is called. ksocklnd relies on Linux
TCP orphan connection cleanup and this commit changes ksocklnd
socket creation to increment sk_net_refcnt on each socket it
creates and to register each socket with the namespace for
proper orphan connection management.

The upstream Linux commit has been backported to various Linux
distributions including Amazon Linux 2 kernels 4.14 and 5.10.

Test-Parameters: trivial
Signed-off-by: Mark Roper <ropermar@amazon.com>
Change-Id: Ib70ba8fcc3f1e49d3afbe788fccd777d02ec39b8
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56089
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-16796 llite: Change struct pcc_dataset to use kref 21/56121/4
Arshad Hussain [Thu, 22 Aug 2024 08:54:46 +0000 (04:54 -0400)]
LU-16796 llite: Change struct pcc_dataset to use kref

This patch changes struct pcc_dataset to use
kref instead of atomic_t

Test-Parameters: trivial testlist=sanity-pcc
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Id9f7521a999be5917ce03a0ec4572091b2043c3f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56121
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18160 lnet: ensure lnetctl ping completes in a finite time 10/56110/7
Timothy Day [Wed, 21 Aug 2024 16:31:29 +0000 (16:31 +0000)]
LU-18160 lnet: ensure lnetctl ping completes in a finite time

Make the wait_for_completion_timeout() in lnet_ping() interruptible,
so users can halt lnetctl. Remove the second wait_for_completion()
after LNetMDUnlink(). Per the comments in lib-md.c, active messages
associated with the MD may get aborted upon unlinking. So just give
up on the ping.

Clean up some nearby code to make the logic more clear.

Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ia49c9b1f152f411ebabc5e1c00ff3f03a99f3596
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56110
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
3 weeks agoLU-17794 crypto: replace 1-element array in llcrypt_symlink_data 05/56105/2
Jian Yu [Wed, 21 Aug 2024 06:48:02 +0000 (23:48 -0700)]
LU-17794 crypto: replace 1-element array in llcrypt_symlink_data

This patch replaces 1-element array with flexible array
in 'struct llcrypt_symlink_data' to resolve the
UBSAN array-index-out-of-bounds runtime warning.

Test-Parameters: trivial mdtcount=4 mdscount=2 \
  testlist=sanity,sanity-sec

Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2404 testlist=sanity,sanity-sec

Change-Id: Ia28297ade23c6f739f4bf2bc5f7a4c0c2280bb24
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56105
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18156 kernel: update SLES15 SP5 [5.14.21-150500.55.73.1] 92/56092/3
Jian Yu [Mon, 19 Aug 2024 18:00:16 +0000 (11:00 -0700)]
LU-18156 kernel: update SLES15 SP5 [5.14.21-150500.55.73.1]

Update SLES15 SP5 kernel to 5.14.21-150500.55.73.1 for Lustre client.

Test-Parameters: trivial mdtcount=4 mdscount=2 \
  clientdistro=sles15sp5 testlist=sanity

Test-Parameters: optional clientdistro=sles15sp5 testgroup=full-part-1
Test-Parameters: optional clientdistro=sles15sp5 testgroup=full-part-2
Test-Parameters: optional clientdistro=sles15sp5 testgroup=full-part-3

Change-Id: I885498d28685e6f0c40e8b9a94f55473cb599924
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56092
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Alex Deiter
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-17794 lustre: replace 0-length arrays with flexible arrays (3/3) 77/56077/4
Jian Yu [Wed, 21 Aug 2024 20:19:43 +0000 (13:19 -0700)]
LU-17794 lustre: replace 0-length arrays with flexible arrays (3/3)

This patch replaces 0-length arrays with flexible arrays to
resolve the UBSAN array-index-out-of-bounds runtime warnings.

Most replacement of 0-length arrays with flexible arrays
requires no special handling. Simply removing the “0” in
the array declaration is sufficient.

In order to have a flexible array member in a union or alone
in a struct, it needs to be wrapped in an anonymous struct
with at least 1 named member, but that member can be empty.
This was wrapped in Linux with the DECLARE_FLEX_ARRAY() macro.

This patch also work-arounds SWIG limitations with flexible arrays.

Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2404 testgroup=full-dne-part-1
Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2404 testgroup=full-dne-part-2
Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2404 testgroup=full-dne-part-3

Change-Id: I873663373332d63fb79137163149d42663f34705
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56077
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Bruno Faccini <bfaccini@nvidia.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18114 lfsck: split "lctl lfsck_*" group into subcommands 97/55997/7
Emoly Liu [Thu, 15 Aug 2024 08:00:55 +0000 (16:00 +0800)]
LU-18114 lfsck: split "lctl lfsck_*" group into subcommands

Split "lctl lfsck_*" command group into subcommands, e.g.
"lctl lfsck_start" to "lctl lfsck start".
Also, sanity-lfsck.sh test_12a is modified a little to verify
this patch.

Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: I039f8942b45a16a26386b579919018163e0d8c7c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55997
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Frederick Dilger <fdilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18086 sec: fix ppp_max_pages 63/55963/6
Sergey Cheremencev [Thu, 8 Aug 2024 09:49:15 +0000 (10:49 +0100)]
LU-18086 sec: fix ppp_max_pages

Set ppp_max_pages as a number of pool's
elements instead of pages number.

Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Signed-off-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Change-Id: Ic7ce0b7d6416fb7ace8b0b9ed33baeeffa95d13b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55963
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18086 obdclass: change POOLS_COUNT 15/55915/8
Sergey Cheremencev [Thu, 25 Jul 2024 22:22:44 +0000 (01:22 +0300)]
LU-18086 obdclass: change POOLS_COUNT

POOLS_COUNT must guarantee that page_pools
largest pool size is 2 * MAX_BRW_SIZE.
Take into account that pool_order is a power
of 2 number of pages. Previous logic assumed
that pool_order is a power of 2 bytes. That
said, there were 27 pools to provide 64MB*2
pool(the largest pool). As maximum pool pages
is cfs_totalram_pages / POOLS_COUNT, it made
pools too small. For example, for system with
3G RAM pool with order 0(1 page) maximum pool
size would be about 100MB. It might cause
-ENOMEM despite the fact there is enough memory
in a system.

Also added, that every pool must have at
least one object.

Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Signed-off-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Change-Id: I872f4bdda392d7675b26b2f59ac2520208a96fa0
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55915
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18086 obdclass: page_pools shrinker fix 14/55914/7
Sergey Cheremencev [Tue, 9 Jul 2024 02:43:29 +0000 (05:43 +0300)]
LU-18086 obdclass: page_pools shrinker fix

page_pool shrinker should consider opp_free_pages
as a number of memory regions with the size of
2^pool_order pages. Otherwise it starts shrinking
only when becomes too large, for example 2GB instead
of 64MB. It often might be the reason of OOM especially
when compressed files with different chunk-sizes
have been written. In a such case several pools
created for different chunk sizes might hold gigabytes
of memory without any chance to release it.

Fix element_size to return correct element size instead
of number of pages. Because of that elements in
page_pools had below sizes:

  order 0 = 4096
  order 1 = 2
  order 2 = 4
  ....
  order 17 = 131072

This made possible to have elements with sizes 2,4,8,...
bytes that have been allocated with OBD_VMALLOC.
Now all sizes are miltiple of PAGE_SIZE:

  order 0 = 4096
  order 1 = 8192
  ...
  order 5 = 131072

Change the logic around opp_idle_idx.

1. Recalculate opp_idle_idx in __sptlrpc_pool_put_pages the
   same way as it done in __sptlrpc_pool_get_pages. It is
   possible that opp_idle_idx might become 0 or very small
   (less than 10). If there is no new allocations it would
   be impossible to free anything from the pool during 40
   seconds(CACHE_QUIESCENT_PERIOD) despite the large amount
   of free elements ready to shrinking.
2. In pool_shrink_count when opp_idle_idx == IDLE_IDX_MAX,
   it means no one accessed pool for CACHE_QUIESCENT_PERIOD
   (40 seconds), i.e. we may release as much as possible
   pages. Earlier in a such case pool_shrink_count always
   returned 0. Another words it was impossible to shrink
   anything from the pool if there was no allocations for 40s.

Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Signed-off-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Change-Id: I6b55ba67b0d21cdffdb57034e8e66063745f796e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55914
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18030 llite: make ll_set_acl send xattr to server unmodified 15/55715/4
Oleg Drokin [Fri, 12 Jul 2024 14:25:13 +0000 (10:25 -0400)]
LU-18030 llite: make ll_set_acl send xattr to server unmodified

Otherwise posix_acl_update_mode might convert acl into inode mode
change and as the result it's lost and the existing ACL xattr
is removed (if any

Change-Id: I3956beac04889a657f76f9b36dbe97518ae9f2ac
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55715
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
3 weeks agoLU-17863 hsm: add ioctl to set data version in HSM xattr 99/55599/9
Nikitas Angelinas [Mon, 1 Jul 2024 18:00:43 +0000 (21:00 +0300)]
LU-17863 hsm: add ioctl to set data version in HSM xattr

When migrating files to a Lustre filesystem (e.g. from another Lustre
filesystem), certain HSM solutions might prefer to bypass the Lustre
HSM subsystem, i.e. not use use llapi_hsm_import(), the Lustre HSM
coordinator and a copytool and instead just copy files to the
filesystem, as this enables a simpler workflow.

Since there already exists another copy of some of the files, users
might want to set the HS_EXISTS and HS_ARCHIVED HSM flags and perform
an HSM release operation to free disk space; however, the latter
operation fails in mdt_hsm_release(), as there is a data version
mismatch between the data version that is sent from the client, which
has been calculated from the OSTs and the data version in the HSM
xattr, as the latter hasn't been set appropriately via
hsm_cdt_request_completed(), as the Lustre HSM subsystem was bypassed
and the relevant HSM flags were force-set via llapi_hsm_state_set().

Add an ioctl to set the data version field in the HSM xattr to a
specified value and enable "lfs data_version" to synchronize it, to
the data version that is calculated from the OST objects.

HPE-bug-id: LUS-12152
Signed-off-by: Nikitas Angelinas <nikitas.angelinas@hpe.com>
Change-Id: Ic8538aa884c675e8561cbc4e2b1d83d64e23a67a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55599
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andriy Skulysh <andriy.skulysh@hpe.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-10499 pcc: print help msg more clearly for detach 25/54425/8
Qian Yingjin [Thu, 16 Sep 2021 02:45:37 +0000 (10:45 +0800)]
LU-10499 pcc: print help msg more clearly for detach

In this patch, it prints the help message for detach_fid and
detach commands more clearly when not given the required
parameters such as mount point or FIDs.

It also ignores the -EINPROGRESS error if the file is being
attached, i.e. copy data from Lustre OSTs into PCC.

Reset llite.*.pcc_async_threshold to the original value when the
subtest exits, so that it doesn't affect later tests.

Wait for async pcc attach to finish in test_47.

EX-bug-id: EX-3814 EX-3409
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I547e80e5c9c213b159039b9b79da176cdb91c4bc
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/54425
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
3 weeks agoLU-13308 mdd: add LLOG_F_EXT_X_NID_BE 99/50099/21
Mr NeilBrown [Wed, 21 Aug 2024 13:51:39 +0000 (07:51 -0600)]
LU-13308 mdd: add LLOG_F_EXT_X_NID_BE

The log already has enough space for a large nid thanks to extra space
in string changelog_ext_nid, but there is no way to tell if the
provided nid is large.

Also the nid is stored host-endian meaning the log is nor portable
across architectures.  !!!  A large nid is always big-endian.

So add a flag to assert that the nid is bigendian and use it only for
large nids.

For 4-byte nids we continue to use host-endian and don't set the BE
flag.

LLOG_F_EXT_X_NID_BE indicates that the log implementation supports
large big-endian nids.

CLFE_NID_BE indicates that the NID in this record is big-endian and
large.

CHANGELOG_FLAG_NID_BE is sent by user land tools to tell the kernel
to present NIDs in a large big-endian format.

uc_nid in struct lu_ucred is now a large nid - struct lnet_nid

Signed-off-by: Mr NeilBrown <neilb@suse.de>
Signed-off-by: James Simmons <jsimmons@infradead.org>
Change-Id: I6938090df4f30e916b79d1f58b34b518ab6bdcf7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/50099
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Etienne AUJAMES <eaujames@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-17368 tests: init the variables in correct order 77/53477/17
Elena Gryaznova [Mon, 17 Jun 2024 15:24:22 +0000 (18:24 +0300)]
LU-17368 tests: init the variables in correct order

recovery-scale-lib expects the CLIENTS set:
  NODES_TO_USE=${NODES_TO_USE:-$CLIENTS}

but this variable initialized later:
  init_logging() ->
    init_clients_lists () ->
      export CLIENTS=$(comma_list $clients)

This wrong order leads to empty NODES_TO_USE and
recovery-*-scale tests failed with:
   dd: ssh: Could not resolve hostname dd: Name or service not known

Test-Parameters: trivial env=SLOW=no,FAILURE_MODE=HARD \
    clientcount=4 mdtcount=1 mdscount=2 osscount=2 \
    austeroptions=-R failover=true iscsi=1 \
    testlist=recovery-mds-scale,recovery-oss-scale,recovery-random-scale

Fixes: 2c12b93ccb ("LU-9798 tests: split server recovery tests")
HPE-bug-id: LUS-12058
Signed-off-by: Elena Gryaznova <elena.gryaznova@hpe.com>
Change-Id: I3967c7cca7f480610defbeba09b9f5628f7085d3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53477
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Vladimir Saveliev <vladimir.saveliev@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-6142 lov: SPDX for Logical Object Volume 32/56032/2
Timothy Day [Wed, 14 Aug 2024 02:24:22 +0000 (22:24 -0400)]
LU-6142 lov: SPDX for Logical Object Volume

Convert from verbose license text to SPDX.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Idc04972e9167cfdf4544029914fa74d20f97d381
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56032
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-6142 lmv: SPDX for Logical MetaData Volume 30/56030/2
Timothy Day [Wed, 14 Aug 2024 02:10:25 +0000 (22:10 -0400)]
LU-6142 lmv: SPDX for Logical MetaData Volume

Convert from verbose license text to SPDX.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Iae8741b2de330a0029ab24a86e6b2fb006d7c978
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56030
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-6142 quota: SPDX for Lustre Quota 29/56029/2
Timothy Day [Wed, 14 Aug 2024 02:01:57 +0000 (22:01 -0400)]
LU-6142 quota: SPDX for Lustre Quota

Convert from verbose license text to SPDX.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I7bb663ec8bf9713c02a418868fdbad6a354aa6ae
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56029
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-6142 lnet: Fix style issues for socklnd.[ch] 22/55822/5
Arshad Hussain [Fri, 19 Jul 2024 10:22:52 +0000 (06:22 -0400)]
LU-6142 lnet: Fix style issues for socklnd.[ch]

This patch fixes issues reported by checkpatch
for both files lnet/klnds/socklnd/socklnd.c and
socklnd.h

Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Idbecae78834aac1e1d321bb8614a1ff971903669
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55822
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-6142 lnet: Handle differently return from kib_fmr_pool_map() 36/55736/4
Arshad Hussain [Mon, 15 Jul 2024 09:57:09 +0000 (05:57 -0400)]
LU-6142 lnet: Handle differently return from kib_fmr_pool_map()

This patch removes likely() macro when handling
return from kib_fmr_pool_map() and reorders the
case for if/else.

This patch also fixes issues reported by checkpatch
for file lnet/klnds/o2iblnd/o2iblnd.c

Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I3dd1f45979e19d3f677d04876c66ba45dcfe9576
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55736
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18167 nodemap: Fix return value of range_search/find 37/56137/4
Chris Horn [Fri, 23 Aug 2024 17:40:17 +0000 (11:40 -0600)]
LU-18167 nodemap: Fix return value of range_search/find

The 'range = NULL' assignments in range_search() and range_find() are
no-ops because the list_for_each_entry_safe macro will set range to
some non-NULL value before the loop exits. Thus, range_search() and
range_find() can return a non-NULL value even when it doesn't match
the NID we are searching for.

Modify the loops to return range immediately upon finding a match.

Test-Parameters: trivial
Test-Parameters: testlist=sanity-sec env=ONLY=16,LOAD_MODULES_REMOTE=true,FORCE_LARGE_NID=true
Fixes: 0ea23e0194 ("LU-13307 nodemap: have nodemap_add_member support large NIDs")
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: Id00a2b73da127afaf94d1ecf5d1ef0080d11c6fd
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56137
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
3 weeks agoNew tag 2.15.90 2.15.90 v2_15_90
Oleg Drokin [Sun, 25 Aug 2024 16:35:34 +0000 (12:35 -0400)]
New tag 2.15.90

Change-Id: Ibc1fe7b954de78332cfc97c1b54e6cd63b236872
Signed-off-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18110 doc: fix lustre_routes_config misspelling 73/55973/2
Oleg Drokin [Thu, 8 Aug 2024 14:59:58 +0000 (10:59 -0400)]
LU-18110 doc: fix lustre_routes_config misspelling

lustre_routes_config wrongly mentions lustre_route_config
in the description

Change-Id: I1a181cb7a79bc3942d70e22a83a50cbb609cabed
Test-Parameters: trivial
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55973
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Frederick Dilger <fdilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18110 doc: wrong ENOMEM description in manpage 72/55972/2
Oleg Drokin [Thu, 8 Aug 2024 14:58:50 +0000 (10:58 -0400)]
LU-18110 doc: wrong ENOMEM description in manpage

llapi_layout_ost_index_reset.3 wrongly describes ENOMEM

Test-Parameters: trivial
Change-Id: I6d17b97aeccc83bfaef35f79b6bd763fde81adcd
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55972
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18111 ptlrpc: don't drop expired cancel request 46/55946/3
Andriy Skulysh [Mon, 24 Apr 2023 10:54:05 +0000 (13:54 +0300)]
LU-18111 ptlrpc: don't drop expired cancel request

There is no need to drop expired cancel request by
a server because the client will resend the same content.
Even if the server is heavy loaded cancel request processing
helps to release ldlm resources and avoids spending time
on processing of the same resends.

Add extra check to prevent same cookie for another client.

Change-Id: Ib6e22de72262065c453a390e5563f6ac4212c5a6
HPE-bug-id: LUS-11479, LUS-11595
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
Signed-off-by: Andriy Skulysh <andriy.skulysh@hpe.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55946
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
3 weeks agoLU-18085 llite: use RCU to protect the dentry_data 84/55984/8
Yang Sheng [Fri, 9 Aug 2024 16:11:14 +0000 (00:11 +0800)]
LU-18085 llite: use RCU to protect the dentry_data

The upstream has changed the rule of dentry kill since
v6.7-rc1-20-g1c18edd1b7a0. The d_release callback will
be invoked before the dentry was removed from children
list. This means the changes of d_fsdata could be seen
for others. We have already used call_rcu to handle the
release. So just apply RCU in read side to ensure access
safety.

Test-Parameters: mdtcount=4 mdscount=2   env=SANITY_EXCEPT="17e 27J 103 244a"   clientdistro=ubuntu2404 testlist=sanity
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I58713bfbf22749d6c0a5e40f710549662248e32f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55984
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Neil Brown <neilb@suse.de>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
3 weeks agoLU-18151 contrib: add example Coccinelle scripts 73/56073/2
Timothy Day [Fri, 16 Aug 2024 03:25:56 +0000 (23:25 -0400)]
LU-18151 contrib: add example Coccinelle scripts

Add a few example Coccinelle scripts to contrib/. Also,
update clang-and-static-analysis.txt to talk about
Coccinelle.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I9a09b2f273bb2257e67c253cb3a69896c32d588a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56073
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18150 kernel: update RHEL 9.4 [5.14.0-427.31.1.el9_4] 69/56069/2
Jian Yu [Thu, 15 Aug 2024 16:55:07 +0000 (09:55 -0700)]
LU-18150 kernel: update RHEL 9.4 [5.14.0-427.31.1.el9_4]

Update RHEL 9.4 kernel to 5.14.0-427.31.1.el9_4.

Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
  clientdistro=el9.4 serverdistro=el9.3 testlist=sanity

Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
  clientdistro=el9.4 serverdistro=el9.3 testlist=sanity

Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
  clientdistro=el9.3 serverdistro=el9.4 testlist=sanity

Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
  clientdistro=el9.3 serverdistro=el9.4 testlist=sanity

Test-Parameters: optional clientdistro=el9.4 serverdistro=el9.4 \
  testgroup=full-part-1

Test-Parameters: optional clientdistro=el9.4 serverdistro=el9.4 \
  testgroup=full-part-2

Test-Parameters: optional clientdistro=el9.4 serverdistro=el9.4 \
  testgroup=full-part-3

Change-Id: I91ca867fcdd32b74322188ce1c32a04b1e610279
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56069
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18146 ldiskfs: refresh SUSE 15 SP4 and SP5 66/56066/4
Shaun Tancheff [Fri, 16 Aug 2024 04:00:30 +0000 (11:00 +0700)]
LU-18146 ldiskfs: refresh SUSE 15 SP4 and SP5

Refresh patches for SUSE 15 SP4 and SP5:
   ext4-data-in-dirent.patch
   ext4-pdirop.patch
   ext4-prealloc.patch

Also add relevant patches:
   ext4-dquot-commit-speedup.patch
   ext4-filename-encode.patch
   ext4-encdata.patch
   ext4-add-IGET_NO_CHECKS-flag.patch

Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I529e799c919f1963017689ba6c02f509dfea3cfd
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56066
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18145 gss: fix key unlink for regular user 53/56053/6
Sebastien Buisson [Wed, 14 Aug 2024 16:08:17 +0000 (18:08 +0200)]
LU-18145 gss: fix key unlink for regular user

In case a key is unlinked for a regular user, it can be necessary to
switch credentials to find a valid keyring for that user, which
implies changing the user namespace as well. This needs a reference
drop on the original namespace, as a ref was taken by prepare_creds(),
and also to take a reference on the newly set namespace, as a ref will
be dropped when put_cred() is finally called.

Because of the user switch, calling get_user_keyring() also adds one
more ref on the user keyring, for kernel implementation based on user
keyring pinned from the user_struct struct. This extra ref needs to be
dropped, but just for this specific case.

Test-Parameters: trivial
Test-Parameters: testgroup=review-dne-selinux-ssk-part-1
Test-Parameters: testgroup=review-dne-selinux-ssk-part-2
Test-Parameters: kerberos=true testlist=sanity-krb5
Fixes: bc740feeaa ("LU-17714 gss: support revoked session keyring")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I4d8fb354394a9f97dedf8aca84e4e3381a98fc60
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56053
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Bruno Faccini <bfaccini@nvidia.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 obd: remove OBD_SLAB_FREE_RTN0() 51/56051/2
Timothy Day [Wed, 14 Aug 2024 14:07:00 +0000 (10:07 -0400)]
LU-18141 obd: remove OBD_SLAB_FREE_RTN0()

This macro isn't called anywhere. So let's
remove it.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I485d1d40220a2cd1a65c430e6487ad2d2052ec44
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56051
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 misc: (for l*) don't check NULL before free'ing 49/56049/3
Timothy Day [Wed, 14 Aug 2024 05:10:23 +0000 (01:10 -0400)]
LU-18141 misc: (for l*) don't check NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I9619a08ff736e727544a0442f588e2a0a9f6ad22
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56049
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
3 weeks agoLU-18141 misc: (for [mf]*) don't check NULL before free'ing 48/56048/2
Timothy Day [Wed, 14 Aug 2024 05:07:59 +0000 (01:07 -0400)]
LU-18141 misc: (for [mf]*) don't check NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I027db689261e507a3f297a31643baf2ed61bcc7c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56048
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 misc: (for o*) don't check for NULL before free'ing 47/56047/2
Timothy Day [Wed, 14 Aug 2024 05:07:11 +0000 (01:07 -0400)]
LU-18141 misc: (for o*) don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I6bc5893f9cdbe27eb25507cb214f1dac39f1feec
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56047
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 ptlrpc: don't check for NULL before free'ing 46/56046/2
Timothy Day [Wed, 14 Aug 2024 05:01:44 +0000 (01:01 -0400)]
LU-18141 ptlrpc: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ia436882262a14fda2486b36999c2189f976b047a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56046
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18141 mdt: don't check for NULL before free'ing 45/56045/2
Timothy Day [Wed, 14 Aug 2024 04:58:56 +0000 (00:58 -0400)]
LU-18141 mdt: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Id08fd059dbc4fcb3508497bdd04c6b00035ff91e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56045
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18141 osd: don't check for NULL before free'ing 44/56044/2
Timothy Day [Wed, 14 Aug 2024 04:58:01 +0000 (00:58 -0400)]
LU-18141 osd: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Test-Parameters: trivial fstype=zfs
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I62d78961192f00faf83f9f3fee3c4bf5b8006863
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56044
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18141 lnet: don't check for NULL before free'ing 43/56043/3
Timothy Day [Wed, 14 Aug 2024 04:57:25 +0000 (00:57 -0400)]
LU-18141 lnet: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ia3a61ad54803ebfccf70afde1bba5c168f7e051e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56043
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 libcfs: don't emit a warning for LIBCFS_FREE(NULL) 50/56050/3
Timothy Day [Wed, 14 Aug 2024 14:02:55 +0000 (10:02 -0400)]
LU-18141 libcfs: don't emit a warning for LIBCFS_FREE(NULL)

There is no need to emit a console message when doing
a LIBCFS_FREE() of NULL. We ought to silently accept
NULL and do nothing.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: If7217f4791998b15e92485a80b6f2ed051f7eecc
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56050
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18141 llite: don't check for NULL before free'ing 41/56041/2
Timothy Day [Wed, 14 Aug 2024 04:55:45 +0000 (00:55 -0400)]
LU-18141 llite: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I0a476b17986b9346f07c2f854bb6b60f0f251c87
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56041
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18141 quota: don't check for NULL before free'ing 34/56034/2
Timothy Day [Wed, 14 Aug 2024 04:55:07 +0000 (00:55 -0400)]
LU-18141 quota: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ia32742483baa5fe5a4a26cc7a40cea107b211241
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56034
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18141 target: don't check for NULL before free'ing 33/56033/2
Timothy Day [Wed, 14 Aug 2024 04:54:24 +0000 (00:54 -0400)]
LU-18141 target: don't check for NULL before free'ing

The common free'ing macros already check for NULL,
so we don't need to explicitly check this beforehand.

The patch has been generated with the coccinelle script below.

@@
expression E;
@@
- if (E != NULL)
(
  OBD_FREE_PTR(E);
|
  OBD_FREE(E, ...);
|
  LIBCFS_FREE(E, ...);
|
  CFS_FREE_PTR(E);
|
  CFS_FREE_PTR_ARRAY(E, ...);
)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ifbdc95bf18855892afa4e066b654da62cdee5e13
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56033
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18123 kernel: update SLES15 SP6 [6.4.0-150600.23.17.1] 26/56026/3
Jian Yu [Tue, 13 Aug 2024 20:36:55 +0000 (13:36 -0700)]
LU-18123 kernel: update SLES15 SP6 [6.4.0-150600.23.17.1]

Update SLES15 SP6 kernel to 6.4.0-150600.23.17.1 for Lustre client.

Test-Parameters: trivial mdtcount=4 mdscount=2 \
  env=SANITY_EXCEPT="27J 103a 244a" \
  clientdistro=sles15sp6 testlist=sanity

Test-Parameters: optional clientdistro=sles15sp6 testgroup=full-part-1
Test-Parameters: optional clientdistro=sles15sp6 testgroup=full-part-2
Test-Parameters: optional clientdistro=sles15sp6 testgroup=full-part-3

Change-Id: If68a41888cfebf7d8566682076d72865fd7cc01b
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56026
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Alex Deiter
3 weeks agoLU-18047 lnet: sanity-lnet test_260 wrong value 25/56025/2
Frank Sehr [Tue, 13 Aug 2024 20:29:15 +0000 (13:29 -0700)]
LU-18047 lnet: sanity-lnet test_260 wrong value

Increased timeout and retries. The test seem to fail randomly at
different parameters, so it doesn't seem to be a configuration
problem. It looks still more like a timeout problem.
Other possibilties to try would be writing the default values in a
file and execute the sysctl commands in one transaction with sysctl.
An alternative would be trying to flush all buffered IO devices with
sync.

Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Frank Sehr <fsehr@whamcloud.com>
Change-Id: I02be748d145a4ec2599c208b31bd0d8242eb6df1
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56025
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Cyril Bordage <cbordage@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18138 mdd: handle corner case for .lustre on readdir 21/56021/3
Vladimir Saveliev [Tue, 13 Aug 2024 12:03:52 +0000 (15:03 +0300)]
LU-18138 mdd: handle corner case for .lustre on readdir

If '.lustre' entry is dispaced into last directory block and is alone
in it - the entry to returned by mdd_readdir.

Test to illustrate the issus is added.

Fixes: e6b8e3a86b ("LU-5044 mdd: do not return .lustre from readdir")
Signed-off-by: Vladimir Saveliev <vladimir.saveliev@hpe.com>
Change-Id: Ib4dfe92b66932ede1b1336e55f1af33c1fc6c878
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56021
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18100 pcc: fix the error when get pcc_async_threshold 15/56015/2
Qian Yingjin [Tue, 13 Aug 2024 03:09:55 +0000 (11:09 +0800)]
LU-18100 pcc: fix the error when get pcc_async_threshold

Add "head -n 1" when get llite.*.pcc_async_threshold in the
sanity-pcc/test_102.
Otherwise, it will cause the failure when restore the valule.

Test-Parameters: trivial testlist=sanity-pcc
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I9618797a09dadbb358601ad602075547c02207c2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56015
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18136 mgs: remove LDLM_LOCK_* macros 13/56013/2
Timothy Day [Tue, 13 Aug 2024 02:24:44 +0000 (22:24 -0400)]
LU-18136 mgs: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I7b24117325f61ea04618a2d45a36951773f1d566
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56013
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 ofd: remove LDLM_LOCK_* macros 12/56012/2
Timothy Day [Tue, 13 Aug 2024 02:23:43 +0000 (22:23 -0400)]
LU-18136 ofd: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I8b7052f5bca3e887a4f8488ee382be7221230b05
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56012
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 quota: remove LDLM_LOCK_* macros 11/56011/2
Timothy Day [Tue, 13 Aug 2024 02:22:49 +0000 (22:22 -0400)]
LU-18136 quota: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I19622b133d95e619d5bd5a12189cc5eb3d2d928f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56011
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 target: remove LDLM_LOCK_* macros 10/56010/2
Timothy Day [Tue, 13 Aug 2024 02:22:04 +0000 (22:22 -0400)]
LU-18136 target: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I24c3f10d6225564ae448c0a23c1bd499e4ba7969
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56010
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 llite: remove LDLM_LOCK_* macros 09/56009/2
Timothy Day [Tue, 13 Aug 2024 02:21:10 +0000 (22:21 -0400)]
LU-18136 llite: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I64df3f044f1946a6b0d91dd1f4c24cef8751b05b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56009
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 mdc: remove LDLM_LOCK_* macros 08/56008/2
Timothy Day [Tue, 13 Aug 2024 02:20:01 +0000 (22:20 -0400)]
LU-18136 mdc: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I55795d7f2a7f642e4e7076a56a0268088eb9cffe
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56008
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18136 osc: remove LDLM_LOCK_* macros 07/56007/2
Timothy Day [Tue, 13 Aug 2024 02:18:21 +0000 (22:18 -0400)]
LU-18136 osc: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ifeb0d440773a09d12705fdda7177c63ce1c1c893
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56007
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18136 mdt: remove LDLM_LOCK_* macros 06/56006/2
Timothy Day [Tue, 13 Aug 2024 02:17:05 +0000 (22:17 -0400)]
LU-18136 mdt: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I74504d7ea4fd294b7538c17a78c2023a47144e94
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56006
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18136 ldlm: remove LDLM_LOCK_* macros 05/56005/2
Timothy Day [Tue, 13 Aug 2024 02:03:45 +0000 (22:03 -0400)]
LU-18136 ldlm: remove LDLM_LOCK_* macros

These macros are simply duplicates of the corresponding
ldlm_lock_* functions.

The patch has been generated with the coccinelle script below.

@@
expression x;
@@
- LDLM_LOCK_PUT(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_RELEASE(x)
+ ldlm_lock_put(x)
@@
expression x;
@@
- LDLM_LOCK_GET(x)
+ ldlm_lock_get(x)

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I52e14ae0fe7e6b946600c98f17c067d93f4e80cf
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56005
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18136 misc: add LDLM_LOCK_* macros to spelling.txt 04/56004/2
Timothy Day [Tue, 13 Aug 2024 02:31:09 +0000 (22:31 -0400)]
LU-18136 misc: add LDLM_LOCK_* macros to spelling.txt

These macros are simply duplicates of the corresponding
ldlm_lock_* functions. Favor the non-macro versions.

Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I8608ea301c6f7c71ee76ac2977276b67f6591c1e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56004
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <patrick.farrell@oracle.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18122 kernel: update RHEL 8.10 [4.18.0-553.16.1.el8_10] 03/56003/2
Jian Yu [Tue, 13 Aug 2024 00:01:14 +0000 (17:01 -0700)]
LU-18122 kernel: update RHEL 8.10 [4.18.0-553.16.1.el8_10]

Update RHEL 8.10 kernel to 4.18.0-553.16.1.el8_10.

Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
  clientdistro=el8.10 serverdistro=el8.9 testlist=sanity

Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
  clientdistro=el8.10 serverdistro=el8.9 testlist=sanity

Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
  clientdistro=el8.9 serverdistro=el8.10 testlist=sanity

Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
  clientdistro=el8.9 serverdistro=el8.10 testlist=sanity

Test-Parameters: optional clientdistro=el8.10 serverdistro=el8.10 \
  testgroup=full-part-1

Test-Parameters: optional clientdistro=el8.10 serverdistro=el8.10 \
  testgroup=full-part-2

Test-Parameters: optional clientdistro=el8.10 serverdistro=el8.10 \
  testgroup=full-part-3

Change-Id: I989fa90479ca8934db7d9a9f1171cbb13ffe8cfc
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56003
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Deiter
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18042 tests: skip old server test for sanity-flr/0k 96/55996/3
Bobi Jam [Mon, 12 Aug 2024 05:05:29 +0000 (13:05 +0800)]
LU-18042 tests: skip old server test for sanity-flr/0k

Mirror extend a non-mirrored file in a directory with default
FLR layout needs server support, so this patch adds server version
checking to skip unsupported servers for sanity-flr/0k.

Test-Parameters: trivial
Fixes: 8005a374ca ("LU-15486 lod: mirroring plain file in mirrored-layout dir")
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Id5ea10d654af3927c5aaffab17f15990694e9ed3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55996
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
3 weeks agoLU-18130 build: make nodemap helpers functions static 92/55992/2
Shaun Tancheff [Sun, 11 Aug 2024 07:35:55 +0000 (14:35 +0700)]
LU-18130 build: make nodemap helpers functions static

Resolve build error:
.../nodemap_handler.c:570:5: error: no previous prototype \
  for 'nodemap_add_idmap_range' [-Werror=missing-prototypes]

Test-Parameters: trivial
Fixes: 8445f7b92f ("LU-17922 utils: added idmap range functionality")
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I25cf93870b15df55fbddd4c58de7c65688662552
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55992
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: jsimmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Maximilian Dilger <mdilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
3 weeks agoLU-18127 autoconf: fix configure tests -Warray-bounds errors 89/55989/2
Jian Yu [Sat, 10 Aug 2024 07:07:59 +0000 (00:07 -0700)]
LU-18127 autoconf: fix configure tests -Warray-bounds errors

Kernel commit v5.17-rc3-1-ge6148767825c (Makefile:
Enable -Warray-bounds) enabled -Warray-bounds option,
which caused Lustre configure tests hit false failures
as follows:

  build/conftest.c: In function 'main':
  build/conftest.c:228:39: error: array subscript 0 is
    outside array bounds of 'struct inode_operations[0]'
    [-Werror=array-bounds]
    228 | ((struct inode_operations *)1)->get_acl((struct inode *)NULL, 0, false);
        |                                       ^~
  cc1: all warnings being treated as errors

This patch fixes the "struct inode_operations" related
configure tests to avoid the above failures.

The -Warray-bounds option was disabled by the following
kernel commits:
- v5.19-rc1-28-gf0be87c42cbd (gcc-12: disable '-Warray-bounds' universally for now)
- v6.2-rc3-9-g5a41237ad1d4 (gcc: disable -Warray-bounds for gcc-11 too)
- v6.3-rc7-202-g0da6e5fd6c37 (gcc: disable '-Warray-bounds' for gcc-13 too)

Test-Parameters: mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2204 testlist=sanity
Test-Parameters: mdtcount=4 mdscount=2 \
  env=SANITY_EXCEPT="27J 103a 244a" \
  clientdistro=sles15sp6 testlist=sanity
Test-Parameters: optional mdtcount=4 mdscount=2 \
  clientdistro=ubuntu2404 testlist=sanity

Change-Id: Iee73962ffc117a2f98e8f339462820aff2278815
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55989
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>