Whamcloud - gitweb
Chris Horn [Thu, 6 Aug 2020 21:21:29 +0000 (16:21 -0500)]
LU-13895 lnet: Prevent discovery on deleted peer
We needn't perform any discovery activities on a peer that has had
lnet_peer_del() called on it.
Lustre-change: https://review.whamcloud.com/39605
Lustre-commit:
fd32cd817cba336c684fe3ab7aac79705061e8b5
Test-Parameters: trivial testlist=sanity-lnet
HPE-bug-id: LUS-9192
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I5c89dc89038d2c8bf4d2a29029af7720963b81a2
Reviewed-on: https://review.whamcloud.com/48292
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Chris Horn [Fri, 7 Aug 2020 16:02:10 +0000 (11:02 -0500)]
LU-13895 lnet: Prevent discovery on peer marked deletion
If a peer has been marked for deletion then we needn't perform any
other discovery operation on it. Integrate this peer state into the
top level of the discovery state machine so that it is checked before
any other state.
Lustre-change: https://review.whamcloud.com/39604
Lustre-commit:
aa7de0af6969df77a896e3a2e90c971a5081e324
HPE-bug-id: LUS-9192
Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: Ie9de5b0d38d720f4f49d7e4a0673a6b52f9d3d80
Reviewed-on: https://review.whamcloud.com/48291
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Chris Horn [Thu, 12 Aug 2021 16:26:07 +0000 (11:26 -0500)]
LU-14939 lnet: Allow specifying a source NID for lnetctl ping
Add a new --source option for lnetctl ping command. This allows the
user to specify a local NI from which to send the ping. This also
ensures that the specified destination NID is also used. Otherwise,
pings to multi-rail peers may end up going to a different peer NI
based on the multi-rail selection algorithm. The ability to specify
a source NI, and thus fix the destination NI, is a great help in
troubleshooting communication issues between multi-rail peers.
Add test to exercise lnetctl ping --source option.
Lustre-change: https://review.whamcloud.com/44727
Lustre-commit:
48ef9982c474a02c460293bce17c9e45f9829eab
HPE-bug-id: LUS-10296
Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I454217b30a92414de537880f076a11a693b1f0b3
Reviewed-on: https://review.whamcloud.com/48297
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alexandre Ioffe [Fri, 5 Aug 2022 05:49:40 +0000 (22:49 -0700)]
EX-4697 lipe: Define statistics fields for lpurge / lamigo
Added JSON stats output in lamigo
Extended JSON stats output in lpurge
Signed-off-by: Alexandre Ioffe <aioffe@ddn.com>
Test-Parameters: trivial testlist=hot-pools
Change-Id: Ib367022dd073c1699d75e3ea7cfa3b586e7b8877
Reviewed-on: https://review.whamcloud.com/48125
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alexandre Ioffe [Wed, 6 Jul 2022 02:58:58 +0000 (19:58 -0700)]
EX-5505 lipe: JSON statistics crashes lpurge
Use json_object_get() before json_object_put()
otherwise json_object_put() call causes crash
Signed-off-by: Alexandre Ioffe <aioffe@ddn.com>
Test-Parameters: trivial testlist=hot-pools
Change-Id: Id5e8f05dd010f6626835176bf854344cd2b58a93
Reviewed-on: https://review.whamcloud.com/47885
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Sat, 23 Jul 2022 07:29:59 +0000 (00:29 -0700)]
LU-13813 tests: fix stack_trap in conf-sanity test 110/111
This patch fixes stack_trap in conf-sanity test 110 and 111
to restore test environment.
Lustre-change: https://review.whamcloud.com/48022
Lustre-commit:
0109cee2610b8dfeaaca25c3eb1e805e033c593d
Test-Parameters: trivial env=SLOW=yes,ENABLE_QUOTA=yes clientdistro=el8.5 serverdistro=el8.5 testlist=conf-sanity
Test-Parameters: env=SLOW=yes,ENABLE_QUOTA=yes fstype=zfs clientdistro=el8.5 serverdistro=el8.5 testlist=conf-sanity
Test-Parameters: env=SLOW=yes,ENABLE_QUOTA=yes mdscount=2 mdtcount=4 clientdistro=el8.5 serverdistro=el8.5 testlist=conf-sanity
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Change-Id: I540d96e8ad2c4990e7da18fe22256b44e9a19c72
Reviewed-on: https://review.whamcloud.com/48023
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Serguei Smirnov [Fri, 17 Sep 2021 21:06:26 +0000 (14:06 -0700)]
LU-15018 o2iblnd: treat cmid->device == NULL as an error
Even if rdma_bind_addr is successful, kiblnd_dev_failover should
treat cmid->device == NULL as an error in order to later avoid
calling kiblnd_set_ni_fatal_on with possibly dev->ibd_hdev == NULL.
Lustre-change: https://review.whamcloud.com/44981
Lustre-commit:
abd0ce62e96523193bfc2e2a3f574bc59d6c9f7c
Test-Parameters: trivial testlist=sanity-lnet
Fixes:
4668283cd1 ("LU-14806 o2iblnd: clear fatal error on successful failover")
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Change-Id: Iefbe030b25d2dc543461cf98afeacd734fd64cf8
Reviewed-on: https://review.whamcloud.com/48258
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Patrick Farrell [Wed, 13 Apr 2022 15:31:15 +0000 (11:31 -0400)]
EX-5014 pcc: Limit attach queue depth
The existing async attach code does not attempt to limit
the number of async attaches that can be requested at once.
This is a problem because we could theoretically create too
many kthreads and overwhelm the system.
When the attach queue depth is exceeded, we stop allowing
new items to be queued by switching over to sync attach.
Ideally we would rebuild the attach code to generate a
queue of attach requests and have the attach thread code
pull items from the queue until it's exhausted, but that's
a much more substantial change and is left for later.
NB: This patch is incomplete - there's no way to adjust the
queue depth at runtime and there's no test for it. Both
need to be added.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ib00dfb67f5245a28b722278d031ee8cdf5e190d6
Reviewed-on: https://review.whamcloud.com/47061
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Yingjin Qian <qian@ddn.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Patrick Farrell [Tue, 22 Mar 2022 17:45:31 +0000 (13:45 -0400)]
EX-5014 pcc: Change PCC commands to use constants
PCC command names are just written out as strings, making
them hard to track. Change them all to use named commands.
This also includes a few minor debug and structural changes
as part of prep for the main patch against EX-5014.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Icad8dfdb44ed2562a95b2aaa0432cba221e4a1bc
Reviewed-on: https://review.whamcloud.com/46894
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yingjin Qian <qian@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Wed, 24 Aug 2022 06:07:36 +0000 (23:07 -0700)]
LU-15874 kernel: new kernel [RHEL 9.0 5.14.0-70.22.1.el9_0]
This patch makes changes to support new RHEL 9.0 release
for Lustre client.
fix lbuild to include modified find-requires.ksyms
Lustre-change: https://review.whamcloud.com/47847
Lustre-commit:
bbe5e9818053e43ebf97e2d3fa240917bfbd8336
Test-Parameters: trivial clientdistro=el9.0 \
env=SANITY_EXCEPT="101j 130 244a" testlist=sanity
Test-Parameters: trivial clientdistro=el9.0 \
env=LIPE_FIND_VERBOSE=true testlist=sanity-lipe
Test-Parameters: clientdistro=el9.0 testlist=sanity-pcc
Test-Parameters: clientdistro=el8.6 testlist=sanity-pcc
Change-Id: Ib7fdf9d3946df626759d395b5000b375391da344
Co-Authored-By: Minh Diep <mdiep@whamcloud.com>
Co-Authored-By: Alex Deiter <alex.deiter@gmail.com>
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Signed-off-by: Alex Deiter <alex.deiter@gmail.com>
Reviewed-on: https://review.whamcloud.com/47880
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Wed, 24 Aug 2022 05:29:19 +0000 (22:29 -0700)]
LU-15959 kernel: new kernel [SLES15 SP4 5.14.21-150400.24.18.1]
This patch makes changes to support new SLES15 SP4 release
with kernel 5.14.21-150400.24.18.1 for Lustre client.
Lustre-change: https://review.whamcloud.com/47696
Lustre-commit: TBD (from
4bf090b81119d02ed5baa59c6857e2c88a746736)
Test-Parameters: trivial clientdistro=sles15sp4 \
env=SANITY_EXCEPT="27J 101j 244a" testlist=sanity
Test-Parameters: trivial clientdistro=sles15sp3
Change-Id: I0bf548835578163767d2f6a2a5e5bd2b33154871
Co-Authored-By: Minh Diep <mdiep@whamcloud.com>
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47905
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alexander Zarochentsev [Wed, 20 Jul 2022 16:05:53 +0000 (19:05 +0300)]
LU-16060 osd-ldiskfs: copy nul byte terminator in writelink
memcpy() call in osd_ldiskfs_writelink() doesn't copy the nul
terminator byte from the source buffer, leaving the space
after target link name uninialized which is ok for the kernel
code and debugfs but not e2fsck.
Lustre-change: https://review.whamcloud.com/48092
Lustre-commit:
907dc0a2d333f2df2d654a968fc50f8cc05b779d
Signed-off-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
HPE-bug-id: LUS-11103
Change-Id: I914f2c78e1a6571bf360a23b0ede8c70502bf0df
Reviewed-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48301
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Thu, 4 Aug 2022 06:51:05 +0000 (23:51 -0700)]
LU-16037 build: remove quotes from %{mkconf_options}
This patch fixes lustre-dkms.spec.in to remove quotes
from %{mkconf_options} passed to dkms.mkconf, so as to
resolve the following build issue:
dkms.conf: Error! Directive 'DEST_MODULE_LOCATION'
does not begin with '/kernel', '/updates', or '/extra'
in record #0.
Lustre-change: https://review.whamcloud.com/48044
Lustre-commit:
33efefc496159f7d0caed0fa85d8f92603060ae2
Test-Parameters: trivial
Change-Id: I0b365d7a96cb632680bc2321e87b28a3bf076e47
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48118
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Nathaniel Clark <nclark@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Anjus George [Wed, 12 Jan 2022 06:30:03 +0000 (01:30 -0500)]
LU-10378 utils: add formatted printf to lfs find
Introduce new --printf option with lfs find utility along with
support for the backslash escapes and format directives given
below that allow users to obtain metadata in formatted style.
List of backslash escapes supported by --printf option:
-------------------------------------
Description | Escape
-------------------------------------
Newline character | \n
Tab character | \t
Literal backslash | \\
List of format directives used with --printf option:
----------------------------------------------------------
Description | Directive
----------------------------------------------------------
Literal % character | %%
Access time (in ctime format) | %a
Access time (in secs since epoch) | %A@
File size (in 512B blocks) | %b
Last change time (in ctime format) | %c
Last change time (in secs since epoch) | %C@
Numeric group ID of file/dir owner | %G
File size (in 1K blocks) | %k
File mode (octal) | %m
Path name of file | %p
File size (in bytes) | %s
Modification time (in ctime format) | %t
Modification time (in secs since epoch) | %T@
Numeric user ID of file/dir owner | %U
Birth time (in ctime format) | %w
Birth time (in secs since epoch) | %W@
File type | %y
Stripe count | %Lc
Lustre FID | %LF
Directory hash type | %Lh
Starting OST (file) or MDT (dir) index | %Li
List of all OST (file) or MDT (dir) indices | %Lo
OST pool name | %Lp
Numeric project id assigned to file/dir | %LP
Stripe size in bytes | %LS
---------------------------------------------------------
Note: Stripe size and OST pool name are not defined for
directories whereas Hash type is not defined for files.
%Li gives starting OST index for files and starting MDT index
for directories. For composite files %Lo provides list of all
OST indices for all components whereas %Lc, %LS, %Li and %Lp
provide details for last initialized component only.
A usage example for --printf option and its output for a composite
file with three components are shown below.
lfs find --printf '%a | %t | %c | %w | %W@ | %b | %s | %U | %G |
%A@ | %T@ | %C@ | %LP | %Lc | %LS | %Li | %Lo | %Lp | %pn'
/lustre/lustre/composite.txt
Tue Oct 26 16:06:18 2021 | Tue Oct 26 16:06:50 2021 | Tue Oct 26
16:06:50 2021 | Tue Oct 26 16:06:18 2021 |
1635278778 | 204800 |
104857600 | 0 | 0 |
1635278778 |
1635278810 |
1635278810 | 0 | 3 |
2097152 | 2 | [1][2,0][2,0,1] | pool1 |
/lustre/lustre/composite.txt
Lustre-change: https://review.whamcloud.com/45136
Lustre-commit:
6b8e97b76c472068e7d6bc792e4f202b2f70ca67
Change-Id: I370c0978900a4837b0ea3060e08dabb1fcb6e115
Signed-off-by: Anjus George <georgea@ornl.gov>
Signed-off-by: Rick Mohr <mohrrf@ornl.gov>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/48252
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Stephane Thiell [Fri, 26 Feb 2021 20:33:04 +0000 (12:33 -0800)]
LU-14179 lfs: avoid lfs find error with long paths
Test that files created in a directory having an absolute path length
of up to PATH_MAX-1 are properly found with lfs find. This change
might not cover other very deep directory tree (above PATH_MAX).
Lustre-change: https://review.whamcloud.com/41337
Lustre-commit:
a6a76df19db61a2015f4cc78f88060f249c955f2
Signed-off-by: Stephane Thiell <sthiell@stanford.edu>
Change-Id: I44726efd5053c593094587e5c8a4652a3a876641
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48272
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Wed, 20 Jan 2021 00:48:28 +0000 (17:48 -0700)]
LU-5170 utils: add lfs df -H for decimal units
Running "lfs df -ih" prints a base-two suffix for inode counts,
which is somewhat unintuitive (e.g. 100000 becomes 97.2K inodes).
While this is consistent with upstream "df", it also has a "-H"
option to print the output with decimal suffixes.
Add the -H/--si option to "lfs df" also.
Document the 'f' (flash) and 'N' (noprecreate) flags for "lfs df".
Lustre-change: https://review.whamcloud.com/41271
Lustre-commit:
7b720df1fbd4136cd1ab8f3fefefd3971b2f7031
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I06b8df4ae2940107720e57013bf187b3473ebbe5
Reviewed-by: Olaf Faaland-LLNL <faaland1@llnl.gov>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48267
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Fri, 5 Aug 2022 20:19:41 +0000 (14:19 -0600)]
LU-15548 tests: skip conf-sanity/131 for older servers
Skip conf-sanity.sh test_131 when running against older servers that
do not support the trusted.projid xattr.
Lustre-change: https://review.whamcloud.com/48151
Lustre-commit:
5fefbd10786f3f8705d2251071d8778d0de2835d
Test-Parameters: trivial testlist=conf-sanity env=ONLY=131
Test-Parameters: testlist=conf-sanity env=ONLY=131 serverversion=2.14.0
Fixes:
e4d07f2c30 ("LU-12056 ldiskfs: add trusted.projid virtual xattr")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: If1858502ab50ffd10e494eab793e3bc0f883fe9e
Reviewed-on: https://review.whamcloud.com/48264
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Artem Blagodarenko [Sat, 9 Oct 2021 04:35:19 +0000 (00:35 -0400)]
LU-15076 socklnd: lock ksnc_tx_queue list processing
A GFP occurred in the ksocknal_find_timed_out_conn() while processing
ksnc_tx_queue list.
Add locking to this list.
Lustre-change: https://review.whamcloud.com/45179
Lustre-commit:
13c7c2e3c248c8cdba4853852bfaecceb7a75afe
Test-Parameters: trivial testlist=sanity-lnet
Change-Id: I1f76683e5798c5015f11e3fa285db9613b1af906
Signed-off-by: Artem Blagodarenko <artem.blagodarenko@hpe.com>
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
HPE-bug-id: LUS-10248
Fixes:
25c1cb2c4d ("LU-9120 lnet: handle socklnd tx failure")
Reviewed-on: https://review.whamcloud.com/48256
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alex Deiter [Fri, 5 Aug 2022 16:35:39 +0000 (16:35 +0000)]
EX-5644 utils: fix lpcc service dependency on lipe-lpcc
This patch makes changes to support python3 for lipe:
* The long() function is no longer supported by Python 3.
It only has one built-in integral type, named int().
* Octal literals are no longer of the form 0720 - use
0o720 instead.
* The print statement has been replaced with a print()
function, with keyword arguments to replace most of the
special syntax of the old print statement (PEP 3105).
* The dict.iterkeys(), dict.iteritems() and dict.itervalues()
methods are no longer supported - use dict.items() instead.
* The StringIO and StringIO modules are gone. Instead,
import the io module and use io.StringIO or io.BytesIO
for text and data respectively.
* The builtin basestring abstract type was removed.
Use str instead.
* Use string.ascii_lowercase instead of string.lowercase.
Test-Parameters: trivial testlist=sanity-lipe env=SANITY_EXCEPT="101j 130 244a"
Test-Parameters: clientdistro=el7.9 testlist=sanity-pcc
Test-Parameters: clientdistro=el8.6 testlist=sanity-pcc
Change-Id: Ia5a3b6490fd4cebbd40327d5b2a431590c82cf00
Signed-off-by: Alex Deiter <alex.deiter@gmail.com>
Reviewed-on: https://review.whamcloud.com/48149
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Feng, Lei <flei@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Tue, 16 Aug 2022 21:30:56 +0000 (15:30 -0600)]
LU-16056 libcfs: restore umask handling in kernel threads
This reverts commit
9013eb2bb5 which incorrectly assumes that Lustre
service threads do not modify umask. A quick grep shows that umask
is modified in osd-ldiskfs __osd_create().
If some other thread sharing the same fs context is modifying umask
in an incompatible way (which includes all Lustre threads after
this patch) then it will occasionally break created file access
permissions for Lustre.
Lustre-change: https://review.whamcloud.com/48233
Lustre-commit: TBD (from
e88334d806687ad2512323f1e4c2667348f02a4e)
Fixes:
9013eb2bb5 (LU-9859 libcfs: don't call unshare_fs_struct()")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I589b72e4286dc84f4e3f1a0c54fe31aa988e6c18
Reviewed-on: https://review.whamcloud.com/48236
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Shuichi Ihara <sihara@ddn.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Qian Yingjin [Wed, 20 Jul 2022 02:22:35 +0000 (22:22 -0400)]
LU-16019 llite: fully disable readahead in kernel I/O path
In the new kernel (rhel9 or ubuntu 2204), the readahead path may
be out of the control of Lustre CLIO engine:
generic_file_read_iter()
->filemap_read()
->filemap_get_pages()
->page_cache_sync_readahead()
->page_cache_sync_ra()
void page_cache_sync_ra()
{
if (!ractl->ra->ra_pages || blk_cgroup_congested()) {
if (!ractl->file)
return;
req_count = 1;
do_forced_ra = true;
}
/* be dumb */
if (do_forced_ra) {
force_page_cache_ra(ractl, req_count);
return;
}
...
}
From the kernel readahead code, even if read-ahead is disabled
(via @ra_pages == 0), it still issues this request as read-ahead
as we will need it to satisfy the requested range. The forced
read-ahead will do the right thing and limit the read to just
the requested range, which we will set to 1 page for this case.
Thus it can not totally avoid the read-ahead in the kernel I/O
path only by setting @ra_pages with 0.
To fully disable the read-ahead in the Linux kernel I/O path, we
still need to set @io_pages to 0, it will set I/O range to 0 in
@force_page_cache_ra():
void force_page_cache_ra()
{
...
max_pages = = max_t(unsigned long, bdi->io_pages,
ra->ra_pages);
nr_to_read = min_t(unsigned long, nr_to_read, max_pages);
while (nr_to_read) {
...
}
...
}
After set bdi->io_pages with 0, it can pass the sanity/101j.
Lustre-change: https://review.whamcloud.com/47993
Lustre-commit:
f0cf7fd3cccb2313fa94a307cf862afba256b8d8
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I859a6404abb9116d9acfa03de91e61d3536d3554
Reviewed-on: https://review.whamcloud.com/48078
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Mon, 13 Jun 2022 12:41:11 +0000 (14:41 +0200)]
LU-15896 gss: support OpenSSLv3
Lustre GSS code makes use of some OpenSSL API that has been
deprecated in v3, namely all the functions in the DH_* family.
So replace them with their EVP_PKEY_* counterparts if Lustre is
built on a system with OpenSSLv3.
Lustre-change: https://review.whamcloud.com/47717
Lustre-commit:
615691a531a80b75c4dd054dbb86d0bdbf4cf808
Fixes:
ee60c14360 ("LU-15896 gss: ignore OpenSSLv3 deprecated API")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I78a4ca18b25aca3c34fe84e41413a33caddc01b6
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48185
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Mr NeilBrown [Thu, 6 May 2021 00:19:30 +0000 (10:19 +1000)]
LU-12678 o2iblnd: fix bug in list_first_entry() change.
This comparison should be != NULL, else a NULL pointer could be
dereferenced.
Lustre-change: https://review.whamcloud.com/43558
Lustre-commit:
0024460d797490ae90a2221cb5d4648c9d4fac82
Test-Parameters: trivial
Fixes:
34b57a6f8fcd ("LU-12678 lnet: use list_first_entry() in lnet/klnds subdirectory.")
Signed-off-by: Mr NeilBrown <neilb@suse.de>
Change-Id: I4510e2e0f2eb7b5bf86626e5ddb5ee537d3fae02
Reviewed-on: https://review.whamcloud.com/48245
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Mr. NeilBrown [Thu, 22 Apr 2021 18:27:38 +0000 (14:27 -0400)]
LU-12678 lnet: use list_first_entry() in lnet/klnds subdir
Convert
list_entry(foo->next .....)
to
list_first_entry(foo, ....)
in 'lnet/klnds
In several cases the call is combined with a list_empty() test and
list_first_entry_or_null() is used
Lustre-change: https://review.whamcloud.com/43419
Lustre-commit:
34b57a6f8fcd1bc57c0ba92e299bd39f3baa6cb5
Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Mr. NeilBrown <neilb@suse.de>
Change-Id: I3b2b33c3c9284c02e44610614d64a1f84be300a4
Reviewed-on: https://review.whamcloud.com/48244
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Chris Horn [Wed, 29 Jun 2022 00:24:32 +0000 (19:24 -0500)]
LU-15983 lnet: Define KFILND network type
Define the KFILND network type. This reserves the network type number
for future implementation and allows creation of kfi peers and
adding routes to kfi peers.
Lustre-commit:
5fea36c952373c9a235be7bf57eb2e516fcb36b2
Lustre-change: https://review.whamcloud.com/47830
Test-Parameters: trivial testlist=sanity-lnet
HPE-bug-id: LUS-11060
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I9111645f1290c8af4937d1b2689a068df81922a4
Reviewed-on: https://review.whamcloud.com/48220
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Cyril Bordage [Thu, 9 Jun 2022 20:23:44 +0000 (22:23 +0200)]
LU-15925 lnet: add debug messages for IB
If net debug is enabled, information about connection, when
tx status is ECONNABORTED, is collected (only for IB).
Lustre-change: https://review.whamcloud.com/47583
Lustre-commit:
9153049bdc7ec8217691481df64551e2768455a9
Test-Parameters: trivial
Signed-off-by: Cyril Bordage <cbordage@whamcloud.com>
Change-Id: I44a33703931630b85cc0e847e2a038217b7967c6
Reviewed-on: https://review.whamcloud.com/48042
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alexander Boyko [Mon, 31 Jan 2022 14:04:08 +0000 (09:04 -0500)]
LU-15393 lod: skip qos for qos_threshold_rr=100
Current implementation of qos allocation is called for
every statfs update. It takes lq_rw_sem for write and
recalculate penalties, even whith setting qos_threshold_rr=100.
Which means always use rr allocation. Let's skip unnecessary
locking and calculation for 100% round robin allocation.
Lustre-change: https://review.whamcloud.com/46388
Lustre-commit:
2f23140d5c1396fd0b247bd7f9c249f6e24096b7
HPE-bug-id: LUS-10388
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I2fcc272d00a988ca4ba0f745b1d5809d65b28654
Reviewed-on: https://review.whamcloud.com/48206
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>
Alexander Boyko [Wed, 22 Dec 2021 12:06:16 +0000 (07:06 -0500)]
LU-15393 lod: use killable semaphore for creation path
lod_ost_alloc_qos() function sleeps during ost failover, but object
allocation could use different OSTs. The patch changes
down_write call to down_write_killable and adds timer for a
wakeup.
The main idea of this fix is next, when OST is lost during
lod_ost_alloc_rr() and MDT does not have precreated objects for it
lod_ost_alloc_rr()->..->lod_qos_declare_object_on() would sleep while
holding a lq_rw_sem for read. Any creation thread would stuck at
lod_ost_alloc_qos() waiting lq_rw_sem for write, after statfs update.
Whith a fix sleep is limited and allocation would going through
lod_ost_alloc_rr(). For read lq_rw_sem is shared and stripe allocation
would skip OST without objects.
lod_ost_alloc_rr() refills OST pool with a lq_rw_sem for write, when
lq_rr.lqr_flags has LQ_DIRTY. This should happen only when OST is
added/removed. No need to set LQ_DIRTY for lq_rr when statfs get
error, this flag does not affect any change for pool list at
lod_qos_calc_rr().
Change behaviour for lod_check_and_reserve_ost(), it would sleep
during object allocation for speed 2 only.
Lustre-change: https://review.whamcloud.com/45921
Lustre-commit:
f46782b4c7dcaacd0046ebad3e3d84c2bb0367d4
HPE-bug-id: LUS-10388
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I4768c4cf7d2f9f02f0a9e0dfb6d15e02932cb5fe
Reviewed-on: https://review.whamcloud.com/48194
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Hongchao Zhang [Fri, 12 Aug 2022 10:03:31 +0000 (18:03 +0800)]
LU-15880 quota: fix issues in reserving quota
Calling "chgrp" with unprivileged user will reserve quota space
before changing the GID of the file, and the reserved quota space
will be freed after its transaction is committed. there are some
issues in the current implementation,
1, the reserved quota isn't freed in case of error in "mdd_attr_set"
and "tgt_cb_last_committed".
2, during freeing the reserved quota, the quota space to free is
set as the same parameter as reserving the quota, which could
be wrong, for instance, the reserving quota space will be 0 if
the corresponding quota ID isn't enforces, but the call will
return without error.
Like the "qsd_op_begin/qsd_op_end", the patch also adds reference to
the lquota_entry gotten during reserving quota and release it during
freeing the reserved quota to prevent potential issue.
Lustre-change: https://review.whamcloud.com/47425
Lustre-commit:
40daa59ac41f450b60b42eb2bb0ff42ebd3c998b
Signed-off-by: Hongchao Zhang <hongchao@whamcloud.com>
Change-Id: I098cde7d5e89fe8b9eaab0ae4bc285a4ac6c2281
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47944
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Wed, 10 Aug 2022 01:51:24 +0000 (19:51 -0600)]
RM-620 build: New tag 2.14.0-ddn57
New tag 2.14.0-ddn57
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: If22ae9728b7bf32135e118e5c0d30d32a10216de
Shaun Tancheff [Mon, 18 Jul 2022 17:41:26 +0000 (10:41 -0700)]
LU-15888 build: Debian dkms-debs requires ed and libkeyutils
dkms install/build needs dependencies on libmount-dev,
libkeyutils1, and libkeyutils-dev
Debian does not install the 'ed' package by default.
Without the 'ed' package the version is not correctly added
to the changelog and parsed to the package names.
Debian does not have linux-image or linux-headers psuedo
packages so require the arch specific ones, ex:
linux-image | linux-image-amd64 | linux-image-arm64
and:
linux-headers | linux-headers-amd64 | linux-headers-arm64
respectively.
o2ib fails to find Debian in-kernel Module.symvers and
should check $LINUX_OBJ/Module.symvers before failing.
Lustre-change: https://review.whamcloud.com/47455
Lustre-commit:
7dc6e1128a030c7e12eb23ea41935ed6fe77ce1f
HPE-bug-id: LUS-10984
Test-Parameters: trivial
Fixes:
85a6eebeca1 ("LU-15652 build: On Debian detect -common kernel headers")
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I82e2689f3af4b9ce106ee3ab6b4109d2709c8872
Reviewed-on: https://review.whamcloud.com/47968
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Sat, 11 Jun 2022 01:47:00 +0000 (19:47 -0600)]
LU-15913 mdt: disable parallel rename for striped dirs
Parallel rename should not be done within striped directories to
avoid remote updates. These are like cross-directory renames.
Add tunables for parallel directory rename in case of problems.
These can be configured separately for files and directories.
mdt.*.enable_parallel_rename_dir
mdt.*.enable_parallel_rename_file
Lustre-change: https://review.whamcloud.com/47593
Lustre-commit:
f238540c879dc668e18cf99cba62f117ccae64d6
Fixes:
90979ab390 ("LU-12125 mds: allow parallel directory rename")
Fixes:
d76cc65d5d ("LU-12125 mds: allow parallel regular file rename")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I384976cd1c9f401169336ee7a479ba0e3dd9f4ee
Reviewed-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48124
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Qian Yingjin [Tue, 9 Aug 2022 07:56:23 +0000 (03:56 -0400)]
LU-15994 tests: add testing for io_uring via fio
This patch adds test case for io_uring I/O engine via fio.
Lustre-change: https://review.whamcloud.com/48167
Lustre-commit: TBD(
023160bfe79583f3d11d98d89df33f88fe6ffd12)
Test-Parameters: trivial testlist=sanity
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I0f2e371f91c02dc76644f42e5d1055ec200597c6
Reviewed-on: https://review.whamcloud.com/48168
Reviewed-by: Colin Faber <cfaber@ddn.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Hongchao Zhang [Wed, 15 Dec 2021 12:11:17 +0000 (20:11 +0800)]
LU-14472 quota: skip non-exist or inact tgt for lfs_quota
The nonexistent or inactive targets (MDC or OSC) should be skipped
for "lfs quota".
Lustre-change: https://review.whamcloud.com/41771
Lustre-commit:
b54b7ce43929ce7ff6e48cd219623c264ca6b6b3
Change-Id: I25eece413715e4e05dd94ccbfd101220da7477f9
Signed-off-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48171
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Qian Yingjin [Tue, 2 Aug 2022 09:14:48 +0000 (05:14 -0400)]
LU-15994 llite: use fatal_signal_pending in range_lock
FIO io_uring failed with one file shared by two FIO processes
under Unubtu 2204 kernel.
After analyzed, we found that range_lock() function returns
-ERESTARTSYS when there is pending signal on current process in
Lustre I/O. This causes -EINTR returned to the application.
The reason that we have pending signal is because that io_uring
is using signal based task_work running in new kernel. Thus when
I/O process tries to acquire range lock and checks whether
signal_pending(), it may always find a pending signal and return
-ERESTARTSYS.
we solve this bug by replacing @signal_pending(current) with
@fatal_signal_pending(current) in range_lock(). The range_lock()
function only returns -ERESTARTSYS when the current process has
fatal pending signal such as SIGKILL.
Lustre-change: https://review.whamcloud.com/48106
Lustre-commit: TBD(
91244566e9d2762c2f64a67e7d4fad8f301b556c)
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I0a0be8fa3b4ba5c89f7866286b2bdc6595f18026
Reviewed-on: https://review.whamcloud.com/48111
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Fri, 5 Aug 2022 23:28:37 +0000 (17:28 -0600)]
RM-620 build: New tag 2.14.0-ddn56
New tag 2.14.0-ddn56
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ifc36f35eab332d699990371dabaf8ab5ca7bf44e
Qian Yingjin [Sat, 2 Apr 2022 09:26:29 +0000 (05:26 -0400)]
LU-15714 pcc: reserve layout intent flags for PCCRO
Reserve the following layout intent flags for PCCRO:
LAYOUT_INTENT_PCCRO_SET = 7, /** set read-only layout for PCC */
LAYOUT_INTENT_PCCRO_CLEAR = 8, /** clear read-ony layout */
Lustre-change: https://review.whamcloud.com/46981
Lustre-commit: TBD (from
65374767dd4499f64cbc1c8182d333b1155e3272)
Test-Parameters: trivial
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: If8a414103ab13155aa483179247c81908b6ced69
Reviewed-on: https://review.whamcloud.com/47000
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Thu, 9 Jun 2022 11:44:41 +0000 (07:44 -0400)]
LU-15850 lmv: always space-balance r-r directories
If the MDT free space is imbalanced, use QOS space balancing for
round-robin subdirectory creation, regardless of the depth
of the directory tree. Otherwise, new subdirectories created
in parents with round-robin default layout may suddenly become
"sticky" on the parent MDT and upset the space balancing and
load distribution.
Add sanity/test_413h to check that round-robin dirs always balance.
Lustre-change: https://review.whamcloud.com/47578
Lustre-commit:
37c1ddc34d3a1e61c5533f48cb29fe2258ca2907
Test-Parameters: testlist=sanity env=ONLY=413h,ONLY_REPEAT=100
Fixes:
38c4c538f5 ("LU-15216 lmv: improve MDT QOS space balance")
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Ia1d0b5b1a027cf14236f93ae34b5cf4929e76d23
Reviewed-on: https://review.whamcloud.com/47871
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Thu, 9 Jun 2022 11:40:42 +0000 (07:40 -0400)]
LU-15850 llite: pass dmv inherit depth instead of dir depth
In directory creation, once it's ancestor has default LMV, pass
the inherit depth, otherwise pass the directory depth to ROOT.
This depth will be used in QoS allocation.
Lustre-change: https://review.whamcloud.com/47577
Lustre-commit:
c23c68a52a04369101db2bd3b1d3da23025fcf48
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: Id480f32c1718e9f62314c2dfe8905be5db94d1f2
Reviewed-on: https://review.whamcloud.com/47870
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lai Siyao [Thu, 9 Jun 2022 11:26:40 +0000 (07:26 -0400)]
LU-15850 mdt: pack default LMV in open reply
Add flag MDS_OPEN_DEFAULT_LMV to indicate that default LMV should be
packed in open reply, otherwise if open fetches LOOKUP lock, client
won't know directory has default LMV, and in subdir creation default
LMV won't take effect.
Lustre-change: https://review.whamcloud.com/47576/
Lustre-commit:
f6e4272fb0be5b798b7685bb40067e3f6877c8a5
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: If2300ca39f406169eff9eab8f973ca1c2bfc8202
Reviewed-on: https://review.whamcloud.com/47869
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Thu, 4 Aug 2022 18:56:08 +0000 (12:56 -0600)]
RM-620 build: New tag 2.14.0-ddn55
New tag 2.14.0-ddn55
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I503bf7a4bc8d5f36e24563452170293fbf19a9ed
Sebastien Buisson [Mon, 25 Jul 2022 14:39:56 +0000 (16:39 +0200)]
LU-16045 enc: force use of new enc xattr on new servers
When an older client uses encryption with a newer server, the client
wants to see the encryption context in security.c xattr. But
internally on server side, we force use of newer encryption.c xattr
for consistency purpose. When required, the encryption context is put
in the request to the client as usual, which interprets it as desired.
Fixes:
ba50f9a977 ("LU-13717 sec: make client encryption compatible with ext4")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I667e123bdff912acc270666e8c74ebda6f0534e7
Reviewed-on: https://review.whamcloud.com/48034
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Qian Yingjin [Wed, 20 Jul 2022 09:40:44 +0000 (05:40 -0400)]
LU-16030 pcc: enlarge PCC backend size for sanity-pcc/45
sanity-pcc/test_45 failed with the following error:
"attach more than 2 time: 0"
The reason is that the allocated loopback deivce for PCC backend
is too small.
In this patch, we enlarge it to 100MiB to avoid running out of
the space on PCC backend device during PCC-RO attach and fix the
failure of sanity-pcc/test_45.
This patch also fixes the typo error "RANDON" -> "RANDOM".
Test-Parameters: trivial testlist=sanity-pcc
Change-Id: Ib19f01ed054cb6c9eecceabea1f1da72dea0b113
Signed-off-by: Qian Yingjin <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/47994
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Tue, 19 Jul 2022 23:15:43 +0000 (16:15 -0700)]
LU-16010 kernel: kernel update RHEL8.6 [4.18.0-372.16.1.el8_6]
Update RHEL8.6 kernel to 4.18.0-372.16.1.el8_6.
Test-Parameters: trivial fstype=ldiskfs \
clientdistro=el8.6 serverdistro=el8.6 testlist=sanity
Test-Parameters: trivial fstype=zfs \
clientdistro=el8.6 serverdistro=el8.6 testlist=sanity
Change-Id: I08db577f31a1d686b88804384a05d5b418e634d5
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47992
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Li Dongyang [Wed, 23 Mar 2022 09:42:51 +0000 (20:42 +1100)]
LU-15548 osd-ldiskfs: hide virtual projid xattr
Add tunable enable_projid_xattr to hide the virtual
project ID xattr by default.
Lustre-change: https://review.whamcloud.com/46900
Lustre-commit:
ef826db1f43b2849af26491028f4cfc25595faf6
Fixes:
665383d3a1f4 ("LU-12056 ldiskfs: add trusted.projid virtual xattr")
Change-Id: I21263d91599f9e2d5850cb9d94a8b6df90c8443c
Test-Parameters: trivial testlist=conf-sanity env=ONLY=131
Test-Parameters: testlist=sanity env=ONLY=904
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47989
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
John L. Hammond [Thu, 7 Apr 2022 16:31:07 +0000 (11:31 -0500)]
LU-15727 lod: honor append_pool with default composite layouts
In lod_get_default_lov_striping(), correct the handling of composite
default layouts in the case where append_stripe_count is nonzero.
Align the names of the append members of struct dt_allocation_hint
with the mdd params. Remove the unused dah_mode member of struct
dt_allocation_hint.
Add sanity test_27U() to verify.
Fixes:
e2ac6e1eaa ("LU-9341 lod: Add special O_APPEND striping")
Lustre-change: https://review.whamcloud.com/47014
Lustre-commit:
03963106926883cf322e085feb8caa3ea64db1d1
Change-Id: I66b426d24d6476fb483397f290229983f3da4be5
Signed-off-by: Xing Huang <hxing@ddn.com>
Reviewed-on: https://review.whamcloud.com/48027
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alex Zhuravlev [Wed, 20 Jul 2022 19:06:29 +0000 (12:06 -0700)]
LU-15993 ofd: don't leak pages if nodemap fails
ofd_commitrw() shouldn't exit w/o calling ofd_commitrw_write(),
otherwise the pages taken in ofd_preprw() are leaked.
same in mdt_obd_commitrw()
Lustre-change: https://review.whamcloud.com/47873
Lustre-commit:
ee4b50278e4471b7c64e619e13699c560502b81e
Fixes:
bbfdc7c167 ("LU-14739 quota: fix quota with root squash enabled")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Icd60c7ab80c5a7b65603d7da0d2e83872dc6b97f
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/48002
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
John L. Hammond [Tue, 14 Jun 2022 13:32:54 +0000 (08:32 -0500)]
LU-15942 utils: ofd_access_log_reader exit status
If no OSTs are mounted then the ofd module may not be leaded and hence
/dev/lustre-access-log/control may not exist. In
ofd_access_log_reader, if --exit-on-close is used then we should
handle this consistently with the case of no access logs by exiting
with status 0.
Lustre-change: https://review.whamcloud.com/47625
Lustre-commit:
9bf968db56ddbad525dffe6fc4b9fde7d55dbde3
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: I91b059bee8941501f2d207d2a48d1ea5ad40ae99
Reviewed-on: https://review.whamcloud.com/48100
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Patrick Farrell [Thu, 5 May 2022 01:31:09 +0000 (21:31 -0400)]
LU-15821 ldlm: Prioritize blocking callbacks
The current code places bl_ast lock callbacks at the end of
the global BL callback queue. This is bad because it
causes urgent requests from the server to wait behind
non-urgent cleanup tasks to keep lru_size at the right
level.
This can lead to evictions if there is a large queue of
items in the global queue so the callback is not serviced
in a timely manner.
Put bl_ast callbacks on the priority queue so they do not
wait behind the background traffic.
Add some additional debug in this area.
Lustre-change: https://review.whamcloud.com/47215
Lustre-commit:
2d59294d52b696125acc464e5910c893d9aef237
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ic6eb65819a4a93e9d30e807d386ca18380b30c7d
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47217
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Mon, 18 Jul 2022 20:48:17 +0000 (14:48 -0600)]
RM-620 build: New tag 2.14.0-ddn54
New tag 2.14.0-ddn54
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ib34f8a48ccf2a90b320a509e8c5d122841f62d92
Jian Yu [Fri, 8 Jul 2022 18:18:31 +0000 (11:18 -0700)]
LU-15991 kernel: kernel update RHEL7.9 [3.10.0-1160.71.1.el7]
Update RHEL7.9 kernel to 3.10.0-1160.71.1.el7.
Test-Parameters: trivial clientdistro=el7.9 serverdistro=el7.9
Change-Id: I89215145ea8da2925e5c8c01cdf963ba8a087877
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47922
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Andreas Dilger [Fri, 15 Jul 2022 04:36:18 +0000 (22:36 -0600)]
RM-620 build: New tag 2.14.0-ddn53
New tag 2.14.0-ddn53
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I6497712245ad88e7951667416d6b67a7657cb1f8
Sebastien Buisson [Wed, 22 Jun 2022 08:20:49 +0000 (10:20 +0200)]
EX-4333 sec: traces for supplementary groups handling
Add traces in the code to ease understanding of supplementary groups
handling, in particular for the INTERNAL identity_upcall.
Change-Id: I4b2298cf5c3b400e7a1436384653ce01a462a2e0
Test-Parameters: trivial
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-on: https://review.whamcloud.com/47697
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Alex Zhuravlev [Tue, 28 Jun 2022 22:02:47 +0000 (15:02 -0700)]
LU-15779 ofd: don't hold read lock over bulk
as this can block all operations on OST:
1) ofd_preprw_read() takes a shared object lock and initiates BULK
2) OUT needs an exclusive object lock on the same object
3) ofd_commitrw_write() starts transaction and now has to wait
for OUT to get and release that exclusive object lock (step 2)
4) number of threads can get stuck waiting for ofd_commit_write()
to stop it's transaction
this patch drops a shared object lock before BULK transfer.
at the moment it's not clear how such read would race with
object removal on ZFS - this should be investigated.
Lustre-change: https://review.whamcloud.com/47126
Lustre-commit:
98ba50819024b908453b62fd095647442929a61f
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I131493abd90283e9ca897f904e00c25d26e3d8d3
Reviewed-on: https://review.whamcloud.com/47824
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Mikhail Pershin [Tue, 22 Feb 2022 17:34:37 +0000 (20:34 +0300)]
LU-15653 client: able to cleanup devices manually
Using 'lctl cleanup/detach' could be needed in situations
with unclean umount. Meanwhile that doesn't work now for
LMV and also could cause panic after all
Patch restores ability to cleanup/detach client devices
manually.
- debugfs and lprocfs cleanup in lmv_precleanup() are moved
lmv_cleanup() to be not cleared too early. This prevents
hang on 'lctl cleanup' for LMV device
- test 172 is added in sanity. It skips device cleanup during
normal umount, keeping device alive without client mount
then manually cleanups/detaches them
- prevent negative lov_connections in lov_disconnect() and
handle it gracefully
- remove obd_cleanup_client_import() in mdc_precleanup(),
it is called already inside osc_precleanup_common()
Lustre-change: https://review.whamcloud.com/46859
Lustre-commit:
210803a2475862464045b609eee43237d74e853b
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I8a3868fabd1d805e827d04852d1614a3fe57ce35
Reviewed-on: https://review.whamcloud.com/46587
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Mikhail Pershin [Wed, 22 Jun 2022 10:27:48 +0000 (13:27 +0300)]
LU-15938 lod: prevent endless retry in recovery thread
- abort lod_sub_recovery_thread() by obd_abort_recov_mdt in
addition to obd_abort_recovery
- handle 'short llog' situation gracefully, when remote llog
is shorter than local copy header expects, trust remote llog
data and consider llog processing as finished
- on other errors during remote llog read, set obd_abort_recov_mdt
but not obd_abort_recovery in attempt to skip MDT-MDT recovery
only and continue with client recovery while possible
- fix parsing problem with 'abort_recov' and 'abort_recov_mdt' in
lmd_parse() causing no MDT recovery abort but client recovery
abort always. Allow also 'abort_recovery_mdt' mount option name
The original case with endless retry is caused by such de-sync
between local llog structures and remote llog. The local llog
header says there is record with some ID, so recovery thread
is trying to get that record from remote llog. Meanwhile there
is no such record on remote server, so it reads whole llog and
return it back properly but llog processing consider that as
incomplete llog due to network issues and retry endlessly.
Lustre-change: https://review.whamcloud.com/47698
Lustre-commit: TBD (
b57b8f126e0fe00e20b1a6c3164fdf902baf91c0)
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: Ib127fd0d1abd5289d90c7b4b3ca74ab6fc78bc71
Reviewed-on: https://review.whamcloud.com/47889
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>
Mikhail Pershin [Tue, 12 Jul 2022 06:40:38 +0000 (09:40 +0300)]
LU-15938 llog: llog_reader to detect more corruptions
Improve llog_reader to determine more corruptions and report
errors
- notify if llog bitmap has bits set with no records in llog
- compare header records count with amount of records really
found
- fix amount of records to output, preventing wrong output of
NOT SET record
- list missing records in gap if found
- count all errors found, add prefix 'error:' in output for
better output processing by third-party scripts
- don't exit immediately in case of error but continue if
possible and output all read valid data
Lustre-change: https://review.whamcloud.com/47934
Lustre-commit:
74bb524ee9b437777ecfe4e99fd032d8cac95cd0
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: Ic47dc6bb6cbdd9db6f888a0b892254403a628912
Reviewed-on: https://review.whamcloud.com/47949
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Thu, 7 Jul 2022 18:17:55 +0000 (12:17 -0600)]
RM-620 build: New tag 2.14.0-ddn52
New tag 2.14.0-ddn52
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I1c9f9793f83a34e40cfdd7f61617b0cd9e83fa99
Emoly Liu [Fri, 30 Jul 2021 08:13:12 +0000 (16:13 +0800)]
LU-14893 lctl: check user for changelog_deregister
If no user is specified for "lctl changelog_deregister", usage
should be printed correctly.
Also, sanity.sh test_106e is modified to verify this fix.
Lustre-change: https://review.whamcloud.com/44432
Lustre-commit:
644cb83921451316d226d8de1c81a82abb4b333e
Fixes:
a15eb4f13224e ("LU-13055 mdd: per-user changelog names and mask")
Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: Ia7f1b18e82f6b4174b9435cd67aba5f591d43ce1
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-by: James Nunez <jnunez@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47837
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Qian Yingjin [Tue, 28 Jun 2022 09:39:21 +0000 (05:39 -0400)]
LU-15969 pcc: use new ->fileattr_set for PCC project
The new Ubuntu 2204 (since kernel 5.12) introduces a new inode VFS
interface ->fileattr_set() and ->fileattr_get() to set/get project
ID on a file.
In PCC, we set the project ID for PCC copies on PCC backend file
system via IOCTL FS_IOC_FSSETXATTR.
However, the new kernel removed this IOCTL code, this results in
that using this ioctl to set project ID for the PCC copy returns
-ENOTTY and sanity-pcc test_39 failed.
In this patch, we add compatibility check for this new VFS
interface about project ID, and use the new VFS interface to set
the project ID on the new kernel properly.
Test-Parameters: clientdistro=ubuntu2204 env=SANITY_PCC_EXCEPT="101a" testlist=sanity-pcc
Change-Id: I756f3d6fa97c60c416deca9e482270483ab06524
Signed-off-by: Qian Yingjin <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/47811
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Qian Yingjin [Wed, 15 Jun 2022 07:59:52 +0000 (03:59 -0400)]
EX-5358 pcc: remove realpath() from lfs_pcc_state()
Before Ubuntu 20.04, realpath() executes lstat() for each
component of the path. If the file is still valid cached on PCC
device with the layout generation unchanged, the Lustre file will
be auto re-attach during the stat() call in the Lustre kernel.
This may result in misunderstanding for the operation "lfs pcc
state" on a file that has already detached but still valid cached
on PCC according to the unchanged layout generation.
This problem exposes on the newer Ubuntu 22.04 in which realpath()
executes readlink() for each component of the path instead of
lstat():
readlink("/mnt", 0x7fffd5760800, 1023) = -1
readlink("/mnt/lustre", 0x7fffd5760800, 1023) = -1
readlink("/mnt/lustre/sanity-pcc.f15", 0x7fffd5760800, 1023) = -1
In this patch, it remove realpath() from lfs_pcc_state() to avoid
this misunderstanding behavior for the command: $LFS pcc state.
And it also fixes the test scripts sanity-pcc: test_15, test_16,
test_27, test_39.
Change-Id: I50ae46a1e952a3faaf0d7a7293579e239156d6d3
Test-Parameters: clientdistro=el8.5 env=SANITY_PCC_EXCEPT="101a" testlist=sanity-pcc
Test-Parameters: clientdistro=ubuntu2204 env=SANITY_PCC_EXCEPT="101a 39" testlist=sanity-pcc
Test-Parameters: clientdistro=ubuntu2004 env=SANITY_PCC_EXCEPT="101a" testlist=sanity-pcc
Signed-off-by: Qian Yingjin <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/47632
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Mon, 4 Jul 2022 13:31:03 +0000 (15:31 +0200)]
EX-5497 sec: fix encrypted symlink length
Length of encrypted symlink needs to be the length of the symlink
target. To achieve this, we need to read the symlink target and
decrypt or decode it in ->getattr(). This is possible thanks to an
enhanced getattr capable of getting more stat information.
Unfortunately, configure check for kernel support of this enhanced
getattr is incomplete, making the code call the basic getattr.
Change-Id: I03bf68679a02542b3fb696bb7458ff3276423784
Fixes:
ca483b3b85 ("LU-14651 llite: extend inode methods with user namespace arg")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-on: https://review.whamcloud.com/47863
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Sat, 2 Jul 2022 01:55:51 +0000 (19:55 -0600)]
RM-620 build: New tag 2.14.0-ddn51
New tag 2.14.0-ddn51
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ic47ffc541b6b918ac30286c488e89159bcbf2a57
John L. Hammond [Wed, 6 Apr 2022 16:51:47 +0000 (11:51 -0500)]
LU-15308 lod: set ldo_mirrors to NULL on error
In lod_alloc_comp_entries() if OBD_ALLOC_LARGE fails and we free
ldo_mirrors then we set it to NULL to avoid a double free later.
Lustre-change: https://review.whamcloud.com/47008
Lustre-commit:
26f6b0e952b24de2a900f6f1eeae79fea6af4787
Test-Parameters: trivial
Signed-off-by: John L. Hammond <jhammond@whamcloud.com>
Change-Id: I27552d1eaecc06720190db9cfe89ded71b9fef53
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47850
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Minh Diep [Wed, 29 Jun 2022 21:33:03 +0000 (14:33 -0700)]
EX-5462 build: build lipe-lpcc in all distro/arch
Test-Parameters: trivial
Test-Parameters: clientdistro=el8.6 clientarch=aarch64 testlist=sanity-pcc env=ONLY=210
Change-Id: Ic9a381fc2582e63863b968e1dc18bee5e181ca7f
Signed-off-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47834
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Alex Deiter [Thu, 30 Jun 2022 12:46:13 +0000 (12:46 +0000)]
EX-5477 build: link libjson-c directly to liblustreapi
To avoid adding a liblustreapi linker dependency to libjson-c,
which makes it harder to build applications using this library,
link libjson-c directly to liblustreapi fir the few functions
that it needs.
- added configure check for yaml
- added configure check for json
- added json library to the Lustre liblustreapi
- replaced hardcoded -lyaml with variable
- replaced hardcoded -ljson-c with variable
- removed redundant json-c links
Test-Parameters: trivial
Fixes:
fbfd2d075534 ("EX-5176 pcc: use JSON string for trusted.pin xattr")
Change-Id: I57b8abb5170b3e3a4d18782c5611929c7c2b7072
Signed-off-by: Alex Deiter <alex.deiter@gmail.com>
Reviewed-on: https://review.whamcloud.com/47844
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Lei Feng [Thu, 30 Jun 2022 03:15:37 +0000 (11:15 +0800)]
EX-5468 lipe: use absolute path in lpcc.service
Some platform needs absolute path for command in service script.
Signed-off-by: Lei Feng <flei@whamcloud.com>
Change-Id: I11ff46ceaffa839540736e46d84fb22b7343ff80
Reviewed-on: https://review.whamcloud.com/47840
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Tue, 8 Mar 2022 11:07:47 +0000 (12:07 +0100)]
LU-15625 sec: fix set_param -P for root squash
lctl set_param -P needs to be fixed for root squash in order
to properly propagate to clients.
On server (MDT) side, the paramaters are mdt.*.*squash*.
On client side, the parameters are llite.*.*squash*.
So if the setting on MGS side is done as
set_param -P *.*.root_squash and
*.*.nosquash_nids, it works fine. But if it is done as
set_param -P mdt.*.root_squash, this setting is not applied to
client side.
The solution is to have the settings translated into
*.*.root_squash and *.*.nosquash_nids to make both sides happy.
Also, to ensure client vs. server consistency, prevent
set_param -P llite.*.root_squash.
Lustre-change: https://review.whamcloud.com/46739
Lustre-commit:
7b8449e8f9ed310376a191ec8dfa2f1cb6233377
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I8984c9d9024d7a053e548ed15d1321b281d9940f
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47787
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sebastien Buisson [Mon, 27 Jun 2022 08:56:45 +0000 (10:56 +0200)]
LU-15911 enc: null encrypted names is embedded llcrypt only
enable_filename_encryption tunable only makes sense when Lustre client
is built against embedded llcrypt. When built against in-kernel
fscrypt, this tunable is silently ignored, as fscrypt always carries
out file name encryption.
So have the enable_filename_encryption tunable only when Lustre client
is built against embedded llcrypt. Also fix sanity-sec test_54 so that
it works for in-kernel fscrypt.
Lustre-change: https://review.whamcloud.com/47520
Lustre-commit: TBD (
98621cb3f33e39c458ef1c02da3b23a69d481b61)
Fixes:
e68d496ada ("LU-15858 sec: reinstate null encryption for file names")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ibe52feb670a00c9f421907ecd438bcccc62856f0
Reviewed-on: https://review.whamcloud.com/47785
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Etienne AUJAMES [Wed, 2 Mar 2022 17:58:20 +0000 (18:58 +0100)]
LU-15546 mdt: mdt_reint_open lookup before locking
This patch is an optimization of 33dc40d ("LU-10262 mdt:
mdt_reint_open: check EEXIST without lock").
The current behavior is to take a LCK_PR on parent to verify if the
file exist and then take a LCK_PW to create the file.
Here we do a lookup to determine the mode before tacking a lock.
This avoid to re-lock each time for create cases.
Most of the time we have:
1. lookup the child in parent directory
2. take the parent lock: file_exist ? LCK_PR : LCK_PW
3. re-lookup the child
In a race senario (create/unlink) we have:
1. lookup child in parent directory -> file exists
2. take a LCK_PR on the parent
3. re-lookup the child -> file doesn't exist
2. take a LCK_PW on the parent
4. re-lookup the child
This patch fix the "SKIP" condition for sanityn 41i/43k/45j and clear
the LRU locks cache for sanityn 43k/45j.
Lustre-change: https://review.whamcloud.com/46679
Lustre-commit:
f14090e56c9d94e3cfaa6f13f357173d6d570547
LU-15907 mdt: fix the OBD_FAIL_MDS_REINT_OPEN2 race
This patch fixes the sanityn test_41i OBD_FAIL_MDS_REINT_OPEN2 race
scenario.
With the "LU-15546 mdt: mdt_reint_open lookup before locking" patch,
we have to force taking a LCK_PR for OBD_FAIL_MDS_REINT_OPEN2 to test
the full lock cycle:
- take PR parent lock
- lockup child (do not exist)
- take PW parent lock
- re-lookup
- create child
Otherwise cfs_race() timeouts because PW lock requests from the 2
threads conflict with each other.
Lustre-change: https://review.whamcloud.com/47506
Lustre-commit: TBD (
a15b4e389aa6d2a30d9b79a20f0884e3725c70d7)
Fixes: 33dc40d ("LU-10262 mdt: mdt_reint_open: check EEXIST without lock")
Signed-off-by: Etienne AUJAMES <eaujames@ddn.com>
Change-Id: I121abd4babfb516d7a64682b054a6443d38590ef
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yingjin Qian <qian@ddn.com>
Reviewed-on: https://review.whamcloud.com/47810
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Thu, 30 Jun 2022 06:02:27 +0000 (23:02 -0700)]
LU-15521 spec: fix more bare words error with rpm 4.16
This patch fixes more bare words errors and extra tokens
warnings with rpm 4.16.
Lustre-change: https://review.whamcloud.com/47833
Lustre-commit: TBD (from
091bb5a39957b17cd3ebe77314870bbcc386eab6)
Test-Parameters: trivial
Change-Id: Ic40b5763d1cb362d5aa77b06e9a5768b2abbc708
Fixes:
597a6bf9e085 ("LU-15521 spec: fix bare words error with rpm 4.16")
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47842
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Shaun Tancheff [Thu, 30 Jun 2022 06:00:34 +0000 (23:00 -0700)]
LU-15563 build: Include the new linux/blk-integrity.h
Linux v5.15-rc6-17-gfe45e630a103
block: move integrity handling out of <linux/blkdev.h>
Include the new linux/blk-integrity.h
Since blk-integrity is only used in osd-ldiskfs we can migrate
the compatibility wrappers:
blk_integrity_interval(),
blk_integrity_name(),
bdev_integrity_enabled(),
and
bip_size()
to osd-ldiskfs/osd_internal.h
Lustre-change: https://review.whamcloud.com/47166
Lustre-commit:
afe944a12091081b3bfeaa2365fb03ef272ba9ba
HPE-bug-id: LUS-10921
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Idcbef9b43b7d2a740291e3783f81c23454209a25
Reviewed-on: https://review.whamcloud.com/47841
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Wed, 25 May 2022 14:53:57 +0000 (16:53 +0200)]
LU-15451 sec: retry ro mount if read-only flag set
In case client mount fails with -EROFS because the read-only nodemap
flag is set and ro mount option is not specified, just retry ro mount
internally. This is to avoid the need for users to manually retry the
mount with ro option.
Lustre-change: https://review.whamcloud.com/47490
Lustre-commit: TBD (
db0765ffda943399c9c095fbf82bcab9079feadd)
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I0dedd1394eeb6804f7fdde930275f6649b935bab
Reviewed-on: https://review.whamcloud.com/47817
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Fri, 14 Jan 2022 09:16:31 +0000 (10:16 +0100)]
LU-15451 sec: read-only nodemap flag
Add a new 'readonly_mount' property to nodemaps. When set, we return
-EROFS from server side if the client is not mounting read-only.
So the client will have to specify the read-only mount option to be
allowed to mount.
Lustre-change: https://review.whamcloud.com/46149
Lustre-commit: TBD (
a8cbf96538dbee8104180f63af037cbc5c9e08e9)
Fixes:
928714dddabb ("LU-5092 nodemap: save id maps to targets in new index file")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I9931844ae46dfd5d724f592f8dfacc4a8011c7e3
Reviewed-on: https://review.whamcloud.com/47816
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Wed, 29 Jun 2022 19:42:51 +0000 (13:42 -0600)]
RM-620 build: New tag 2.14.0-ddn50
New tag 2.14.0-ddn50
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I6239d5360245aa4cae1066c6b343803cbc59e1cd
Oleg Drokin [Mon, 30 May 2022 07:05:23 +0000 (03:05 -0400)]
LU-15901 mdc: Remove entry from list before freeing
mdc_changelog_cdev_init forgot to remove entries from list if
chardev allocation failed
Lustre-change: https://review.whamcloud.com/47480
Lustre-commit:
441ec2296a0938dd30cf60a70943eb0799d1d70c
Change-Id: Ic76b5320bf80c7f7f60c7682bda4bc37a0b300bd
Fixes:
d0423abc1ad ("LU-12506 changelog: support large number of MDT")
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/47783
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Qian Yingjin [Fri, 23 Nov 2018 08:10:54 +0000 (16:10 +0800)]
LU-11695 som: disabling xattr cache for LSOM on client
To obtain uptodate LSOM data, currently a client needs to set
llite.*.xattr_cache =0 to disable the xattr cache on client
completely. This leads that other kinds of xattr can not be cached
on the client too.
This patch introduces a heavy-weight solution to disable caching
only for LSOM xattr data ("trusted.som") on client.
Lustre-change: https://review.whamcloud.com/33711/
Lustre-commit: TBD (from
55a65276b8e62f0aa894ee0719051ed8737ab59e)
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: Iab5ef3030b05ac09184d01f2a3a8ed92ff1cf26b
Reviewed-on: https://review.whamcloud.com/47813
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lei Feng [Fri, 24 Jun 2022 02:34:31 +0000 (10:34 +0800)]
EX-5419 lipe: retry to get lpcc_purge stats file
Sleep and retry to get lpcc_purge stats file after sending signal
Correct statistics data algorithm.
Signed-off-by: Lei Feng <flei@whamcloud.com>
Test-Parameters: clientdistro=el8.5 testlist=sanity-pcc env=ONLY=210
Change-Id: I79e4b7de871f8ffd290e0c30da4780265fa7e9fa
Reviewed-on: https://review.whamcloud.com/47729
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Lei Feng [Fri, 24 Jun 2022 00:31:16 +0000 (08:31 +0800)]
EX-5366 test: handle missing lpcc.conf in test_210
Handle missing /etc/lpcc.conf in sanity-pcc test_210
Signed-off-by: Lei Feng <flei@whamcloud.com>
Test-Parameters: trivial clientdistro=sles15sp3 testlist=sanity-pcc env=ONLY=210
Test-Parameters: clientdistro=el8.6 clientarch=aarch64 testlist=sanity-pcc env=ONLY=210
Change-Id: Ia19c32ac2719a52ee880a2e633495b9ce3bb9534
Reviewed-on: https://review.whamcloud.com/47728
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Fri, 13 May 2022 15:03:22 +0000 (17:03 +0200)]
LU-15855 enc: enc-unaware clients get ENOKEY if file not found
To reduce issues with applications running on clients without keys
or without fscrypt support that check for the existence of a file in
an encrypted directory, return -ENOKEY instead of -ENOENT.
For encryption-unaware clients, this is done on server side in the
mdt layer, by checking if clients have the OBD_CONNECT2_ENCRYPT
connection flag.
For clients without the key, this is done in llite when the searched
filename is not in encoded form.
Lustre-change: https://review.whamcloud.com/47349
Lustre-commit:
00898697f998c095e6dab3dd27e347cb1150ee8c
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I9a3b7af3a856b7fc7222c61a308ad23168869d57
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47786
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sebastien Buisson [Fri, 24 Jun 2022 16:08:22 +0000 (18:08 +0200)]
EX-5427 sec: fix pcc detach of encrypted file
In case of 'lfs pcc detach' of an encrypted file, its page cache
pages must be trashed as they might contain cipher text because
of the pcc file being detached.
Improve sanity-pcc test_21j to exercise this use case.
Fixes:
393697cac0 ("EX-4182 sec: support of PCC-RO for encrypted files")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ice13c5b4205c074d9b46e2175d18f8743dbe9c58
Reviewed-on: https://review.whamcloud.com/47766
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yingjin Qian <qian@ddn.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Thu, 9 Jun 2022 08:00:52 +0000 (10:00 +0200)]
LU-15922 sec: new connect flag for name encryption
Introduce OBD_CONNECT2_ENCRYPT_NAME connection flag for compatibility
with older versions that do not support name encryption.
When server side does not have this flag, client side is forced to
null encryption for file names. And client needs to use old xattr to
store encryption context.
Also update tests in sanity-sec to exercise name encryption only if
server side supports it.
Lustre-change: https://review.whamcloud.com/47574
Lustre-commit: TBD (
ec94d5cb80bd14d90920f9295cd0dadf5cf7d499)
Fixes:
efea80e8b9 ("LU-13717 sec: filename encryption - digest support")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I446a4caba8e45821d701628a14c96f03cb6c4525
Reviewed-on: https://review.whamcloud.com/47827
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Tue, 28 Jun 2022 23:53:18 +0000 (17:53 -0600)]
RM-620 build: New tag 2.14.0-ddn49
New tag 2.14.0-ddn49
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: If9d742ace566baaa8510e3614d5a0e1625e29763
Lai Siyao [Sat, 21 May 2022 02:21:38 +0000 (22:21 -0400)]
LU-15910 llite: enforce ROOT default on subdir mount
In subdirectory mount, the filesystem-wide default LMV doesn't take
effect. This fix includes the following changes:
* enforce the filesystem-wide default LMV on subdirectory mount if
it's not set separately.
* "lfs getdirstripe -D <subdir_mount>" should print the
filesystem-wide default LMV.
Add sanity test_413g.
Lustre-change: https://review.whamcloud.com/47518
Lustre-commit:
a162e24d2da5e4bd64a79d6dcc128bd0d50e8517
LU-15910 tests: skip sanity/413g for SSK
When running sanity test_413g under review-dne-selinux-ssk-part-1
it intermittently fails. Temporarily disable this subtest for
this config until the problem is understood and fixed.
Lustre-change: https://review.whamcloud.com/47800
Lustre-commit: TBD (from
8cf4d6ff57dfd51b18997d4b98bf04d008963d70)
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I26de9d02872f0df8918b4ef0765b6b18b84794e6
Reviewed-on: https://review.whamcloud.com/47599
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Mon, 27 Jun 2022 17:30:16 +0000 (10:30 -0700)]
LU-15973 build: remove AC_DEFINE(__state, state, ...)
RHEL 8.6 build failed with MLNX_OFED 5.6-2.0.9.0 as follows:
error: 'struct task_struct' has no member named 'state';
did you mean '__state'?
#define __state state
^~~~~
The failure was introduced by commit
bb7c82f13e7a and a proper
way to resolve the original issue was in commit
c04adbcd7672.
So, let's remove the improper way AC_DEFINE(__state, state, ...).
Lustre-change: https://review.whamcloud.com/47799
Lustre-commit: TBD (from
66c98e324b0182e781743cab4e938b18b6ef4255)
Test-Parameters: trivial clientdistro=el8.6 testlist=sanity
Fixes:
bb7c82f13e7 ("LU-15795 kernel: RHEL 8.6 server support")
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Change-Id: Icbc897cf5870352311262af8bd59ec24ea9d7301
Reviewed-on: https://review.whamcloud.com/47804
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Mon, 27 Jun 2022 05:00:15 +0000 (23:00 -0600)]
RM-620 build: New tag 2.14.0-ddn48
New tag 2.14.0-ddn48
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ib83800f4af36a9f2bdd79589d019870db01ccfa4
Jian Yu [Wed, 15 Jun 2022 23:15:04 +0000 (16:15 -0700)]
LU-15795 kernel: RHEL 8.6 server support
This patch makes changes to support RHEL 8.6 release
with kernel 4.18.0-372.9.1.el8 for Lustre server.
Test-Parameters: trivial fstype=ldiskfs \
clientdistro=el8.6 serverdistro=el8.6 testlist=sanity
Test-Parameters: trivial fstype=zfs \
clientdistro=el8.6 serverdistro=el8.6 testlist=sanity
Change-Id: I86407171b40d40a05379085444eee79e2ac272b3
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47523
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 3 Jun 2022 17:58:31 +0000 (10:58 -0700)]
LU-15583 build: Update ZFS version to 2.1.2
Update ZFS version to 2.1.2. The changes are listed in:
https://github.com/openzfs/zfs/releases/tag/zfs-2.1.2
Change-Id: If7c81a4b1fe13e29eea1c277b896223f5c06b31a
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47524
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Nathaniel Clark <nclark@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Sebastien Buisson [Sat, 25 Jun 2022 00:36:54 +0000 (17:36 -0700)]
LU-15956 gss: allow build without ssk
The GSS part of Lustre should be able to build without SSK, in case
some SSK requirements are not met at configure time.
Lustre-change: https://review.whamcloud.com/47681
Lustre-commit: TBD (from
a7c16ebef33097fe7596efff2a169b18f93747ba)
Test-Parameters: trivial
Test-Parameters: testgroup=review-dne-selinux-ssk-part-1
Test-Parameters: testgroup=review-dne-selinux-ssk-part-2
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ieacbcb5db77fcc12cc13579785e640857ce7fb02
Reviewed-on: https://review.whamcloud.com/47780
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 24 Jun 2022 21:40:45 +0000 (14:40 -0700)]
LU-15962 build: add in-kernel Module.symvers to symbol path
After building Lustre with in-kernel OFED, installing
ko2iblnd module hit the following errors:
ko2iblnd: disagrees about version of symbol __ib_alloc_pd
ko2iblnd: Unknown symbol __ib_alloc_pd (err -22)
ko2iblnd: disagrees about version of symbol rdma_resolve_addr
ko2iblnd: Unknown symbol rdma_resolve_addr (err -22)
Those exported symbols are contained in in-kernel Module.symvers,
which should be added to the symbol path KBUILD_EXTRA_SYMBOLS.
Lustre-change: https://review.whamcloud.com/47699
Lustre-commit: TBD (from
c4ba25c4c3ddbb66ddb5a5f0e2c87140a541ec3b)
Test-Parameters: trivial
Change-Id: Ic30caa7079af00a452ea24e7e982a856874af702
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47688
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 24 Jun 2022 21:37:56 +0000 (14:37 -0700)]
LU-15940 build: add a required dependency for libmount
The Lustre client utilities (mount/umount) have
an optional dependency on libmount to update utab.
However, libmout has been introduced in util-linux
since 2.18 in 2010. There is no need to make the
dependency as optional.
Lustre-change: https://review.whamcloud.com/47619
Lustre-commit: TBD (from
3a7e4f9ca86ebdaace07709a49fb01a0311ec82d)
Test-Parameters: trivial clientdistro=ubuntu2004
Test-Parameters: trivial clientdistro=el8.5
Change-Id: I4b965a5ce6cb6fc5d2061a53c44ef9b709ebab49
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47721
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Shaun Tancheff [Fri, 24 Jun 2022 21:31:09 +0000 (14:31 -0700)]
LU-15652 build: On Debian detect -common kernel headers
Check for a matching /usr/src/linux-headers-<ver>-common/
and update the --with-linux argument accordingly.
Also move LC_GLIBC_SUPPORT_COPY_FILE_RANGE outside
of utils as this also breaks the dkms build on Debian
with 'static' follows 'non static' declairation of
copy_file_range.
Lustre-change: https://review.whamcloud.com/46836
Lustre-commit: TBD (from
151f807d0ea970c63e7f23bd44535eb2da1d8ca1)
HPE-bug-id: LUS-10826
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I6e4f0b27eba6c5b07cda14f064e57aa9c93ae3cc
Reviewed-on: https://review.whamcloud.com/47779
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Mr NeilBrown [Fri, 24 Jun 2022 21:27:38 +0000 (14:27 -0700)]
LU-13903 build: Move GLIBC/openssl checks to where needed.
Two config checks on glibs support:
LC_GLIBC_SUPPORT_FHANDLES
LC_GLIBC_SUPPORT_COPY_FILE_RANGE
and two on openssl support:
LC_OPENSSL_SSK
LC_OPENSSL_GETSEPOL
are currently only run when modules are being built.
The FHANDLES test is needed when building tests.
The COPY_FILE_RANGE test is needed when building
utils as are the OPENSSL checks
So move the calls to these tests to a more appropriate place, so that
./configure --disable-modules --disable-server
can run correctly.
Lustre-change: https://review.whamcloud.com/39653
Lustre-commit:
e6d1968fbbad5971b60e6c09a02d121c31d37d59
Test-Parameters: trivial
Signed-off-by: Mr NeilBrown <neilb@suse.de>
Change-Id: Id7801112cd53601b3d560119784cbd062bf9610e
Reviewed-on: https://review.whamcloud.com/47778
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Thomas Stibor [Fri, 24 Jun 2022 21:08:50 +0000 (14:08 -0700)]
LU-15758 build: Client module DEB can't be installed on Debian
Building DEB package lustre-client-modules-*.deb depends
since commit
32c4b80192652f55bcef5786e4ec683e85234c04 on
package linux-generic. This package is however available
on Ubuntu distributions, but not e.g. on Debian distribution.
As a consequence the built package lustre-client-modules-*.deb
cannot be installed on Debian due to non-existing package
dependency.
Lustre-change: https://review.whamcloud.com/47087
Lustre-commit:
d409f74274754c87cd14a7f0a19f8d46f6496eb1
Test-Parameters: trivial clientdistro=ubuntu2004
Signed-off-by: Thomas Stibor <t.stibor@gsi.de>
Change-Id: Ia541aaede7d779c4dd2f81f896a6be8a797780b3
Reviewed-on: https://review.whamcloud.com/47777
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Shaun Tancheff [Fri, 24 Jun 2022 21:03:31 +0000 (14:03 -0700)]
LU-15596 build: set TARBALL with m-a build helper for debs
debs built using module-assistant tool by default scan
for packages and may find a random lustre tarball
Specify the correct tarball with the TARBALL
environment variable to avoid default search picking an
incorrect tarball source.
Lustre-change: https://review.whamcloud.com/46639
Lustre-commit:
47b8b6880d93d54ca1d24effb69d8c84d8d0fb2f
HPE-bug-id: LUS-10783
Test-Parameters: trivial
Fixes:
1d97ac16d8 ("LU-14948 build: Warn about /usr/src/lustre.tar.bz2")
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Iaa5a31aaa81e11ee97ae2ea27811c7a4399a0efa
Reviewed-on: https://review.whamcloud.com/47776
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Shaun Tancheff [Fri, 24 Jun 2022 20:59:04 +0000 (13:59 -0700)]
LU-14948 build: Warn about /usr/src/lustre.tar.bz2
When /usr/src/lustre.tar.bz2 exists, make debs (and dkms-debs)
will fail with an error like:
Extracting the package tarball, /usr/src/lustre.tar.bz2, ...
../../generic.sh: line 73: debian/rules: Permission denied
BUILD FAILED!
Add the current git hash to the lustre tarball, as well as
attempt to remove the conflict from /usr/src. Failing that,
give a warning to ask the user to remove the conflicting file.
Lustre-change: https://review.whamcloud.com/44677
Lustre-commit:
1d97ac16d8ade4786202c2e9005896a2ac661340
HPE-bug-id: LUS-10308
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I4aaa803cb81c2ed8ffc0182bb49ea0bff5064df4
Reviewed-on: https://review.whamcloud.com/47775
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Shaun Tancheff [Fri, 24 Jun 2022 19:31:56 +0000 (12:31 -0700)]
LU-15797 build: Workaround _fix_broken_configure_for_lto
Workaround _fix_broken_configure_for_lto macro added to
configure macro in RHEL9:
redhat-rpm-config.noarch 190-1.el9.alma @appstream
Use configure macro directly if it is not parseable
Lustre-change: https://review.whamcloud.com/47168
Lustre-commit:
9b16459fbcbd6587f1a8669490352cc389a7a410
HPE-bug-id: LUS-10918
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I53072c0ffdf82abc938322e9c408cc44f5033ab9
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Nathaniel Clark <nclark@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47774
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 24 Jun 2022 18:48:54 +0000 (11:48 -0700)]
LU-15521 spec: fix bare words error with rpm 4.16
RPM 4.16 removed support for bare words in expressions
(eg a == b needs to be "a" == "b" now). The change is
backward compatible. More changes are in:
https://rpm.org/wiki/Releases/4.16.0
This patch accommodates the above change and fixes more
errors/warnings:
- E: specfile-error error: bare words are no longer supported,
please use "...": redhat=="redhat" || redhat=="fedora"
- E: specfile-error warning: extra tokens at the end of %else
directive in line 140: %else #for Suse
- W: macro-in-comment %optflags
- W: macro-in-comment %{name}
Lustre-change: https://review.whamcloud.com/46471
Lustre-commit:
597a6bf9e085150dd57eb727859b114deb8979cb
Test-Parameters: trivial
Change-Id: I725c47f62be7762a89e5919fd2865e2fb2ced407
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/47772
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Fri, 24 Jun 2022 18:12:38 +0000 (11:12 -0700)]
LU-14195 libcfs: test for nla_strscpy
During the development of the Linux 5.10 kernel the function
nla_strlcpy() was replaced by nla_strscpy(). Handle this
change for Lustre.
Lustre-change: https://review.whamcloud.com/46876
Lustre-commit:
b762319d5ad0884adfb2f79c956a798fba665566
Test-parameters: trivial
Change-Id: I47f12add619cfd88a3692f0760b8bcc35b7877d9
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/47769
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Thu, 23 Jun 2022 22:04:05 +0000 (16:04 -0600)]
EX-5249 utils: don't complain for missing lustre.pin
Don't print an error when running "lfs pcc status" against an older
server without the "lustre.pin" xattr returns EOPNOTSUPP.
Test-Parameters: trivial testlist=sanity-pcc serverversion=2.14.0-ddn23
Fixes:
f9970c0a70 ("EX-5249 utils: show pin information in 'lfs pcc state' command")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Iab235b8be497386752915baeb31347cf8137eed0
Reviewed-on: https://review.whamcloud.com/47723
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Feng, Lei <flei@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>