Whamcloud - gitweb
Patrick Farrell [Thu, 30 Nov 2023 16:54:34 +0000 (11:54 -0500)]
LU-16897 tgt: note 'hole' pages
In order to do sparse reads, we must know which pages
correspond to holes, so we note this when the page is read
from disk.
Note something unusual: We store the hole information in
the lnb, which is a per-IO struct. This means the hole
information is not present when a page is reused in cache.
So when a region with a hole is first read from disk, the
hole annotation is available for the transfer code, but if
the page cache is in use, this information is not available
on subsequent reads from the same pages.
This can't be avoided because the server does not have any
per-page private information for page cache pages (and ZFS
would not support this).
This isn't too costly for two reasons:
1. We default page cache to off on flash systems
2. Most data is only read once rather than many times in
quick succession
NB: It's not clear how we can efficiently get hole
information from ZFS so this is only for ldiskfs for now.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I54b1b0abeb6889163f36b315292d8b6e760d6f78
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53297
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Cyril Bordage <cbordage@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Sat, 21 Dec 2024 11:01:03 +0000 (16:31 +0530)]
LU-18475 build: compatibility updates for kernel 6.12
Linux commit v6.6-rc2-11-gd77008421afd
groups: Convert group_info.usage to refcount_t
Provide wrappers to inc/dec group_info.usage
Linux v6.12-rc1-3-g5f60d5f6bbc1
move asm/unaligned.h to linux/unaligned.h
Add a configure test to determine which header to use
Linux v6.11-rc1-51-ga225800f322a
fs: Convert aops->write_end to take a folio
Linux v6.11-rc1-52-g1da86618bdce
fs: Convert aops->write_begin to take a folio
Add 'struct folio' for page vs folio signature change.
Linux v6.11-rc4-27-g11068e0b64cb
fs: remove f_version
f_version is removed, conditionally ignore it.
Linux v6.11-rc6-86-g09022bc196d2
mm: remove PG_error
PG_error flag and PageError wrappers are removed.
Linux v6.11-rc6-233-g99f86bbda317
mm: remove PageMlocked
PageMLocked wrappers are removed
Linux v6.11-rc6-225-ge880034cf718
mm: introduce page_mapcount_is_type()
PAGE_MAPCOUNT_RESERVE is removed and page_mapcount_is_type()
is used instead.
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I43928749e017c95edcbba9469550c33b00160e16
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57125
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>
James Simmons [Sat, 22 Feb 2025 15:10:24 +0000 (10:10 -0500)]
LU-18743 llite: inode_to_wb() needs locking
When running a kernel with lockdep turned on testing shows the
following error:
WARNING: CPU: 1 PID: 37 at include/linux/backing-dev.h:291 ll_writepages+0x3dd/0x400 [lustre]
Workqueue: writeback wb_workfn (flush-lustre-
ffff8f09f4)
RIP: 0010:ll_writepages+0x3dd/0x400 [lustre]
Call Trace: [ 1267.032775] ? show_regs.cold.9+0x22/0x2f
? __warn+0xc8/0x150 [ 1267.043623] ? ll_writepages+0x3dd/0x400 [lustre]
This due to inode_to_wb() being called without a lock. We can
pick from 3 types of locks but I went with the inode i_lock.
Change-Id: I7427041d6df102161c06cfbb05b7e26428675225
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58161
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alexander Zarochentsev [Tue, 21 Jan 2025 20:10:22 +0000 (20:10 +0000)]
LU-18639 dne: a correct check for dir split
Use the actual dir stripe count while performing
a dir split sanity check in lod_dir_declare_dir_split().
Fix lod_object_lock() to work with a striped dir with
only one stripe correctly.
Improve sanity test_230p by adding a dir split right
after the dir merges.
Also fix a typo in lustre/doc/lfs-migrate.1 .
Fixes:
2e2b16c28b ("LU-11025 dne: support directory restripe")
Fixes:
392f558f40 ("LU-17810 dne: dir restripe without fixed hash flag")
HPE-bug-id: LUS-12701
Test-Parameters: envdefinitions=ONLY=230p fstype=ldiskfs mdtcount=2 mdscount=2 testlist=sanity
Signed-off-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
Change-Id: I8d8501fd09f89d03ccb1ea92a8562326110ecc24
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57784
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Bruno Faccini [Fri, 15 Nov 2024 09:24:08 +0000 (10:24 +0100)]
LU-18446 ptlrpc: lower CPUs latency during client I/O
Some CPUs with power-management can suffer with high
latency to exit from idle state.
This can have a strong impact on Lustre client perfs.
Use PM-QoS framework to guarantee usage of low-latency
power management mode, for CPUs/Cores known to be
involved to handle RPC replies for Lustre I/Os
completion.
Added PM-QoS configure checks:
PM-QoS framework is present since Kernel v3.2.
DEV_PM_QOS_RESUME_LATENCY was on DEV_PM_QOS_LATENCY before v3.15.
to handle all these cases for older kernels compatibility.
Add 4 tuneables :
_ 'enable_pmqos' to enable/disable using PM-QoS to
bump CPUs latency
_ 'pmqos_latency_max_usec' to allow modifying the max
latency value to be used
_ 'pmqos_default_duration_usec' to allow modifying
the timeout value to unset low latency
_ 'pmqos_use_stats_for_duration to enable/disable
using the per-target stats to set low latency timeout
Here is a table summarising the single node fio (randread)
performance :
NJOBS Target perf Original perf perf with patch
1 2.5 1.05 2.56
2 5.24 2.14 5.26
4 10.8 4.36 10.5
8 21.3 8.68 20.9
16 40 16.9 40
32 65.4 32.2 64.1
64 84 56.8 83.4
128 90.8 79.6 89.9
192 91.7 85.2 91.5
256 91.9 87.4 91.8
320 91.8 89.7 91.9
Signed-off-by: Bruno Faccini <bfaccini@nvidia.com>
Change-Id: I784a699f355da413db5029c6c7584ce3ee4ba9e1
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57039
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>
Olaf Faaland [Tue, 18 Feb 2025 04:46:38 +0000 (20:46 -0800)]
LU-18738 utils: avoid statx() of root of mounted FS
When looking for a specific mounted lustre file system by path, avoid
the stat() or statx() call on lustre file systems whose mountpoints do
not match the given path.
This avoids hangs if the client is disconnected from MDT0 of other
mounted file systems, but the desired file system is reachable.
Signed-off-by: Olaf Faaland <faaland1@llnl.gov>
Change-Id: I1c67214f107ae2afe34d050470155807063bda51
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58135
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: Etienne AUJAMES <eaujames@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Tue, 18 Feb 2025 09:14:08 +0000 (12:14 +0300)]
LU-18727 target: reference transaction early
grab a reference to distrubuted transaction handle before putting on
the list, otherwize the concurrent commit thread can find it and
release, thus the original thread will be accessing just freed
structure.
Test-Parameters: testlist=replay-single,replay-dual
Test-Parameters: testlist=replay-single,replay-dual
Test-Parameters: testlist=replay-single,replay-dual
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I12546b1bce3b3f0fe3c74a99bb589bee39768754
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58112
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Lai Siyao <lai.siyao@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Li Dongyang [Mon, 17 Feb 2025 03:37:55 +0000 (14:37 +1100)]
LU-18392 tests: watch destroys_in_flight recovery_small/160
In recovery_small/160, we sleep and check for destroys_in_flight
and make sure the number is low, which indicates destroys are not
blocked.
However there's a 10s timeout, the destroy rpcs could be retried
and before they got put back on error_list again, the destroys_in_flight
could be bumped up, if the test case happen to check destroys_in_flight
during this window the test case could fail.
Use wait_update_cond to watch for the expected drop.
Change-Id: I0b29a90e4c78e80a0b5a522d57ed97db1b698364
Test-Parameters: trivial testlist=recovery-small env=ONLY=160,ONLY_REPEAT=100
Fixes:
27f787daa7 ("LU-15737 ofd: don't block destroys")
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58096
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Fri, 14 Feb 2025 17:50:47 +0000 (12:50 -0500)]
LU-8066 osc: move complex proc to debugfs
Time to pull the trigger and move the complex proc files
to debugfs for the osc layer.
Change-Id: I719362a6885fd9272ad92249e089ed059dc734b5
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58090
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Fri, 14 Feb 2025 17:54:42 +0000 (12:54 -0500)]
LU-8066 mdc: move complex proc to debugfs
Time to pull the trigger and move the complex proc files
to debugfs for the mdc layer.
Change-Id: Id4cc8a53ab581ec6a56578d6d23b3541946933e5
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58089
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Fri, 14 Feb 2025 16:05:20 +0000 (11:05 -0500)]
LU-8066 ldlm: move debugfs entries to general sysfs
Any simple debugfs files in the top ldlm directory should be
moved to /sys/fs/lustre/ldlm. This ensures these files will
always be available which is not the case for debugfs.
Change-Id: I851923894d8b6c594056d71a891364d5f54988a1
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58087
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Fri, 14 Feb 2025 06:00:46 +0000 (22:00 -0800)]
LU-18721 kernel: update SLES15 SP6 [6.4.0-150600.23.38.1]
Update SLES15 SP6 kernel to 6.4.0-150600.23.38.1 for Lustre client.
Test-Parameters: trivial mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testlist=sanity
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-1
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-2
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-3
Change-Id: I56a4c37f2316c9180d07b8633db4334f59e09fce
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58080
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Marc Vef [Fri, 14 Feb 2025 11:14:22 +0000 (12:14 +0100)]
LU-18680 ptlrpc: Improve yaml output for nodemap offset
Nodemap offset presents loose values on lctl get_param:
$ lctl get_param -n nodemap.t0.offset
start_uid: 100000
limit_uid: 200000
start_gid: 100000
limit_gid: 200000
start_projid: 100000
limit_projid: 200000
This is technically valid YAML syntax, but not contextually bound as a
unit or to its key "offset". In the future, we want to save/restore
entire nodemap configurations. This means that the key "offset" is
necessary to relate the values to. This can be done via indenting or
more explicitly with {}, as done in this patch to be consistent with
other nodemap properties like ranges or idmap and to not necessarily
rely on indentation:
$ lctl get_param -n nodemap.t0.offset
{
start_uid: 100000,
limit_uid: 200000,
start_gid: 100000,
limit_gid: 200000,
start_projid: 100000,
limit_projid: 200000
}
Note, offsets are always shown even for zero, thus {} is not
shown when no offsets are defined.
Test-Parameters: trivial testlist=sanity-sec env=ONLY=27ab
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: I9b9a5411c3adcd39d45f29c8fc1d8c51163ba9b5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58085
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Mon, 3 Feb 2025 17:07:27 +0000 (12:07 -0500)]
LU-9859 libcfs: migrate hash table to obdclass
The lustre specific hash is only used by the Lustre layer so it
doesn't make sense to keep it in libcfs. Move the hash code to
obdclass. Once ldlm resource hashtable moves to rhashtabble this
be server only code.
Test-Parameters: trivial
Change-Id: I676f6a3decf17e0e90cd747ad4bb4c4d16a52a30
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57945
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Fri, 31 Jan 2025 07:39:23 +0000 (23:39 -0800)]
LU-18211 build: add e2fsprogs-devel to dkms dependency
The e2fsprogs-devel package is needed to build server packages
with DKMS, so add it to the Requires: list, since RHEL defaults
to XFS these days and it may not always be installed.
Test-Parameters: trivial testgroup=full-dkms
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I1d5ef22d2caa54821dc55d401beff1f491300c1e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57934
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sergey Cheremencev [Wed, 29 Jan 2025 22:22:15 +0000 (01:22 +0300)]
LU-16641 tests: 12b: unlink recently created files
It is possible that createmany hasn't created requested
number of files on mdt0. So remove only the number of
successfully created files instead of requested.
Fix error_ignore to avoid default error behaviour.
Fixes:
25896b8b88 ("LU-16641 tests: fix sanity-quota_12b")
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Change-Id: Ic6d5a02295c73fbed0773408c67a47850dee1f80
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57929
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Aurelien Degremont [Mon, 20 Jan 2025 14:07:59 +0000 (15:07 +0100)]
LU-18680 ptlrpc: improve nodemap lproc syntaxes
- 'idmap='
Fix bad YAML syntax when only gid or projid were set, but no uid mapping.
Now simply a pair of brackets when empty, no more multiple or empty lines.
idmap=[]
- 'exports='
Now each entry is on a separate line, likewise 'idmap'. While still
YAML compliant, this is easier to read for admins. The final ',' has been
cleared.
Simply a pair of brackets when empty, no more multiple or empty lines.
exports=[]
exports=[
{ nid: 172.16.0.1@tcp, uuid:
1d49406a-68eb-4d54-ae08-
3587d6a6b078 },
{ nid: 172.16.0.1@tcp, uuid:
48ed3108-de34-11ef-bd15-
670a7bd749aa }
]
- 'ranges='
Now simply a pair of brackets when empty, no more multiple or empty lines.
Still one entry per line when populated.
ranges=[]
Change-Id: Ib1711614a825dc3bbb2b8861a61461fdea4e4f4b
Signed-off-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57915
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Fri, 24 Jan 2025 15:06:50 +0000 (10:06 -0500)]
LU-18621 lnet: fix wrong stats for lnet_net_show_dump
For the function lnet_get_ni_stats() the im_idx assumes the idx
is relative to all NIs. With lnet_net_show_dump() the idx we
use is realtive to our own NI list so it doesn't always match
the idx lnet_get_ni_stats() expects. This can lead to the wrong
stats being collected when a net_id is set. The only reason we
need an idx for lnet_get_ni_stats() is so the NI can be located
but we already know the NI. Just call lnet_usr_translate_stats()
directly instead of using lnet_get_ni_stats() to figure out the
NI to call lnet_user_translate_stats() internally with.
Test-Parameters: trivial testlist=sanity-lnet
Fixes:
8f8f6e2f36e ("LU-10003 lnet: use Netlink to support old and new NI APIs.")
Change-Id: Ie39e65146c21d976f9a7655eead8c46e9293ee27
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57885
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Cyril Bordage <cbordage@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Wed, 5 Feb 2025 16:56:47 +0000 (23:56 +0700)]
LU-18610 obdclass: add job expired flag
In lprocfs_job_cleanup() expired jobs are de-referenced before
being removed from the lru to defer holding a spinlock.
This opens a race where a job can be put multiple times
when only a single put on expiry is expected. To avoid a double
de-reference race use a bit flag to avoid the extra de-reference
on jobs in the process of being expired and removed.
HPE-bug-id: LUS-12670
Test-Parameters: testlist=sanity env=ONLY=205,ONLY_REPEAT=100
Fixes:
cad59b9b72 ("LU-18351 obdclass: jobstat scaling")
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Ia7dc91cac313919827cc13db971ffb3debe318c2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57616
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>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Bobi Jam [Wed, 8 Jan 2025 12:38:16 +0000 (20:38 +0800)]
LU-18618 ofd: handle filter_fid properly on server
The object's filter_fid could be changed via out_xattr_set(), then the
ofd_object::ofo_ff is out of date, the old ofo_ff layout version could
be a bigger value than that of the merged file, so write/punch upon
this OFD object could be rejected as it prohibit operation with
smaller layout version than that on the disk.
Test-Parameters: testlist=sanity-flr env=ONLY=70a,ONLY_REPEAT=250
Test-Parameters: testlist=sanity-flr env=ONLY=200,ONLY_REPEAT=50
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I8bd8c1af4d7806c3d8e4ab9de5af519381d36060
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57678
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>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Alex Zhuravlev [Sat, 14 Dec 2024 11:49:51 +0000 (14:49 +0300)]
LU-18557 ldlm: save ldlm namespace ops for use
save ldlm namespace ops for use as __ldlm_resource_putref_final() can
initiate namespace release in a separate thread which in turn will
invalidate the structure pointing to the namespace's ops.
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: If3ddc032b21806046fede09d40a4df78d441138d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57432
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Marc Vef [Fri, 27 Dec 2024 17:17:16 +0000 (18:17 +0100)]
LU-18357 ptlrpc: Add alternate fileset data structure handler
Handling multiple future alternate filesets requires an in-memory data
structure that is synchronized with the nodemap IAM storage for
filesets. Specifically, it is necessary to properly handle gaps in the
cluster idx subid range that is reserved for filesets which occur when
filesets are deleted.
To easily synchronize the IAM filesets with the in-memory nodemap, an
this patch implements an ordered associative array, rb tree in this
case, which is naturally ordered by a node key - in this case the
global fileset id that can later be directly mapped to the IAM cluster
idx subid range for filesets.
This patch sets the maximum number of alternate filesets to 255 (+1
primary fileset).
This patch only includes the management of the fileset rb tree and
includes all necessary functions. The next patch connects the rb tree
to the IAM and add the API for adding and deleting filesets.
Test-Parameters: trivial
Test-Parameters: testlist=conf-sanity env=ONLY=134
Test-Parameters: testlist=sanity-hsm env=ONLY=411
Test-Parameters: testlist=sanity-quota env=ONLY=75
Test-Parameters: testlist=sanity-sec
Test-Parameters: testlist=sanity-selinux env=ONLY=21
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: Ia532894880e5fe65692c699de14e93794c2da483
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57600
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
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>
Marc Vef [Thu, 19 Dec 2024 15:02:35 +0000 (16:02 +0100)]
LU-18357 ptlrpc: Add fileset ID handling on the nodemap IAM
For handling multiple filesets in the nodemap's IAM cluster idx space,
the cluster idx subids must be associated with a fileset id and vice
versa. This allows to place fileset fragments in the correct subid
range and to assign retrieved fragments to the correct fileset.
This patch adds these calculations for a single fileset with the work
for multiple alternate filesets pending.
Test-Parameters: trivial testlist=sanity-sec
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: I7bef5218ebb38d57d0e3aa6aab499111733eaef7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57527
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>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Marc Vef [Thu, 19 Dec 2024 10:09:24 +0000 (11:09 +0100)]
LU-18357 ptlrpc: Use dynamic memory allocation for filesets
Currently, a nodemap's fileset uses a static-sized array which may be
much larger than needed. This patch adds dynamic memory allocation for
a nodemap's fileset to reduce the future memory footprint when
multiple filesets per nodemap are specified.
Note, when reading fileset fragments from the nodemap IAM, the needed
size is not known yet. Therefore, each fileset is initially
preallocated with "PATH_MAX + 1" and then shrunk when the actual size
is know. This is done on the last step, when a nodemap is set active,
e.g., after reading all IAM idx pages.
The nodemap's fileset is further renamed as future "lctl
nodemap_set_fileset" commands can only modify the primary fileset.
Test-Parameters: trivial testlist=sanity-sec
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: I39bd3355c96fcf3938aaa52c8e5ff1eb70617378
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57523
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>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Marc Vef [Mon, 9 Dec 2024 11:53:09 +0000 (12:53 +0100)]
LU-18357 ptlrpc: Use nodemap IAM for persisting filesets
Currently, two separate commands exist to set a fileset and both
behave differently. "lctl set_param (-P)" works as expected. On the
other hand, "lctl nodemap_set_fileset" updates the fileset only on the
local node and is not persistent. It could also be run from other
server nodes and not only from the MGS. This behavior is inconsistent
with other nodemap commands.
Ideally, we would want to use the nodemap IAM records for persisting
all nodemap properties without relying on secondary mechanisms, such
as the params llog which is currently used for filesets. This patch
adds support for persistence across restarts for "lctl
nodemap_set_fileset" commands. Filesets are split into 28 byte path
fragments which are stored alongside 4 byte fragment metadata into one
nodemap IAM record (which is 32 bytes).
For this, fileset fragments are stored in a "defined" subid range
within the NODEMAP_CLUSTER_IDX type. In anticipation of supporting
multiple filesets, the first fileset subid is reserved for a fileset
header. The subid range is set to support at maximum 256 nodemap
records for fileset fragments. 256 entries support enough fragments
to hold a PATH_MAX fileset in total. Only needed fragments are
inserted into the nodemap IAM.
To support seamless updates from fileset llog to IAM versions, a
nodemap flag was added which allows existing "lctl set_param -P
nodemap.<name>.fileset" to be applied outside the nodemap IAM as long
as no IAM records were set. Filesets from the llog are not migrated to
the IAM but are still compatbiel after an update. "lctl set_param
nodemap.<name>.fileset" is deprecated and uses the IAM once fileset
IAM records are in use.
Sanity-sec "test_27a" was modified to test fileset persistence.
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: Ic2e5e8026261867b7f0e90ea4ee2287251c503f7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56757
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>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Marc Vef [Mon, 25 Nov 2024 13:08:37 +0000 (14:08 +0100)]
LU-18469 ptlrpc: Add flag to deny mounts for nodemaps
Previously, nodemaps could only be activated and deactived globally.
This patch adds the ability to deny mount attempts for individual
nodemaps. Existing mounted clients are not evicted when the new flag
is set.
This feature is implemented by adding a new nodemap flag "deny_mount"
and it is stored in the nodemap IAM config record. It is therefore
persistent and the flag is automatically distributed across the
cluster.
Similar to other nodemap flags, the new "deny_mount" flag is set via
"lctl nodemap_modify" and retrieved via "lctl get_param".
Deny mounts for nodemap:
lctl nodemap_modify --name <nm_name> --property deny_mount --value 1
Allow mounts for nodemap (default):
lctl nodemap_modify --name <nm_name> --property deny_mount --value 0
Read nodemap deny_mount flag:
lctl get_param nodemap.<nm>.deny_mount
A new sanity-sec test 74 was added to test this flag.
Signed-off-by: Marc Vef <mvef@whamcloud.com>
Change-Id: Ibf05d3e04768a5702dc6070e2d35c9ac07e731ac
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57096
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>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Alex Zhuravlev [Thu, 12 Dec 2024 05:46:32 +0000 (08:46 +0300)]
LU-18535 ptlrpc: do not use kstrndup()
instead use OBD_ALLOC() + memcpy() so subsequent OBD_FREE() does
correct math to detect memory leaks.
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ib6ab1ec865f3d1c9e92328b4ccddef9c1861dee4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57385
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: Timothy Day <timday@amazon.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Timothy Day [Fri, 1 Sep 2023 16:28:15 +0000 (16:28 +0000)]
LU-17079 utils: improve mkfs.lustre error messages, do cleanup
Several error message have been changed to output the real error.
This should make it much easier to debug certain types of issues.
Many conditional compilation macros have been cleaned up. Since
this utilies have loadable plugings, we can't know at compile
time which backend storage types are going to be supported.
Plus, these macros add complexity to the code.
Test-Parameters: trivial
Test-Parameters: trivial fstype=zfs
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ifcd20cc9fa389a6440b453f6236c41b3a80d92d3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52223
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: Oleg Drokin <green@whamcloud.com>
Bobi Jam [Thu, 13 Feb 2025 07:37:10 +0000 (15:37 +0800)]
LU-18718 llite: cl_file_inode_init() only for regular file
cl_file_inode_init() only applies to regular files, so we'd avoid
LBUG-ing it if the pre-condition is not met.
cl_file_inode_init()) ASSERTION((((inode->i_mode) &
00170000)
== 0100000)) failed:
Call Trace:
dump_stack+0x41/0x60
lbug_with_loc.cold.8+0x5/0x58 [libcfs]
cl_file_inode_init+0x216/0x390 [lustre]
ll_update_inode+0x44f/0x710 [lustre]
ll_iget+0x228/0x320 [lustre]
ll_prep_inode+0x3e5/0xa10 [lustre]
ll_lookup_it_finish.constprop.32+0xce/0x10a0 [lustre]
ll_lookup_it+0x82f/0x1840 [lustre]
ll_lookup_nd+0x112/0x1c0 [lustre]
__lookup_hash+0x75/0xa0
do_unlinkat+0x156/0x300
do_syscall_64+0x5b/0x1a0
entry_SYSCALL_64_after_hwframe+0x66/0xcb
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I7fef2645ef040cb3c3fd6e4ece062e1c9ab64327
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58057
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Sun, 22 Sep 2024 14:15:03 +0000 (10:15 -0400)]
LU-6142 mdc: Fix style issues for mdc_request.c
This patch fixes issues reported by checkpatch
for both files lustre/mdc/mdc_request.c
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Id1931d5b1b498e0a0971eb2a28c020bc5470da96
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56480
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Wed, 19 Feb 2025 00:04:35 +0000 (17:04 -0700)]
LU-18468 tests: write PAGE_SIZE for sanity-flr/211
Do not write smaller than PAGE_SIZE (=64KiB on aarch64/ppc64) when
using "dd oflag=direct" for sanity-flr test_211. Otherwise, this
will fail on clients/servers that do not support unaligned direct IO.
Test-Parameters: trivial
Test-Parameters: testlist=sanity-flr env=ONLY=211 clientarch=aarch64 clientdistro=el9.3 serverversion=2.14
Fixes:
b5db891cad ("LU-18468 llapi: always truncate mirrors on resync")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ia102b99e1303bb24114e58ecc129fe27a198135e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58122
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Thu, 13 Feb 2025 20:58:56 +0000 (12:58 -0800)]
LU-18716 kernel: update RHEL 9.5 [5.14.0-503.23.2.el9_5]
Update RHEL 9.5 kernel to 5.14.0-503.23.2.el9_5.
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.4 testlist=sanity
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.4 serverdistro=el9.5 testlist=sanity
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-1
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-2
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-3
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-1
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-2
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-3
Change-Id: I1ab9751aec09263128c29531bf51370ef9982ba1
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58077
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Thu, 13 Feb 2025 00:13:54 +0000 (16:13 -0800)]
LU-18717 kernel: update RHEL 8.10 [4.18.0-553.40.1.el8_10]
Update RHEL 8.10 kernel to 4.18.0-553.40.1.el8_10.
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testlist=sanity
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
env=SANITY_EXCEPT="66 413" \
clientdistro=el8.10 serverdistro=el8.10 testlist=sanity
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-1
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-2
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-3
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-1
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-2
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-3
Change-Id: I40bc8e5add765103993acbee5d16e04b84696a5f
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58054
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Timothy Day [Fri, 31 Jan 2025 19:28:12 +0000 (19:28 +0000)]
LU-18687 contrib: move cc-plugins, clarify license
Move cc-plugins from the top-level to contrib. This is
a more sensible location. Also, clarify that it available
under GPLv2 and add Apache-2.0 to LICENSES/dual/ directory.
This mirrors the practices of the Linux kernel.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I462b4ded84e9bd78692a87532da3df4f703db302
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57939
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alexander Boyko [Tue, 14 Jan 2025 12:02:04 +0000 (13:02 +0100)]
LU-18671 mdc: don't send empty rpc for DoM
osc_page_gang_lookup() sends empty rpc to refresh a lock,
bases on cl_io lm_next_rpc_time from a thread storage.
mdc_lock_discard_pages() does not set time, and it is taken from a
osc_thread_info. Sometimes this leads to an empty rpc for a DoM,
outside of DoM component size.
LustreError: lustre-MDT0000-mdc-
ffffa0816bceb000: operation ost_read
to node 192.168.122.55@tcp failed: rc = -116
HPE-bug-id: LUS-12706
Fixes:
564070343ac4 ("LU-14711 osc: Notify server if cache discard takes a long time")
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I36cdc2c697e2306e792241ecee77b442b24356ce
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57883
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andriy Skulysh <andriy.skulysh@hpe.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Sebastien Buisson [Wed, 22 Jan 2025 14:20:11 +0000 (15:20 +0100)]
LU-18109 nodemap: fix idmap offset for root
root must be mapped and offset just like other ids, so that all ids on
the client in the range [0, offset_limit-1] are mapped to the
filesystem id range [offset, offset+offset_limit-1].
This means that as soon as an offset is defined on a nodemap, root is
necessarily mapped:
- if admin=1, root id is offset
- if admin=0, root is squashed then offset.
Similarly:
- if trusted=1, ids are mapped (with any explicit mapping) and offset
- if trusted=0, ids are squashed then offset.
Moreover, add_offset and del_offset operations are only allowed on the
MGS or for a dynamic nodemap.
Finally, enhance sanity-sec test_27ab to test id mappings with offset.
Fixes:
e3051ad0f1 ("LU-18109 utils: adding nodemap offset capability")
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I7a20c59496174d9d1fc040c5b3b43d8dad3447f9
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57856
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: Marc Vef <mvef@whamcloud.com>
Sebastien Buisson [Wed, 15 Jan 2025 17:23:46 +0000 (18:23 +0100)]
LU-18637 obd: add 'network' server mount option
Just like the '-o network' client option, we want to control which
LNet network is used for connections established by servers to remote
peers (MGS, other servers).
This controls the following connections:
- osp
- lwp
- mgc
This patch leverages the 'imp_conn_restricted_net' field on the
'struct obd_import'.
Enhance sanity-sec test_31 to exercise this '-o network' option on
server side.
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I39cbab2645aeda6fe54efb377d1b1d9edfceb89f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57780
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Cyril Bordage <cbordage@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Shaun Tancheff [Sat, 15 Feb 2025 11:01:06 +0000 (18:01 +0700)]
LU-18187 ldlm: use cfs hash extra_bits
BUG: KASAN: vmalloc-out-of-bounds in \\
ldlm_reclaim_lock_cb+0xa46/0xa50 [ptlrpc]
In ldlm_namespace_new() allocation of ns_rs_buckets can be replaced
with extra bits sized to hold struct ldlm_ns_bucket. Then
cfs_hash_bd_extra_get() can be used to access struct ldlm_ns_bucket.
This should resolve the inconsistency that could occur after
cfs_hash_buckets_realloc().
HPE-bug-id: LUS-12508
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I13af91d400c12891a4bab5c4443dc3d3cbd25da4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56290
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Sat, 15 Feb 2025 11:17:46 +0000 (18:17 +0700)]
LU-18186 libcfs: avoid kmalloc order > MAX_PAGE_ORDER
WARNING: CPU: 4 PID: 448333 at mm/page_alloc.c:4663
__alloc_pages_noprof+0x3a7/0x4e0
libcfs calls memdup_user_nul() which uses kmalloc() which can
trigger the above warning.
Limit these excessive allocations a reasonable minimum.
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Ide49aa3870cadc43c520f29b0a942c8f9798d053
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56215
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Emoly Liu [Sat, 8 Feb 2025 07:30:01 +0000 (15:30 +0800)]
LU-18114 nodemap: split "lctl nodemap_*" group into subcommands
Split "lctl nodemap_*" command group into subcommands, e.g.
"lctl nodemap_add" to "lctl nodemap add". And "lctl nodemap_*"
commands in sanity-sec.sh are modified to verify this patch.
Also, the old man pages are modified to reflect the new command
format, and the new man page references for lctl-nodemap_xxx.8 are
added to match the old ones.
Test-Parameters: testlist=sanity-sec
Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: I165583d95f4a850ce2461c15c56583d64077ef16
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56207
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: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Frederick Dilger [Mon, 26 Aug 2024 22:54:36 +0000 (16:54 -0600)]
LU-4315 doc: updating llapi-[g-h] 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_get_fsname.3
- llapi_get_fsname_instance.3
- llapi_get_instance.3
- llapi_get_lum_dir.3
- llapi_get_lum_dir_fd.3
- llapi_get_lum_file.3
- llapi_get_lum_file_fd.3
- llapi_getname.3
- llapi_group_lock.3
- llapi_group_unlock.3
- llapi_heat_get.3
- llapi_heat_set.3
- llapi_hsm_action_begin.3
- llapi_hsm_action_end.3
- llapi_hsm_action_get_dfid.3
- llapi_hsm_action_get_fd.3
- llapi_hsm_action_progress.3
- llapi_hsm_copytool_get_fd.3
- llapi_hsm_copytool_recv.3
- llapi_hsm_copytool_register.3
- llapi_hsm_copytool_unregister.3
- llapi_hsm_state_get.3
- llapi_hsm_state_set.3
Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I0b503f02f8d5b80a3888bd57676001f7a0bc1dc5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56170
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: Oleg Drokin <green@whamcloud.com>
Alexander Zarochentsev [Fri, 2 Feb 2024 16:39:39 +0000 (16:39 +0000)]
LU-13582 out: make tx abort verbose
A distributed transaction abort and rollback of already
done updates indicates insufficient locking or fs metadata
inconsistency and should be reported to the console at least
as a warning.
Signed-off-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
Change-Id: Id1127d422d19725eeb425e028ff854769cf312d5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/53891
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@hpe.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Bobi Jam [Fri, 20 Dec 2024 15:01:01 +0000 (23:01 +0800)]
LU-18588 obdclass: keep track of cl_page's bufsize
When a cl_page is allocated, the slab cache size to be used is a
rounding-up value of the cl_object's coh_page_bufsize, while the
object's coh_page_bufsize could change if the layout is changed,
and when the cl_page on the LRU list got shrank, cl_page_free()
would find that its bufsize does not match the current
coh_page_bufsize value.
LustreError: 949:0:(cl_page.c:178:__cl_page_free()) ASSERTION(
cl_page_kmem_size_array[index] == bufsize) failed:
lbug_with_loc.cold+0x5/0x58 [libcfs]
__cl_page_free+0x1c2/0x260 [obdclass]
cl_page_free+0x96/0x4d0 [obdclass]
cl_batch_put+0x1ac/0x3d0 [obdclass]
discard_cl_pages+0x99/0x150 [osc]
osc_lru_shrink+0x34a/0x930 [osc]
lru_queue_work+0xea/0x220 [osc]
work_interpreter+0x32/0x170 [ptlrpc]
ptlrpc_check_set+0x40e/0x1ef0 [ptlrpc]
ptlrpcd_check+0x3b4/0x5a0 [ptlrpc]
ptlrpcd+0x1ba/0x4d0 [ptlrpc]
This patch would keep track of the page's bufsize by referring
to cl_page_kmem_size_array if its in the array or reusing
cp_kmem_index to store its bufsize.
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I433a5601851da3c3d9ec8578005a262f29e979ea
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57565
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Mikhail Pershin [Sat, 9 Nov 2024 13:53:53 +0000 (16:53 +0300)]
LU-14947 test: recovery_small/26a fix
- issue writes to all OSTs prior test to make sure client
exports are not dropped by server as having no updates
- set rq_sent when request is dropped by fail_check to
reconnect not immediately but in timely manner
Test-Parameters: testlist=recovery-small env=ONLY=26a
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: Idb219a0453c867903528130669d151bbb6c7bab4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56949
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>
Robert Read [Tue, 11 Feb 2025 21:39:30 +0000 (16:39 -0500)]
LU-4239 tests: add missing call to test
Fix issue in test40 in llapi_fid_test.c. The test
creates a file but was not calling the helper
function to do the test.
Signed-off-by: Robert Read <rread@ddn.com>
Test-Parameters: trivial testlist=sanity env=ONLY=154g,ONLY_REPEAT=100
Change-Id: Icd30476d5c2ae986d6971922ea6fc7a2c6859f33
Fixes:
2b10c0bde ("LU-4239 tests: test FID related APIs")
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58047
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Arshad Hussain [Mon, 10 Feb 2025 11:51:19 +0000 (06:51 -0500)]
LU-9633 llite: Add kernel doc style for lustre/llite/*.c (Part 2)
This patch converts existing functional comments
to kernel doc style comments and removes '/**' for
comments which is not meant to be a kernel-doc comment
Tested with:
<kernel src path>/scrips/kernel-doc -v -none <file>
Pass criteria: No errors/warnings reported
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I1535b80eff527596457346456c19ede97ff970a9
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58030
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Timothy Day [Fri, 31 Jan 2025 05:09:34 +0000 (00:09 -0500)]
LU-18687 build: consolidate autoconf files
Maintain all of the autoconf files in the same
top-level directory. This mirrors the practices
of other projects (like ZFS) and makes it easier
to find these files.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I6bfdef9032bf768a63292999a6e9369a85240a2b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57933
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Max Wang <wamax@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Sun, 24 Nov 2024 11:34:45 +0000 (14:34 +0300)]
LU-18485 ptlrpc: use-after-free in batch_send_update_req
if rpc in batch_send_update_req() is async, then the interpreter
(freeing the head) can be called sooner than lprocfs_oh_tally_log2()
(using the head):
BUG: unable to handle kernel paging request at
ffffa35eb3668018
PGD
100090067 P4D
100090067 PUD
100091067 PMD
14d0c0067 PTE 0
Oops: 0000 [#1] PREEMPT SMP
CPU: 1 PID: 10997 Comm: ll_sa_10979 Tainted: G W O
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-1
RIP: 0010:batch_send_update_req.constprop.1.cold.4+0xb5/0x1d1 [ptlrpc]
Fixes:
a20f25d24b5 ("LU-14139 statahead: add stats for batch RPC requests")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I65588da9a772e0109bfc133c4057b1effc0e7e5b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57116
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Oleg Drokin [Mon, 10 Feb 2025 17:34:44 +0000 (12:34 -0500)]
LU-18689 osp: Unregister proc files before obd cleanup
Don't register the proc files before we are fully done initializing
either.
This fixes problems with proc/sysfs access highlighted by
recovery-small test 57 that take many forms, but
universally have osp in backtrace and either crashes in one of the
attributes or in osp_statfs
BUG: unable to handle kernel NULL pointer dereference at
0000000000000710
IP: [<
ffffffff817dfdf8>] down_read+0x28/0x50
RIP: 0010:[<
ffffffff817dfdf8>] [<
ffffffff817dfdf8>] down_read+0x28/0x50
Call Trace:
[<
ffffffffa1535378>] active_show+0x28/0x90 [osp]
[<
ffffffffa0397166>] lustre_attr_show+0x16/0x20 [obdclass]
[<
ffffffff812d728c>] sysfs_kf_seq_show+0xcc/0x1e0
[<
ffffffff812d58b3>] kernfs_seq_show+0x23/0x30
[<
ffffffff8126f0b5>] seq_read+0x135/0x470
[<
ffffffff812d643d>] kernfs_fop_read+0x11d/0x190
[<
ffffffff81245839>] vfs_read+0xb9/0x1c0
[<
ffffffff8124676f>] SyS_read+0x7f/0xf0
BUG: unable to handle kernel NULL pointer dereference at
0000000000000158
IP: [<
ffffffffa14e85b1>] osp_statfs+0x2a1/0x4e0 [osp]
Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
RIP: 0010:[<
ffffffffa14e85b1>] [<
ffffffffa14e85b1>] osp_statfs+0x2a1/0x4e0 [osp]
Call Trace:
[<
ffffffffa03c53f2>] filestotal_show+0x52/0x120 [obdclass]
[<
ffffffffa0378166>] lustre_attr_show+0x16/0x20 [obdclass]
[<
ffffffff812d728c>] sysfs_kf_seq_show+0xcc/0x1e0
[<
ffffffff812d58b3>] kernfs_seq_show+0x23/0x30
[<
ffffffff8126f0b5>] seq_read+0x135/0x470
[<
ffffffff812d643d>] kernfs_fop_read+0x11d/0x190
[<
ffffffff81245839>] vfs_read+0xb9/0x1c0
[<
ffffffff8124676f>] SyS_read+0x7f/0xf0
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Change-Id: Ie0337fcecfa1afe0c6be901bd9dab9cf6847555a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57949
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Yang Sheng [Tue, 14 Jan 2025 18:22:01 +0000 (02:22 +0800)]
LU-18625 llite: use locks_copy_lock API
The RHEL8.[4-7] operates the lockowner ref-count
in fl_copy_lock, So use locks_copy_lock to expand
the fixing scope. Also skip the test case if work
without fix patch in interop enviroment.
Fixes:
fb3c3d2052 ("LU-17692 llite: flock work with lockd")
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I038ab25f51062decf2e7846dfdc98bc81339467a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57753
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Sat, 8 Feb 2025 13:46:18 +0000 (08:46 -0500)]
LU-18651 tests: use urandom in sanity-pfl test
With newer ZF having compression on test using dd with /dev/zero
will fail. Change the sanity-pfl test to use /dev/urandom
instead.
Change-Id: I508611fd3cee96bab623e3e12fbc1cad060b72f7
Test-Parameters: trivial fstype=zfs testlist=sanity-pfl
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58019
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: Alex Zhuravlev <bzzz@whamcloud.com>
Jian Yu [Fri, 7 Feb 2025 17:24:06 +0000 (09:24 -0800)]
LU-18702 kernel: update RHEL 8.10 [4.18.0-553.37.1.el8_10]
Update RHEL 8.10 kernel to 4.18.0-553.37.1.el8_10.
The patch also provides a fallback series which uses
the former base/ext4-delayed-iput.patch for kernel
before 4.18.0-553.22.1.el8_10.
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testlist=sanity
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
env=SANITY_EXCEPT="66 413" \
clientdistro=el8.10 serverdistro=el8.10 testlist=sanity
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-1
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-2
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-part-3
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-1
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-2
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testgroup=full-dne-zfs-part-3
Fixes:
40b69da398a ("LU-18423 kernel: update RHEL 8.10 [4.18.0-553.27.1.el8_10]")
Change-Id: I5cc375a4a3586e1485fa0d9934ea1693f6899a19
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58006
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Alex Zhuravlev [Thu, 6 Feb 2025 13:35:55 +0000 (16:35 +0300)]
LU-18153 osd: don't release uninitialized SA
if osd-zfs's object has no initialized SA, then do not
try to release that.
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I210ae1eb9cae0bfb02161efeee2f897d9c37294b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57989
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Alex Zhuravlev [Wed, 29 Jan 2025 07:16:44 +0000 (10:16 +0300)]
LU-18683 llite: remove call to client_fid_init()
the devices right under llite (lov and lmv) don't use fld client
directly, only osc and mdc do. also, client_obd (as part of
lov/lmv) is not initialized, thus calling client_fid_init()
and client_fid_fini() from llite makes no sense and just cause a
noisy warnings from the kernel.
Fixes:
424b9ccb00 ("LU-18009 obd: remove o_fid_init/o_fid_fini")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ic04b668ba70e63a65a419735cdf9402d80d3f4e1
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57918
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Arshad Hussain [Mon, 6 Jan 2025 05:06:26 +0000 (00:06 -0500)]
LU-9633 llite: Add kernel doc style for lustre/llite/*.c (Part 1)
This patch converts existing functional comments
to kernel doc style comments and removes '/**' for
comments which is not meant to be a kernel-doc comment
Tested with:
<kernel src path>/scrips/kernel-doc -v -none <file>
Pass criteria: No errors/warnings reported
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I90643c70bc5ecfbcc90504da1a5b3b3ea67e3381
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57725
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alex Zhuravlev [Tue, 24 Dec 2024 15:37:30 +0000 (18:37 +0300)]
LU-18599 mdc: assign mod_close_req when RPC is ready
we shouldn't assign mod_close_req before the corresponding close RPC
is fully populated, otherwise mdc_replay_open() can be accessing RPC
with no rq_reqmsg set.
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I78f7ba2b18c7e9c431accce591cd4a921e25f4da
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57587
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Feng Lei <flei@ddn.com>
Reviewed-by: Nikitas Angelinas <nikitas.angelinas@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Thu, 19 Dec 2024 08:20:41 +0000 (11:20 +0300)]
LU-18580 osc: don't use old mtime from lvb
do not use lvb's mtime if it's older than the current one.
Test-Parameters: env=ONLY=39,ONLY_REPEAT=100 testlist=sanityn
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I1da25d7710313d055985a39989326b9b6a52b68c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57521
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Frederick Dilger [Sat, 30 Nov 2024 23:12:55 +0000 (16:12 -0700)]
LU-18501 tests: sanity.sh test_56oe fix time range
test_56oe was likely failing due to the test running slow, resulting
in all of the files escaping the time range before they are found
with 'lfs find -ctime -Tupper -ctime +Tlower' so the bounds are now
calculated after all files have been created meaning that even if
there are large gaps between the creation of each file they will
still be within the new bounds.
Just in case the test is really extra slow, this test will be skipped
to avoid having to retest for the 0.01% of the time that it happens.
Test-Parameters: trivial testlist=sanity env=ONLY=56oe,ONLY_REPEAT=100
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: If3f737146f1a1d110873c5dd3a6ece60604e54ac
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57201
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>
James Simmons [Sat, 8 Feb 2025 01:51:19 +0000 (20:51 -0500)]
LU-18624 zfs: disable compression by default
By default ZFS is enabling compression which is causing test
failures for us. It should the administrators choice to use
ZFS with compression turned on or off. Change mount.lustre
zfs backend to handle compression=val mount option. By default
we will turn it off.
For the test suite we can use <facet_type>_FS_MKFS_OPTS to
turn on compression for testing.
Disable lots of conf-sanity test which are broken with ZFS 2.X.
Change-Id: I752c883f6f912a340aa346e1dfb8bf7bdef24939
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57990
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Alexander Boyko [Wed, 29 Jan 2025 11:31:13 +0000 (12:31 +0100)]
LU-18218 llog: repeat declare for remote obj
llog_cat_new_log() for remote object is asynchornous,
so flag LOHA_EXIST could be removed when out operation
failed. Repeat llog_cat_new_log() at declare phase
when it is not exist.
Fixes:
8047d75a5b ("LU-18218 llog: catalog lgh_lock refactoring")
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I510711f7e2d442a1de5534f0c35ab9478c4ebe6b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57920
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Oleg Drokin [Thu, 14 Nov 2024 06:50:00 +0000 (01:50 -0500)]
LU-18445 libcfs: Remove msleep before panic for lbug
If panic on lbug is set, do not sleep before calling
the panic() as it has very undesirable side effects.
Logs are getting rotated, racing threads continue moving
and get harder to understand what they were doing and
so on.
Test-Parameters: trivial
Fixes:
9f44a48b365 ("LU-17793 libcfs: fix objtool warning in lbug_with_loc()")
Change-Id: Idd49bda78c6441a11d3ea18cb053fd9755552604
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57010
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Arshad Hussain [Sun, 22 Sep 2024 14:43:43 +0000 (10:43 -0400)]
LU-6142 mdd: Fix style issues for mdd_internal.h
This patch fixes issues reported by checkpatch
for both files lustre/mdd/mdd_internal.h
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Id4c6ea7d432517be2c6a35fef593daa63737051a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56484
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Sat, 7 Sep 2024 12:56:01 +0000 (08:56 -0400)]
LU-6142 misc: Fix style issues for lustre_import.h
This patch fixes issues reported by checkpatch
for file lustre/include/lustre_import.h
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I1a1e13ed641ac65e723dd501272f7b217c1e685c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56300
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Sat, 8 Feb 2025 11:10:01 +0000 (06:10 -0500)]
LU-17419 target: Fix KASAN slab-out-of-bounds in string_nocheck
flexi array mti_nidlist member of 'struct mgs_target_info'
is only valid when 'large_nid' is true. However, on returning
from server_lsi2mti() member mti_nidlist was unconditionally
accessed leading to slab-out-of-bounds because its rows are
not yet allocated.
This patch adds a condition for debug printing to either print
member mti_nids(v4/not large nid) or mti_nidlist for large nids
KASAN slab-out-of-bounds was triggered when running
conf-sanity/19b giving the below stack
==================================================================
[ 534.044351] BUG: KASAN: slab-out-of-bounds in string_nocheck+0x1ec/0x290
[ 534.045064] Read of size 1 at addr
ffff88818625d1c0 by task mount.lustre/5165
[ 534.045797]
[ 534.045971] CPU: 1 PID: 5165 Comm: mount.lustre Tainted: G \
W OE ---------r- - 4.18.0-348.23.1.el8_5.x86_64+debug #1
[ 534.047172] Hardware name: Red Hat KVM/RHEL-AV, \
BIOS 1.16.0-4.module_el8.9.0+3659+
9c8643f3 04/01/2014
[ 534.048120] Call Trace:
[ 534.048393] dump_stack+0x8e/0xd0
[ 534.048749] ? string_nocheck+0x1ec/0x290
[ 534.049178] print_address_description.constprop.5+0x1e/0x230
[ 534.054812] string+0xb6/0xc0
[ 534.057142] libcfs_debug_msg+0x152c/0x2290 [libcfs]
[ 534.059975] server_start_targets+0x39d8/0x73e0 [ptlrpc]
[ 534.074514] server_fill_super+0x1352/0x1cc0 [ptlrpc]
[ 534.077431] lustre_fill_super+0x779/0x9f0 [lustre]
[ 534.078519] mount_nodev+0x48/0xe0
[ 534.079441] legacy_get_tree+0x105/0x200
[ 534.080294] vfs_get_tree+0x89/0x330
[ 534.081114] do_mount+0xd40/0x1570
[ 534.083922] ksys_mount+0xb6/0xd0
[ 534.084282] __x64_sys_mount+0xba/0x150
[ 534.084704] do_syscall_64+0xa5/0x430
[ 534.085090] entry_SYSCALL_64_after_hwframe+0x6a/0xdf
----
[ 534.092557] Allocated by task 5165:
[ 534.092927] kasan_save_stack+0x19/0x80
[ 534.093321] __kasan_kmalloc.constprop.9+0xc1/0xd0
[ 534.093817] __kmalloc+0x143/0x260
[ 534.094257] server_lsi2mti+0x6d5/0x1600 [ptlrpc]
[ 534.094838] server_start_targets+0x9f5/0x73e0 [ptlrpc]
[ 534.095489] server_fill_super+0x1352/0x1cc0 [ptlrpc]
[ 534.096062] lustre_fill_super+0x779/0x9f0 [lustre]
[ 534.096584] mount_nodev+0x48/0xe0
[ 534.096946] legacy_get_tree+0x105/0x200
[ 534.097353] vfs_get_tree+0x89/0x330
[ 534.097729] do_mount+0xd40/0x1570
[ 534.098114] ksys_mount+0xb6/0xd0
[ 534.098482] __x64_sys_mount+0xba/0x150
[ 534.098885] do_syscall_64+0xa5/0x430
[ 534.099269] entry_SYSCALL_64_after_hwframe+0x6a/0x
Test-Parameters: trivial testlist=conf-sanity
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I82eb33abc70cfe918711835b019af8e07c46272d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58018
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Tue, 4 Feb 2025 18:48:41 +0000 (10:48 -0800)]
LU-18692 build: add -f option to libtoolize
If libtool and aclocal.m4 were generated by different
versions of build tools, then building Lustre codes
will hit libtool version mismatch error.
This patch adds -f option to libtoolize in autogen.sh
to replace existing libtool files by default.
Change-Id: I8f4786eccfdf38b3554393d7f9d6f52613a3a3f5
Test-Parameters: trivial
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57965
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Thu, 6 Feb 2025 13:09:14 +0000 (16:09 +0300)]
LU-17763 tests: use urandom in sanity/66
as zfs-2.2.6 compresses data by default and this breaks the test
using /dev/zero as a source.
Test-Parameters: trivial
Test-Parameters: fstype=zfs env=ONLY=66 testlist=sanity
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I6853c693e7cb560ae737025507e5377da82c787b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57987
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Mon, 3 Feb 2025 15:16:56 +0000 (10:16 -0500)]
LU-12511 lnet: rework lnd module loading
The kernel IS_MODULE() only works in the positive, ie no ifndef.
So rework the LND module loading code to handle if modules are
enabled.
Test-Parameters: trivial testlist=sanity-lnet
Change-Id: Ie97b00b6b5c21d6e20acf72f796707630369251e
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57946
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Emoly Liu [Mon, 20 Jan 2025 03:17:58 +0000 (11:17 +0800)]
LU-18114 tests: fix the version checks
Fix the version checks for the following patches:
Fixes:
fec78d4568 ("LU-18114 lctl: split "lctl net_delay_*" group into subcommands")
Fixes:
79a76faa48 ("LU-18114 lctl: split "lctl net_drop_*" group into subcommands")
Fixes:
77e98c10b3 ("LU-18114 changelog: split "lctl changelog_*" group into subcommands
Fixes:
166c48c1c3 ("LU-18114 snapshot: split "lctl snapshot_*" group into subcommands")
Fixes:
441adeced3 ("LU-18114 barrier: split "lctl barrier_*" group into subcommands")
Fixes:
89b0bcdab5 ("LU-18114 lfsck: split "lctl lfsck_*" group into subcommands")
Test-Parameters: trivial testlist=sanity-lnet serverversion=2.16
Test-Parameters: trivial testlist=sanity env=ONLY="60i 801c" serverversion=2.16
Test-Parameters: trivial fstype=zfs testlist=sanity-lsnapshot serverversion=2.16
Test-Parameters: trivial testlist=sanity-lfsck env=ONLY=12a serverversion=2.16
Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: I16786e31113a4bd6c8e2e334afa10a795d0b03d9
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57824
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frederick Dilger <fdilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Andreas Dilger [Fri, 10 Jan 2025 00:16:27 +0000 (17:16 -0700)]
LU-12572 tests: wait longer to clean up files
Occasionally if a VM test node is busy after creating many files,
then it may take slightly longer to clean up at subtest completion.
Wait longer instead of failing the subtest and needing a full rerun.
This affects subtests like sanity-quota/8, sanity-pfl/20b, etc.
Test-Parameters: trivial
Test-Parameters: testlist=sanity-quota env=ONLY=8,ONLY_MINUTES=30
Test-Parameters: testlist=sanity-pfl env=ONLY=20b,ONLY_MINUTES=30
Fixes:
c44b2bea1b ("LU-15179 tests: add trap cleanup_quota_test")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I0c48a0e45a2423bb79ad886e5246e6a8ff50041e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57704
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Emoly Liu <emoly@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Sun, 15 Dec 2024 05:28:12 +0000 (08:28 +0300)]
LU-18558 scrub: don't release os_ls_fids too early
a running iterator can use os_ls_fids (in osd_iit_iget()) even with
the scrubber thread completed which should not release os_ls_fids
too early.
Test-Parameters: testlist=sanity-scrub,sanity-lfsck
Test-Parameters: testlist=sanity-scrub,sanity-lfsck
Test-Parameters: testlist=sanity-scrub,sanity-lfsck
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I3c5739f3b475f368235344716cd1b596e7f11bd8
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57434
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Wed, 5 Feb 2025 15:13:02 +0000 (10:13 -0500)]
LU-9859 libcfs: rework special libcfs string handling
The header libcfs_string.h contains NID string specific items so
move them to the LNet header lib-types.h. Only functions for
string to or from mask handling is left in libcfs_string.c. We
can merged that into debug.c where it is first used.
Test-Parameters: trivial
Change-Id: I79c56594af065dfd08b8205a05326fa0ebf36d55
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57944
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Sat, 21 Sep 2024 06:27:35 +0000 (13:27 +0700)]
LU-18251 build: annotate lustre.spec
Consolidate duplicate branches and use some comments
to clarify nested if/endif pairs.
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Ic30b8c0c617c65ffc9096f3cb1e4338c104cf0b2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56448
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Caleb Carlson <caleb.carlson@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Timothy Day [Mon, 20 Jan 2025 21:07:13 +0000 (16:07 -0500)]
LU-16707 scripts: ignore some files in license-status
Many files in-tree don't need a SPDX tag - so lets
ignore them in license-status.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I31a0ae474fce78885e0391544500c2339dae66d7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57833
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>
James Simmons [Fri, 31 Jan 2025 04:42:32 +0000 (23:42 -0500)]
LU-17651 lnet: Fix KASAN use-after-free in lnet_net_remove_cpts
Allocation of net (struct lnet_net) is done under lnet_dyn_add_ni().
When adding and starting net there is a check if the net is unique
or not. If it is not unique (it is a duplicate or already added before)
the net cleanup is done under lnet_startup_lndnet() and -EEXISTS is
return. This breaks the order of allocation. The allocation order
is struct lnet_ni is part of struct lnet_net. Therefore lnet_net
cannot be deallocated before lnet_ni.
This patch removes lnet_net_free() call only when the net is found
to be duplicate. The cleanup of net (lnet_net_free()) is called
from lnet_dyn_add_ni() where it is actually allocated. This is
locally tested and no KASAN error was reported.
Lustre: DEBUG MARKER: lnetctl net add --net tcp --if ens2
LNet: Added LNI 192.168.205.1@tcp [8/256/0/180]
LNet: Accept secure, port 988
Lustre: DEBUG MARKER: lnetctl net add --net tcp --if ens2
==================================================================
BUG: KASAN: use-after-free in lnet_net_remove_cpts.constprop.0+0x774/0x7f0 [lnet]
Read of size 8 at addr
ffff888005be7a50 by task lnetctl/79304
CPU: 1 PID: 79304 Comm: lnetctl Kdump: loaded Tainted: G W OE ------- --- 5.14.0rocky93-debug #4
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-1.fc39 04/01/2014
Call Trace:
<TASK>
? lnet_net_remove_cpts.constprop.0+0x774/0x7f0 [lnet]
dump_stack_lvl+0x57/0x7d
print_address_description.constprop.0+0x1f/0x1e0
? lnet_net_remove_cpts.constprop.0+0x774/0x7f0 [lnet]
print_report.cold+0x55/0x240
kasan_report+0xc8/0x200
? lnet_net_remove_cpts.constprop.0+0x774/0x7f0 [lnet]
lnet_net_remove_cpts.constprop.0+0x774/0x7f0 [lnet]
lnet_ni_free+0x6a/0x620 [lnet]
lnet_dyn_add_ni+0x29d/0x370 [lnet]
Test-Parameters: trivial testlist=sanity-lnet
Change-Id: I2c751a1bfeb583b86d9b68241607cf90c69f4277
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57861
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Oleg Drokin [Thu, 6 Feb 2025 01:33:48 +0000 (20:33 -0500)]
New tag 2.16.52
Change-Id: I570cf3ba8ca39dd583cca7fe152be5532b9d6de5
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Thu, 23 Jan 2025 19:58:14 +0000 (11:58 -0800)]
LU-18665 kernel: update RHEL 9.5 [5.14.0-503.22.1.el9_5]
Update RHEL 9.5 kernel to 5.14.0-503.22.1.el9_5.
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.4 testlist=sanity
Test-Parameters: trivial fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.4 serverdistro=el9.5 testlist=sanity
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-1
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-2
Test-Parameters: optional fstype=ldiskfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-part-3
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-1
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-2
Test-Parameters: optional fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-3
Change-Id: I04054f65026b59c75d0e51e13c8a2fb6f8cd4fa0
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57875
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Mon, 27 Jan 2025 10:28:24 +0000 (17:28 +0700)]
LU-18678 build: dkms in-kernel check kernel source
From dkms the default $kernel_source_dir will be
@MODDIR@/$kernelver/build
unless otherwise specified with the --kernelsourcedir option.
Unfortunately the check for kernel headers will fail as only
the generated headers are available from the 'build' symbolic
link on SUSE.
Probe for the 'source' symbolic link if it points to a directory
with 'include/linux' proceed to prefer it when checking for
in-kernel rdma support.
HPE-bug-id: LUS-12710
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I645acfa9f0cd6308fd5c234dc679c63f94172164
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57905
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Caleb Carlson <caleb.carlson@hpe.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Frederick Dilger [Fri, 24 Jan 2025 23:42:46 +0000 (16:42 -0700)]
LU-4315 docs: updating lfs-[m-q] mage 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:
- lfs-mkdir.1
- lfs-path2fid.1
- lfs-pcc.1
- lfs-pcc-attach.1
- lfs-pcc-detach.1
- lfs-pcc-delete.1
- lfs-pcc-state.1
- lfs-project.1
Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: Iefaad081f9a4f6627f0c7ac4e9e59c4bc099fa93
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57890
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>
Li Dongyang [Thu, 23 Jan 2025 00:28:36 +0000 (11:28 +1100)]
LU-18387 kernel: add missing patch for RHEL 9.5
Add virtio_scsi-silence-page-allocation-failure.patch
to 5.14-rhel9.5.series
Change-Id: I40d5b4b6756df26873842402e495db06bf96a995
Test-Parameters: trivial serverdistro=el9.5
Fixes:
56bb6438aa ("LU-18387 kernel: RHEL 9.5 server support")
Signed-off-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57870
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Wed, 22 Jan 2025 20:53:52 +0000 (15:53 -0500)]
LU-8066 gss: migrate rest of proc files to debugfs
For GSS only part of the proc tree was ported to debugfs. Since
GSS is a root only thing we can safely move the reset to debugfs.
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
Change-Id: Ic76bd920ed54c5535d71f36ca8e75dd1904394f3
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57864
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Sebastien Buisson [Tue, 14 Jan 2025 16:20:25 +0000 (17:20 +0100)]
LU-18633 gss: carry out creds negotiation as user
Instead of switching back to root id right after we did credentials
preparation, just do the whole credentials negotiation as the user.
We just need root privileges to proceed to ioctls that exchange data
with kernel space.
sanity-krb5 test_11 is added to exercise this.
Fixes:
6791fbc530 ("LU-18497 gss: carry out creds prepare as user")
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
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I93dd367abadca077e61c1910638337a2d80996c8
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57752
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Thu, 19 Dec 2024 01:58:18 +0000 (18:58 -0700)]
LU-18579 utils: lfs_migrate should inherit OST pool
Fix the lfs_migrate script so that it inherits the OST pool name
from the source file, if it was specified.
Fix the parsing of the existing file layout so that it can properly
handle various YAML formats.
Test-Parameters: trivial
Fixes:
109b5499d3 ("LU-15565 utils: updated lfs getstripe yaml format")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: If06d3a682e3807e3856f1f5d2cbbecf31c7fa361
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57519
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Thu, 23 Jan 2025 05:07:26 +0000 (22:07 -0700)]
LU-18646 tests: use /dev/urandom to consume space
It appears newer ZFS is using data compression by default, so reading
from /dev/zero results in files not consuming the expected amount of
space. Instead, read from /dev/urandom for ZFS to write files in
sanity-quota and ost-pools to ensure they fill the OSTs as expected.
Minor script style cleanups for affected tests.
Test-Parameters: trivial testlist=sanity-quota,ost-pools fstype=zfs
Test-Parameters: testlist=sanity-quota,ost-pools fstype=ldiskfs
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ia2340da6e4c6d00123078545fde135a89c2540e5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57871
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Frederick Dilger [Mon, 21 Oct 2024 07:53:57 +0000 (01:53 -0600)]
LU-18386 utils: add lfs quota --delimiter option
Add a new --delimiter option to the lfs quota command, allowing
users to specify a custom delimiter for the output. This enhances
the flexibility of the quota display, making it easier to parse
the output for scripts and other automated tools.
The default delimiter is a space.
$ lfs quota --delimiter="," /mnt/lustre
Disk quotas for usr root (uid 0):
Filesystem, kbytes, bquota, blimit, bgrace, ..., igrace
/mnt/lustre, 4360, 0, 0, -, ..., -
Disk quotas for grp root (gid 0):
Filesystem, kbytes, bquota, blimit, bgrace, ..., igrace
/mnt/lustre, 4360, 0, 0, -, ..., -
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I58faffeeeecf07ae8630d3f518306c5dcec39867
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56739
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Etienne AUJAMES <eaujames@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Frederick Dilger [Thu, 31 Oct 2024 20:30:00 +0000 (14:30 -0600)]
LU-18079 tests: updating getquota() in sanity-quota
Updating getquota() in sanity-quota to use the new column parsing
options rather than parsing the entire output based on argument
offset which could break if the column order or argument number
was changed.
Updated lfs-quota.1 man page to include long options.
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I922a9c0c869ba18029d682220a38b2e0e0cdd91d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56231
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>
Frederick Dilger [Mon, 2 Sep 2024 21:31:20 +0000 (15:31 -0600)]
LU-18079 utils: argument parse opts for lfs quota
Adding new options to only get certain arguments from 'lfs quota'.
This works much like 'lfs getstripe'. Each option will show their
respected argument and can be combined together to show multiple
arguments. They will be shown in the same order that they appear
in the full table for 'lfs quota'.
Added:
--filesystem|--mount-point
--blocks|--space|--busage
--block-softlimit|--bsoftlimit
--block-hardlimit|--bhardlimit
--block-grace|--bgrace|--btime
--inodes|--iusage
--inode-softlimit|--isoftlimit
--inode-hardlimit|--ihardlimit
--inode-grace|--igrace|--itime
each matching a column of the table.
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: Iffb9be9a55368a3faad3a8e74ee2f2a6b1ec7301
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55894
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Sergey Cheremencev <scherementsev@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Timothy Day [Tue, 14 Jan 2025 04:45:18 +0000 (23:45 -0500)]
LU-17848 osd: move fid_is_fs_root() to lustre_fid.h
Move the duplicate fid_is_fs_root() functions to the
lustre_fid.h header.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I43d914dc28cf653deb0fa48228877c9dae503383
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57743
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Serguei Smirnov [Fri, 17 Jan 2025 02:10:28 +0000 (18:10 -0800)]
LU-18644 socklnd: make link state detection namespace-aware
Check the network namespace of the device in the event against
the namespace associated with the ni and ignore events from
non-matching namespaces
Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Change-Id: I589399c0f2f85e5abd50d55079b79c44e30b4401
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57808
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: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Adam Peace <adam.peace@microsoft.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Timothy Day [Thu, 16 Jan 2025 02:32:48 +0000 (21:32 -0500)]
LU-18641 mdt: remove trivial locking wrapper
These wrappers around mot_dom_sem haven't changed in 10
years. It's unlikely they will grow to be more than trivial
wrappers. Remove them.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I594741404cfc820552d917a54f10e89f331e3a71
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57798
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Max Wang <wamax@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Aurelien Degremont [Tue, 14 Jan 2025 10:44:04 +0000 (11:44 +0100)]
LU-18632 debian: add uapi headers to dkms module package
Kernel-related header files (uapi) are only packaged in 'lustre-client-modules'
package, and not with dkms. Ensure they are packages for both type of packages.
We need to provide them alongside the kernel module packages to avoid future
conflicts if Lustre is available through the distro linux kernel.
Test-Parameters: trivial
Change-Id: Iab154cf46c121fa6cc8d559ba6ad63ffe19f52a5
Signed-off-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57749
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Max Wang [Fri, 10 Jan 2025 23:39:09 +0000 (23:39 +0000)]
LU-18626 mdd: allow chgrp with read-only permissions
In patch LU-11303, chgrp was modified to be asynchronous
and updates the quotas. However, this resulted in chgrp
calls failing for file owners with read-only permissions.
This commit relaxes the permission requirements for quota updates
for chgrp calls to allow read-only permissions.
Fixes:
83f5544d8518 ("LU-11303 quota: enforce block quota for chgrp")
Test-Parameters: testlist=pjdfstest
Signed-off-by: Max Wang <wamax@amazon.com>
Change-Id: I6c4b73d1d48cb2ffc4866ab2e03a86a6c723e960
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57717
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Fri, 10 Jan 2025 01:49:22 +0000 (17:49 -0800)]
LU-18604 kernel: update SLES15 SP6 [6.4.0-150600.23.30.1]
Update SLES15 SP6 kernel to 6.4.0-150600.23.30.1 for Lustre client.
Test-Parameters: trivial mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testlist=sanity
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-1
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-2
Test-Parameters: optional mdtcount=4 mdscount=2 \
clientdistro=sles15sp6 testgroup=full-dne-part-3
Change-Id: Id198ceca160ca4e2e2aba5788ff4bb073501ae73
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57707
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Deiter <adeiter@ddn.com>
Reviewed-by: Yang Sheng <ys@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Sebastien Buisson [Thu, 9 Jan 2025 17:38:44 +0000 (18:38 +0100)]
LU-18623 gss: rework memory allocation for wrap
Make sure buffers used in gss code to carry out
encryption/decryption are correctly allocated.
Test-Parameters: trivial
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=el9.5 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=el9.2 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=el8.10 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=el8.8 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=ubuntu2204 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=x86_64 clientdistro=ubuntu2404 serverarch=x86_64 serverdistro=el9.4
Test-Parameters: kerberos=true testlist=sanity-krb5 clientarch=aarch64 clientdistro=el9.3 serverarch=x86_64 serverdistro=el9.4
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ia60a5171d34dad2866fd971a8e838b92486d44df
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57701
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Timothy Day [Tue, 7 Jan 2025 19:02:09 +0000 (19:02 +0000)]
LU-18622 build: remove build/, save kconfig results
Remove that last few files from build/ and save the kernel
configuration test results. This should allow developers to
more easily debug kernel configuration failures.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I8c81123835c6a4804e846ef2ea61d8bf025f4fda
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57699
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>
Vitaliy Kuznetsov [Mon, 2 Dec 2024 15:13:20 +0000 (16:13 +0100)]
LU-18503 utils: keepalive message from ofd_access_log_reader
Checks ofd_access_log_reader for keepalive message feature
availability. Start ofd_access_log_reader with keepalive
message option if it is available.
Added tests for ofd_access_log_reader to test keepalive
message feature. Fixed a bug when trace file is opened.
Moved FATAL, ERROR, DEBUG macros to include and used FATAL
macro where possible
Signed-off-by: Alexandre Ioffe <aioffe@ddn.com>
Signed-off-by: Vitaliy Kuznetsov <vkuznetsov@ddn.com>
Change-Id: I0f218e2394c9d0ab6cd425860ba79956a10cbd58
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57691
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>
Frederick Dilger [Mon, 6 Jan 2025 20:54:58 +0000 (13:54 -0700)]
LU-17501 libcfs: fix ncpt check for cpt patterns
Coverty Scan found the following:
*** CID 454272: Control flow issues (DEADCODE)
/lnet/lnet/lib-cpt.c: 1114 in cfs_cpt_table_create_pattern()
1108 } else if (!ncpt) { /* scan for bracket at start of
partition */
1109 bracket = str;
1110 while ((bracket = strchr(bracket, '['))) {
1111 bracket++;
1112 ncpt++;
1113 }
CID 454272: Control flow issues (DEADCODE)
Execution cannot reach the expression "ncpt > num_node_state(N
_ONLINE)" inside this statement: "if ((!ncpt && !exclude) || ...".
1114 if ((!ncpt && !exclude) ||
1115 (node && ncpt > num_online_nodes()) ||
1116 (!node && ncpt > num_online_cpus())) {
1117 CERROR("Invalid pattern '%s', or too many
partitions %dn",
1118 pattern_dup, ncpt);
1119 rc = -EINVAL;
The issue was that these checks were inside of the "else if (!ncpt)"
conditional block when they should have been outside.
CoverityID: 454272 ("Control flow issues")
Fixes:
111f5836ec ("LU-17501 libcfs: allow CPT exclude list for cores")
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I4befcbdc5d8e63a3783ba09416a61a7c80135635
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57659
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sebastien Buisson [Mon, 6 Jan 2025 16:12:56 +0000 (17:12 +0100)]
LU-18591 sec: remove support for idmap.conf
Patch "LU-16630 sec: improve Kerberos cross-realm trust remapping"
added a warning message that idmap.conf is deprecated.
With this patch, we go one step further and remove support for
idmap.conf. This means l_idmap is also removed.
Cross-realm trust remapping should be carried out via a mechanism
provided by Kerberos, such as auth_to_local or equivalent.
Test-Parameters: trivial
Test-Parameters: kerberos=true testlist=sanity-krb5
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I0ab2f3a12d47f55756094043b0ec2b19d8634de1
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57651
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Aurelien Degremont <adegremont@nvidia.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Lai Siyao [Fri, 3 Jan 2025 07:41:47 +0000 (02:41 -0500)]
LU-18611 lfsck: stop returns after thread stopped
'lctl lfsck_stop' should wait for lfsck thread stopped before return,
and 'lctl lfsck_stop -A' should notify other nodes to stop lfsck even
if master node has stopped. This can guarantee subsequent lfsck_start
won't fail on strange errors.
Remove li_stopping flag, which doesn't make much sense.
Change wait_event_idle() to wait_event_interruptible() in
lfsck_start/stop so that the commands can be killed if it's stuck.
Update sanity-lfsck 44 to reflect above change.
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I8eeb35cf2fa8a72a19f11378c4c7fd0e5a1b5961
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57639
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Hongchao Zhang <hongchao@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Tue, 31 Dec 2024 06:10:16 +0000 (09:10 +0300)]
LU-18605 tests: give time to start in sanityn/31s
give tail command some time to start otherwise it can race with
mv command few lines ago and if mv wins then the test fail with:
sanityn.sh: line 1218: cd: /mnt/lustre/d31s.sanityn: No such file
tail: cannot open 'f31s.sanityn' for reading: No such file
tail: no files remaining
sanityn test_31s: @@@@@@ FAIL: fail to stop 21777
Test-Parameters: trivial
Fixes:
32582842ca ("LU-17583 llite: getattr/open should not revalidate dentry")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ibff49cf12bebc4799eb0eefe2a4e45bfa459f660
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57606
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Etienne AUJAMES <eaujames@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Alex Zhuravlev [Tue, 24 Dec 2024 08:15:47 +0000 (11:15 +0300)]
LU-10375 ptlrpc: fix error handling after tx creation
we don't need to stop a transaction if it wasn't created
(i.e. if dt_trans_create() returned an error).
Fixes:
928714ddda ("LU-5092 nodemap: save id maps to targets in new index file")
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I04a707ab068ff1278c891cd1c7646ec37cac0055
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57583
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>