Whamcloud - gitweb
Timothy Day [Wed, 16 Apr 2025 04:31:46 +0000 (04:31 +0000)]
LU-18162 llite: consolidate cl_stack_fini()/lu_stack_fini()
lu_stack_fini() is only called by cl_stack_fini(), which is
simply a thin wrapper around the former. Consolidate these
two functions by deleting cl_stack_fini().
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I42e9b5310c50dc2362fc5ef83b2a10bed09becea
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58810
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: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Timothy Day [Tue, 15 Apr 2025 17:22:23 +0000 (17:22 +0000)]
LU-18162 kunit: convert LDLM extent test to LU device
Convert LDLM extent test to use LU device init/fini rather
than the legacy OBD API.
Test-Parameters: trivial env=SLOW=yes env=ONLY=842 testlist=sanity
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Id043fc2e768b2447cee582be4dc0d5032ec57882
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58804
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>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Jian Yu [Fri, 2 May 2025 04:18:18 +0000 (00:18 -0400)]
LU-18887 build: Update ZFS version to 2.3.1
Update ZFS version to 2.3.1. The changes are listed in:
https://github.com/openzfs/zfs/releases/tag/zfs-2.3.1
Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el8.10 serverdistro=el8.10 testlist=sanity
Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testlist=sanity
Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-1
Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-2
Test-Parameters: trivial fstype=zfs mdtcount=4 mdscount=2 \
clientdistro=el9.5 serverdistro=el9.5 testgroup=full-dne-zfs-part-3
Change-Id: I2a5fc13210b2520009bf3fe21f8b559ac140318a
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58648
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>
Timothy Day [Sat, 29 Mar 2025 23:26:03 +0000 (19:26 -0400)]
LU-18687 doc: move man pages to Documentation [3]
Consolidate all of the man pages into the top
level Documentation directory.
Move all of the Lustre man pages (from 3) to Docmentation/.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I0cd7bda703cfd4cae1f18261c2c617fae188a2e2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58588
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Qian Yingjin [Mon, 17 Mar 2025 15:41:17 +0000 (23:41 +0800)]
LU-18813 osd-wbcfs: MemFS-based OSD with writeback support
Implement a memory filesystem based OSD with writeback support for
Lustre.
It borrows lots of design from memory-based file systems such as
tmpfs/ramfs. The data is first written into the memory-based file
system (called MemFS for short). And then, the data can be flushed
to the persistent storage in a delayed write-back manner.
This patch implemented the basic functionality to store data in
MemFS. It can reuse lots of VFS codes in Linux kernel such as:
- Page caching for data;
- dcache for dentry management and lookup;
- icache for inode management and lookup;
- Writeback mechanism in Linux kernel
Test-Parameters: testlist=sanity fstype=wbcfs mdscount=1 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs mdscount=1 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs mdscount=4 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs mdscount=4 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs combinedmdsmgs=false standalonemgs=true mdscount=1 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs combinedmdsmgs=false standalonemgs=true mdscount=1 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs combinedmdsmgs=false standalonemgs=true mdscount=4 mdtcount=1 osscount=4 ostcount=1
Test-Parameters: testlist=sanity fstype=wbcfs combinedmdsmgs=false standalonemgs=true mdscount=4 mdtcount=1 osscount=4 ostcount=1
Signed-off-by: Yingjin Qian <qian@ddn.com>
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ia07c1d95b7ad3f7f5e817a8de69d0a4ab6995ffa
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58439
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Ake Sandgren [Wed, 29 Jan 2025 12:02:43 +0000 (13:02 +0100)]
LU-18684 config: don't run kernel checks with modules disabled
Running:
configure --enable-client --disable-server --disable-modules
runs kernel checks. They should only ever be run with modules enabled.
Fixes:
a13fc434c57f ("LU-17662 osd-zfs: Support for ZFS 2.2.3")
Signed-off-by: Ake Sandgren <ake.sandgren@hpc2n.umu.se>
Change-Id: I97277474e1db554c23bf2fa3f80ac3a5b745bded
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57921
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Frederick Dilger [Fri, 24 Jan 2025 21:25:17 +0000 (14:25 -0700)]
LU-18660 utils: add long opts for 'lfs project'
'lfs project' is missing long options for all of its commands.
-0|--print0
-c|--check
-C|--clear
-d|--directory
-k|--keep
-p|--proj-inherit
-r|--recursive
-s|--set-inherit|--inherit
Test-Parameters: trivial
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: Ib09e120c100c58c2443e3c72d5a921f82282e080
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57919
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
James Simmons [Mon, 7 Apr 2025 13:33:22 +0000 (09:33 -0400)]
LU-18175 lustre: back port shrinker debugfs support.
The Linux kernel has developed a shrinker API to help deal
with a system that under memory pressure. Lustre uses this
shrinker API for several subsystems. While it helps this
API lacked the ability to manually trigger a cleanup. Now
with newer kernels a debugfs interface has been developed
just for this purpose. Back port this interface so Lustre
adminstrators can use this new feature to lighten the
load related to Lustre.
The following link explains this new debugfs interface:
https://lwn.net/Articles/896274
and how to use it:
https://docs.kernel.org/admin-guide/mm/shrinker_debugfs.html
For older kernels since Lustre shrinkers are not memcg aware
we remove that code since older kernels lack newer memcg
features. Sadly memcg functionality is not exported so
even for newer kernels we can't support it.
Note this is the basic functionality present in newer
kernels. A follow on patch will provide support in our
tools for this.
Test-Parameter: trivial
Signed-off-by: James Simmons <jsimmons@infradead.org>
Change-Id: I70aeb4af15c46036e51e362a69602babfd5ea05f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56174
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: Brian Atkinson <batkinson@lanl.gov>
Patrick Farrell [Sun, 25 Feb 2024 18:05:52 +0000 (13:05 -0500)]
LU-13814 osc: add osc_dio_submit
This function is a coyp of osc_io_submit, specialized to
handle only dio pages. Converting this to handle batch
submission will come later.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Icb6923d22502bbb72af7e8b24b4c9afaba49380b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52136
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Patrick Farrell [Sun, 25 Feb 2024 18:05:27 +0000 (13:05 -0500)]
LU-13814 clio: convert lov submit to cl_dio_pages
This patch converts lov layer of IO submit to use the
cl_dio_pages array. This simplifies that code since the
page array is all on one stripe and can only succeed or
fail completely. (No partial successes.)
This pushes the array-to-queue conversion down to the OSC
layer.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ic414218be2be07bb7d74b150faebf5f404760d80
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52113
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Oleg Drokin [Sun, 4 May 2025 20:19:30 +0000 (16:19 -0400)]
LU-18959 misc: Mark symbols static to prevent namespace pollution
Sparse highlighted a number of symbols as not used outside
the file they are defined in. And a couple where they were used,
but the proper header was not included, fix these issues:
libcfs/libcfs/tracefile.c:37 sparse warning: symbol 'cfs_trace_data' was not declared. Should it be static?
libcfs/libcfs/tracefile.c:49 sparse warning: symbol 'tctl_task' was not declared. Should it be static?
lnet/lnet/lnet_rdma.c:24 sparse warning: symbol 'nvfs_shutdown' was not declared. Should it be static?
lnet/lnet/lnet_rdma.c:25 sparse warning: symbol 'nvfs_ops' was not declared. Should it be static?
lnet/lnet/lnet_rdma.c:26 sparse warning: symbol 'nvfs_n_ops' was not declared. Should it be static?
lustre/ldlm/ldlm_lockd.c:44 sparse warning: symbol 'ldlm_kobj' was not declared. Should it be static?
lustre/lfsck/lfsck_namespace.c:6916 sparse warning: symbol 'lfsck_namespace_assistant_ops' was not declared. Should it be static?
lustre/lmv/lproc_lmv.c:409 sparse warning: symbol 'lprocfs_lmv_obd_vars' was not declared. Should it be static?
lustre/lod/lod_dev.c:160 sparse warning: symbol 'lod_txn_callback_kmem' was not declared. Should it be static?
lustre/mdc/lproc_mdc.c:572 sparse warning: symbol 'ldebugfs_mdc_obd_vars' was not declared. Should it be static?
lustre/mdc/mdc_batch.c:189 sparse warning: symbol 'mdc_update_interpreters' was not declared. Should it be static?
lustre/mdc/mdc_dev.c:1672 sparse warning: symbol 'mdc_lu_ops' was not declared. Should it be static?
lustre/mdt/mdt_mds.c:63 sparse warning: symbol 'mds_max_io_threads' was not declared. Should it be static?
lustre/mgc/lproc_mgc.c:39 sparse warning: symbol 'ldebugfs_mgc_obd_vars' was not declared. Should it be static?
lustre/obdclass/hash.c:98 sparse warning: symbol 'cfs_rehash_wq' was not declared. Should it be static?
lustre/obdclass/jobid.c:33 sparse warning: symbol 'jobid_hash_lock' was not declared. Should it be static?
lustre/obdclass/kernelcomm.c:273 sparse warning: symbol 'stats_params' was not declared. Should it be static?
lustre/obdclass/lprocfs_status.c:2610 sparse warning: symbol 'cksum_name' was not declared. Should it be static?
lustre/obdclass/lprocfs_status_server.c:540 sparse warning: symbol 'ldebugfs_obd_exports_vars' was not declared. Should it be static?
lustre/obdclass/lu_object.c:1883 sparse warning: symbol 'lu_env_rhash' was not declared. Should it be static?
lustre/obdclass/scrub.c:464 sparse warning: symbol 'scrub_status_names' was not declared. Should it be static?
lustre/obdclass/scrub.c:475 sparse warning: symbol 'scrub_flags_names' was not declared. Should it be static?
lustre/obdclass/scrub.c:483 sparse warning: symbol 'scrub_param_names' was not declared. Should it be static?
lustre/ofd/ofd_oss.c:28 sparse warning: symbol 'oss_max_threads' was not declared. Should it be static?
lustre/osc/lproc_osc.c:664 sparse warning: symbol 'ldebugfs_osc_obd_vars' was not declared. Should it be static?
lustre/osd-ldiskfs/osd_handler.c:81 sparse warning: symbol 'ldiskfs_flush_descriptors_seconds' was not declared. Should it be static?
lustre/osd-ldiskfs/osd_handler.c:84 sparse warning: symbol 'ldiskfs_delayed_unlink_blocks' was not declared. Should it be static?
lustre/osd-ldiskfs/osd_handler.c:90 sparse warning: symbol 'osd_itea_cachep' was not declared. Should it be static?
lustre/osd-ldiskfs/osd_lproc.c:810 sparse warning: symbol 'ldebugfs_osd_obd_vars' was not declared. Should it be static?
lustre/osd-zfs/osd_lproc.c:384 sparse warning: symbol 'ldebugfs_osd_obd_vars' was not declared. Should it be static?
lustre/ptlrpc/nodemap_lproc.c:23 sparse warning: symbol 'nodemap_root' was not declared. Should it be static?
lustre/ptlrpc/nrs_tbf.c:2284 sparse warning: symbol 'nrs_tbf_opcode_ops' was not declared. Should it be static?
lustre/ptlrpc/nrs_tbf.c:2598 sparse warning: symbol 'nrs_tbf_uid_ops' was not declared. Should it be static?
lustre/ptlrpc/nrs_tbf.c:2611 sparse warning: symbol 'nrs_tbf_gid_ops' was not declared. Should it be static?
lustre/quota/lquota_lib.c:23 sparse warning: symbol 'lquota_caches' was not declared. Should it be static?
lustre/quota/qsd_lib.c:39 sparse warning: symbol 'qsd_caches' was not declared. Should it be static?
lustre/target/tgt_grant.c:61 sparse warning: symbol 'lbug_on_grant_miscount' was not declared. Should it be static?
lustre/target/tgt_handler.c:1576 sparse warning: symbol 'tgt_lfsck_in_notify' was not declared. Should it be static?
lustre/target/tgt_main.c:39 sparse warning: symbol 'sync_lock_cancel_show' was not declared. Should it be static?
lustre/target/tgt_main.c:72 sparse warning: symbol 'sync_lock_cancel_store' was not declared. Should it be static?
Change-Id: Ibdf617161fe481ddd6a2905e60890cb23ed59733
Test-Parameters: trivial
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/59081
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: Timothy Day <timday@amazon.com>
Oleg Drokin [Sun, 4 May 2025 19:40:03 +0000 (15:40 -0400)]
LU-18959 osd-ldiskfs: Remove unused ldiskfs_flush_descriptors_seconds
ldiskfs_flush_descriptors_seconds is not used anywhere.
Change-Id: I8941cc18dcaf7b4f87120a5f299616741e639900
Fixes:
6a3d7634a1fa ("LU-18463 ptlrpc: removing cfs_flush_fput idle")
Test-Parameters: trivial
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/59080
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Oleg Drokin [Mon, 28 Apr 2025 06:10:13 +0000 (02:10 -0400)]
LU-18956 mgc: Remove llog_config_lock
This was alredy previously removed as nothing is using it,
but accidentally got resurrected by LU-11185 patch.
Remove it again.
Change-Id: Ie68c54d3401473c0ddb095c49ce753a7b94063ca
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Test-Parameters: trivial
Fixes:
0ad54d5977736 ("LU-11185 mgc: config lock leak")
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58992
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Oleg Drokin [Tue, 29 Apr 2025 04:05:27 +0000 (00:05 -0400)]
LU-18961 mdt: add safety checks in MDT_BOOL_RW_ATTR
MDT_BOOL_RW_ATTR macro creates a store and show methods
for a boolean sysfs entry, but in process they use result
of mdt_dev() call without checking, but internally
it uses container_of_safe that could return NULL or
ERR_PTR, so we need to check the return value.
While we can probably pass in the decoded PTR_ERR,
since NULL is also an option, simplier to just return
-ENOENT which makes sense on it's own.
Change-Id: Ibbc62cf74dc5d8b7e335fc42ff5149bd2ae174c6
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Test-Parameters: trivial
Fixes:
d71a24005b753 ("LU-17144 mdt: set dmv by setxattr")
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/59009
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>
Emoly Liu [Sun, 27 Apr 2025 12:31:21 +0000 (20:31 +0800)]
LU-18957 tests: remove obsolete osc.*.contention_seconds
Remove the obsolete parameter osc.*.contention_seconds from
sanity.sh and sanityn.sh.
Test-Parameters: trivial
Fixes:
5ad00e36eca1 ("LU-14838 osc: Remove client contention support")
Signed-off-by: Emoly Liu <emoly@whamcloud.com>
Change-Id: Ie62157adfe7588fa66f9e82d97affee8ad2d4436
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58998
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>
Patrick Farrell [Fri, 25 Apr 2025 22:12:13 +0000 (18:12 -0400)]
LU-10765 hsm: fix source_fd type in hsm_copyaction_private
The source_fd field in struct hsm_copyaction_private was defined as
__u32 (unsigned), but was being used with -1 to indicate an invalid
file descriptor. This mismatch caused the error handling code to
incorrectly check if source_fd < 0, which is impossible for an
unsigned value, potentially leading to file descriptor leaks.
Change the type of source_fd from __u32 to __s32 to match how it's
used and to be consistent with data_fd which is already __s32.
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I41d74642d9906075ec7eda670e4c390d55fed297
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58980
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sebastien Buisson [Fri, 25 Apr 2025 13:14:14 +0000 (15:14 +0200)]
LU-18953 tests: verify identity_upcall is executable
In test-framework, verify that the value of the L_GETIDENTITY
variable points to an executable. Otherwise, the identity_upcall
would fail.
Test-Parameters: trivial testlist=conf-sanity
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I5839c157c3678caa81908f950d3cc2cd2fc59c44
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58961
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Wed, 23 Apr 2025 21:41:15 +0000 (15:41 -0600)]
LU-17361 tests: reduce lustre-rsync-test/2a+b workload
The lustre-rsync-test test_2a and test_2b are copying the dbench
output to the local $TMP filesystem twice and can run into memory
allocation issues on VMs where /tmp is a RAM-based filesystem.
The tests are sufficiently verifying lrsync correctness making
a single copy of the dbench output to the local $TMP filesystem.
Other subtests are verifying that multiple '-t DIR' targets work.
Test-Parameters: trivial
Test-Parameters: testlist=lustre-rsync-test env=ONLY=2a,ONLY_MINUTES=60
Test-Parameters: testlist=lustre-rsync-test env=ONLY=2b,ONLY_MINUTES=60
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Ibbc720f30c1146c04760f24bc09e1fe76c762edc
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58930
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Chakshu Kansal [Thu, 24 Apr 2025 12:40:58 +0000 (06:40 -0600)]
LU-11029 target: centralize size checking
Consolidate size checking logic inside object_update_param_get()
instead of having separate checks at each call site.
Test-Parameters: testlist=sanity,sanityn
Signed-off-by: Chakshu Kansal <ckansal@ddn.com>
Change-Id: I290ce300fb28ee48b2052fcb8263a308d63022f5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58888
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Aryan Gupta <argupta@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Fri, 18 Apr 2025 15:05:17 +0000 (20:35 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (5)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ia025459e129fd5ab0709798f7bd4b6872fc08a94
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58861
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Thu, 17 Apr 2025 14:42:06 +0000 (20:12 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (4)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ib22e67e4c2416fe1a7b5e86b7afca440e2b7800c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58860
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Tue, 22 Apr 2025 19:47:14 +0000 (15:47 -0400)]
LU-10911 idl: add OBD_CONNECT2_FLR_EC flag
The new connect2 flag indicates when I/O data containing
parity data can be handled. The field l_ost_gen for
struct lov_ost_data_v1 has never been used. We can use
it to classify OST object data.
Test-Parameters: trivial
Change-Id: I4883c7f5bb80690de7b3fe65144baa70538bd4d6
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58843
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Hongchao Zhang [Tue, 18 Mar 2025 01:19:52 +0000 (09:19 +0800)]
LU-16266 lfsck: fix the PROJID of OST object
The PROJID of the OST object should be fixed along with UID/GID
when LFSCK finds the UID/GID/PROJID of the OST object is different
from the value of the MDT object.
Signed-off-by: Hongchao Zhang <hongchao@whamcloud.com>
Change-Id: Ifbdc89797ccfa4d80515ec1a67062016e7dc30fb
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58519
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: Li Dongyang <dongyangli@ddn.com>
Frank Sehr [Wed, 19 Mar 2025 00:10:00 +0000 (17:10 -0700)]
LU-18828 lnet: lnetctl SIGSEGV in infra_ping_nid
Return value of strtok() not checked.
Save error code and continue pinging after syntax error.
Test-Parameters: trivial
Signed-off-by: Frank Sehr <fsehr@whamcloud.com>
Change-Id: I817d7c46ced9e8ea42a283b6c05dfc17ce8781f3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58460
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>
Timothy Day [Sat, 22 Feb 2025 01:30:05 +0000 (20:30 -0500)]
LU-18687 compat: move hash/rhash to lustre_compat
Migrate the backported hash and rhashtable code to
lustre_compat.
The backported linux-hash.c code is only needed for
CentOS 7.5, so drop it.
Eventually, all of the Lustre/LNet compatability code
will live in lustre_compat - maintaining a clear
separation from the functional code in Lustre and LNet.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I73add2b5c2ad8ccc46c252f1066c7f20dc12cc39
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58157
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: Andreas Dilger <adilger@whamcloud.com>
Ake Sandgren [Wed, 29 Jan 2025 12:15:37 +0000 (13:15 +0100)]
LU-18685 deb: fix broken EXTRAFLAGS
A change to allow separate packages to be built has broken handling
of EXTRAFLAGS in debian/rules. It should always use:
EXTRAFLAGS="${EXTRAFLAGS} ..."
Fixes:
1a2119c54e ("LU-17462 build: make some deb packages optional")
Test-Parameters: trivial
Signed-off-by: Ake Sandgren <ake.sandgren@hpc2n.umu.se>
Change-Id: I44aa60fea474ae046ba89a6502ba9b6c635c6918
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57922
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Timothy Day [Sat, 5 Apr 2025 21:53:45 +0000 (17:53 -0400)]
LU-18687 compat: move include and simplify lustre_compat
Move the headers to the top-level. This will simplify the
comiler command-line, isolate autotools dependencies to the
headers, and allow for lustre_compat to use plain Makefiles
(similar to Linux).
Test-Parameters: trivial
Fixes:
74faf91f44 ("LU-18687 compat: move xarray to lustre_compat")
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I851fa183c14a2661bb1eca91d94b7d757f9e575a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58694
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>
James Simmons [Thu, 24 Apr 2025 23:03:57 +0000 (19:03 -0400)]
LU-12511 lnet: don't build gnilnd related code for native client
The gnilnd is not upstream so avoid the code for native client
builds.
Test-Parameters: trivial
Change-Id: I48015da55f2ea8823838a00ca618c9bd1716b7c3
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58953
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Thu, 24 Apr 2025 18:26:30 +0000 (14:26 -0400)]
LU-12511 utils: fix build issues with native client
A few bugs have crept in that breaks building the lustre utilies
against the native client. One set of breakage is the wrong
paths for UAPI lustre headers. A few server only data structures
have shown up so only conditionally build them. Lastly for
liblustreapi_ioctl.c we need stdlib.h so it builds properly.
Otherwise we get the build error:
liblustreapi_ioctl.c:63:11: error: incompatible implicit
declaration of built-in function ‘malloc’ [-Werror]
liblustreapi_ioctl.c:63:11: note: include ‘<stdlib.h>’
or provide a declaration of ‘malloc’
Test-Parameters: trivial
Change-Id: If942cef0fd810a918ef3953f7920021b5a5f8360
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58952
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Yang Sheng [Sat, 5 Apr 2025 06:58:40 +0000 (14:58 +0800)]
LU-16569 llite: fix file attribute operation
The file attribute should be filtered. Also the
kernel removed the option to propagate i_flags
from vfs_inode to ext4_inode_info since commit:
v4.11-rc3-45-g38eae95ddc ("ext4: Remove ext4_get_inode_flags()")
This makes file attribute flags cannot be persisted
after MDS failover.
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I12dc70daec5297f54b83e6e71474547b014f9f49
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58693
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Li Dongyang <dongyangli@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alexander Boyko [Fri, 30 Aug 2024 17:12:09 +0000 (13:12 -0400)]
LU-18218 mdd: changelog specific write function
Don't use a general llog_osd_write_rec() for a changelog,
it has too many synchronisation for a consistency, and additional
complexity for a remote writes. And as a result changelog enabling
slowdowns MDT IO performance by 3x. The main idea of this patch is
parallel writers to a local file, some inconsistence would be
handled by a reader.
The lgh_hdr_mutex protects modifications at memory, there is no
need to cover dt_record_write() by it. Since write/cancel protects
by lgh_lock mutex. Let's change lgh_hdr_mutex to a spinlock.
Perfomance results for mdtest mean at cluster
Changelog no basic patch diff %
Directory creation 90152 32800 63827 94
Directory removal 96900 32928 61220 85
File creation 116109 52318 82698 58
File removal 119260 42845 80557 88
HPE-bug-id: LUS-11970
Signed-off-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: Icbe26e1198630dc72f4dfd9fca59718076579245
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56342
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alexey Lyashkov <alexey.lyashkov@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Mon, 28 Oct 2024 03:56:46 +0000 (23:56 -0400)]
LU-13814 clio: rename 'cl_page_completion'
All of the other cl_page operations are verbs, so let's
make this one a verb as well rather than the slightly odd
'completion'.
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I3f52372b4e9ae1805fdfddb31c908553a381c0aa
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52112
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Qian Yingjin <qian@ddn.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Patrick Farrell [Tue, 22 Apr 2025 19:16:10 +0000 (15:16 -0400)]
LU-13814 clio: add cl_dio_pages_complete
This is the equivalent of cl_page_complete for regular
cl_pages. This is used in a patch to come shortly.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I9fc993e57d1607a6ad5cba27f896e0eb2a838218
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52111
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: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Tue, 22 Apr 2025 19:15:40 +0000 (15:15 -0400)]
LU-13814 clio: add cl_sync_io_note batch
Batched cl_sync_io_note will be needed shortly in the
series, so add the functionality here. This will be used
in an upcoming patch, but is separate to keep the patches
short.
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I5191424a88376e8e9a69e99ad2e785357f35fa0c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52100
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: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Tue, 22 Apr 2025 19:13:23 +0000 (15:13 -0400)]
LU-13814 lov: add lov dio_pages_init
Implement dio_pages_init for the lov layer.
Note this has a place to call to the OSC layer, but there
is no corresponding function there. The OSC function will
be added when the corresponding functionality is needed by
the main conversion process.
This patch allows us to continue the conversion of the
io_submit path.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Ib8db45e89fd699febce4978f2ea95c7500b0325d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52110
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: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Alex Zhuravlev [Wed, 26 Mar 2025 13:41:19 +0000 (16:41 +0300)]
LU-18851 tests: fix nodelist in sanity/170b
on a local setup nodes_list should contain just a single entry
Fixes:
8091e481fc ("LU-18810 misc: filename encoding for remaining files")
Test-Parameters: trivial
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ie855dcf6c2f7a62c3fcf3913fe43d8a8c58e54e2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58540
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: Emoly Liu <emoly@whamcloud.com>
Timothy Day [Tue, 22 Apr 2025 15:06:13 +0000 (15:06 +0000)]
LU-18751 lnet: disable sanity-lnet/410 test case
sanity-lnet/410 hasn't been consistently passing for
a while. Disable it.
Test-Parameters: trivial
Fixes:
30868de940 ("LU-18751 lnet: Segfault in lnetctl fault command")
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Id384842056086797c146bf695dee8da11aec29e0
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58897
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.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>
Aryan Gupta [Tue, 22 Apr 2025 05:49:29 +0000 (23:49 -0600)]
LU-18333 target: Remove executable bit from lfs.c
Remove the executable bit that was incorrectly set on lfs.c.
Test-Parameters: trivial
Fixes:
1631c5728b ("LU-17516 utils: new --mdt and --ost options for lfs df")
Signed-off-by: Aryan Gupta <argupta@ddn.com>
Change-Id: Ia1628a7c4882c0037123828af250ac78279d51b8
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58889
Reviewed-by: Chakshu Kansal <ckansal@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Sergey Cheremencev [Fri, 18 Apr 2025 18:19:30 +0000 (21:19 +0300)]
LU-18936 quota: correct limits for squashed root
As root doesn't have quota limits, it's limits have been always set to
zero at client side. However, qid=0 can be changed according to the
nodemap at the MDT. As clients don't know about the mapping, quota
limits must to be set to zero only on the MDT.
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Change-Id: Ibdfd70d0cf4987a6e99e4ee07d7308a6865116ad
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58886
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>
Jian Yu [Mon, 21 Apr 2025 08:34:16 +0000 (01:34 -0700)]
LU-18910 kernel: update RHEL 9.5 [5.14.0-503.38.1.el9_5]
Update RHEL 9.5 kernel to 5.14.0-503.38.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: Ic8eb8a3303cb318efba0718993e7e2b885b64bcd
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58869
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 [Mon, 21 Apr 2025 08:22:56 +0000 (01:22 -0700)]
LU-18926 kernel: update RHEL 8.10 [4.18.0-553.50.1.el8_10]
Update RHEL 8.10 kernel to 4.18.0-553.50.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 \
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: Ife0d29cfd05df1bc40e1657a4501f1a4b88d0346
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58868
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>
Arshad Hussain [Sat, 19 Apr 2025 15:33:17 +0000 (21:03 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (8)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I9a9df9e1deb1a5c59d21da0af5b622038e2c8762
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58864
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Fri, 18 Apr 2025 16:08:51 +0000 (21:38 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (6)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I1eabbb64bc6c10dfd2e7f08c7db66566cd92b345
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58862
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Thu, 17 Apr 2025 23:02:33 +0000 (04:32 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (3)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I2e99e4e411a4e253604b1cca3b2c70fca9579b4a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58859
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Wed, 16 Apr 2025 21:28:06 +0000 (02:58 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I85945763d950418ac09896e8b5470ade889e4080
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58858
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Tue, 15 Apr 2025 18:16:58 +0000 (23:46 +0530)]
LU-9633 ptlrpc: Add kernel doc style for ptlrpc (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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I5d3cfd1f1d3af9810d846ed055fac5029f96bc4a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58857
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Chris Horn [Tue, 15 Apr 2025 21:06:08 +0000 (15:06 -0600)]
LU-18928 lnet: Fix lnetctl peer/net set help option
jt_set_peer/ni_value do not correctly check return value of
check_cmd() function. As a result they report an error when user
specified '-h' option.
Test-Parameters: trivial testlist=sanity-lnet
Fixes:
9b05e87248 ("LU-10391 lnet: support updating LNet local NI settings")
Signed-off-by: Chris Horn <chris.horn@hpe.com>
Change-Id: I7f55208b530a62e0c8bd14f1e50a36dba555f1a6
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58808
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 [Mon, 14 Apr 2025 23:31:09 +0000 (17:31 -0600)]
LU-15762 tests: skip llapi_hsm_test113 on old server
Skip sanity-hsm test_500 sub-subtest 113 for old server interop.
This requires adding some infrastructure to allow skipping some
sub-subtests in llapi_hsm_test.c. Moved from llapi_layout_test.c
to llapi_test_utils.c and enhanced to allow non-contiguous test
numbering and sharing between test files.
Modify llapi_layout_test.c to include these same improvements.
Update code style in sanity-hsm test_500 and sanity test_27D so
both modified test programs run in review-subtest-change sessions.
Fix version check in sanity/27D that always skipped sub-subtest 34.
Test-Parameters: trivial testlist=sanity-hsm env=ONLY=500 serverversion=2.14
Fixes:
f684172237 ("LU-11085 mdt: revise recording of hsm progress updates.")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I1d234632444404346142e45e74b61ffbe6500c1e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58786
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Nikitas Angelinas <nikitas.angelinas@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Timothy Day [Mon, 14 Apr 2025 14:25:10 +0000 (14:25 +0000)]
LU-18162 kunit: convert OBD test to LU device
Convert OBD test to use LU device init/fini rather
than the legacy OBD API.
Test-Parameters: trivial testlist=sanity env=ONLY=55,ONLY_REPEAT=25
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Idd7f31fdf6daebfad448bed9c4ca7102f45c1688
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58785
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Timothy Day [Mon, 14 Apr 2025 19:03:18 +0000 (19:03 +0000)]
LU-18162 obdclass: init LU device after alloc
During obd_setup, ldto_device_alloc will be called if it
is defined. Initialize each lu device after it is allocated.
This isn't currently used by any existing LU device. This is
intended for future LU device conversions.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I859e467971db4335ae98fbc57643be8e1a261694
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58784
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>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Timothy Day [Tue, 15 Apr 2025 16:22:36 +0000 (16:22 +0000)]
LU-18162 obdecho: remove LBUG() from echo_device_init()
Remove LBUG() from otherwise unimplemented echo_device_init().
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Idd6c507a546d158438f7b74deb451f70ab15a341
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58802
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>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Timothy Day [Tue, 15 Apr 2025 03:54:19 +0000 (03:54 +0000)]
LU-18162 osd-ldiskfs: leave osd_device_init() unimplemented
osd_device_init() is never called when using ldiskfs OSD. If it is
called, procfs will improperly be initialized twice. To avoid this
would require a refactor or leaving osd_device_init() as a stub.
For now, remove all functional (uncalled) code from the function
and return 0.
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Id5d1c2ad28fe2a659b5c31cc4390cd745bc2b95e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58787
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>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Timothy Day [Mon, 14 Apr 2025 20:16:20 +0000 (20:16 +0000)]
LU-18162 obdclass: create ldto wrappers and default LU allocator
Wrap calls to ldto_device_* methods with small wrapper functions.
This allows for default behavior to be defined when the ldto_device_*
methods are not defined.
Define a default allocator when ldto_device_alloc and ldto_device_free
are not provided. This will allow many of the simplier OBD devices
to be fully converted to LU devices without as much boilerplate.
Similarly, allow ldto_device_init/fini to be optional.
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Iac40138a31a0eef9a2100f958be8e00849301e46
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58783
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: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Mon, 14 Apr 2025 12:35:11 +0000 (18:05 +0530)]
LU-9633 lod: Add kernel doc style for lod (Part 7)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ifd1a1e6e767a94ecf2baededf7b0840989034f66
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58779
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Mon, 14 Apr 2025 11:38:01 +0000 (17:08 +0530)]
LU-9633 lod: Add kernel doc style for lod (Part 6)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ia3a4d995bc21ae682254a194d9e0ff9b8ba7ecb3
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58778
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Arshad Hussain [Mon, 14 Apr 2025 11:18:21 +0000 (16:48 +0530)]
LU-9633 lod: Add kernel doc style for lod (Part 5)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: If3c41e20d58107d370b81062301b4b052eb42a59
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58777
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Sebastien Buisson [Fri, 11 Apr 2025 13:23:23 +0000 (15:23 +0200)]
LU-18919 nodemap: map suppgids from client
Map back to the file system id space the supplementary groups
received from the client.
Add sanity-sec test_76 to exercise this.
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I9d6b6e5ae2fca476b102c8a02a62c1be75379acf
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58759
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Jian Yu [Tue, 8 Apr 2025 04:09:13 +0000 (21:09 -0700)]
LU-18904 tests: skip sanity/230k for older servers
This patch skips sanity/230k for older servers until
the real issue is fixed.
Test-Parameters: trivial
Test-Parameters: testlist=sanity env=ONLY=230k serverversion=2.12
Change-Id: I82c10fc6da614ae4ca85724011c22ddfd443b894
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58722
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Timothy Day [Wed, 2 Apr 2025 15:33:56 +0000 (11:33 -0400)]
LU-18876 osp: rename conflicting ping_show
The function ping_show() is defined twice: once is OSP
and another time in Portals RPC. This causes a linker
error when the Lustre modules are built into the static
kernel image. Rename the ping_show() in OSP to
osp_ping_show() and adjust the attribute definition to
match.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: Ibe21f0714a22637f365c9bd1f5cac31608e65cbf
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58628
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Timothy Day [Sat, 29 Mar 2025 22:45:19 +0000 (18:45 -0400)]
LU-18687 doc: move man pages to Documentation [1]
Consolidate all of the man pages into the top
level Documentation directory.
Move all of the LNET man pages to Docmentation/.
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I8f175e9b7cc27e2b80622ae7b8f891104dff24c4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58586
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: Ellis Wilson <elliswilson@microsoft.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Sebastien Buisson [Fri, 28 Mar 2025 08:30:21 +0000 (09:30 +0100)]
LU-18863 nodemap: warning for inconsistencies with offset
When offsets are defined on a nodemap, other properties related to id
mapping are impacted.
All squash values should be in the offset range [ 0, offset_limit-1 ],
otherwise squashed ids would escape offsetting.
Any explicit id mapping should map to an fsid in the offset range,
otherwise the mapped id would escape offsetting.
And the offset limit itself should be defined so that nobody (65534)
is included in the offset range.
lctl nodemap_add_offset, nodemap_modify and nodemap_add_idmap commands
are modified to print a warning when such an inconsistency is
detected.
lctl-nodemap-add-idmap.8, lctl-nodemap-add-offset.8 and
lctl-nodemap-modify.8 manpages are updated to explain these
constraints.
Test-Parameters: trivial testlist=sanity-sec
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I129265e73957660da34837444238fbb98c620240
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58570
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Marc Vef <mvef@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Elena Gryaznova [Fri, 14 Mar 2025 15:10:37 +0000 (18:10 +0300)]
LU-18814 tests: run extra prog, execute NLOOPS mpi workloads
Patch adds the abilities:
- execute the workload the specified number of times (NLOOPS)
instead of execution them during the test duration set;
- execute the mpi EXTRAPROG in addition to allowed now IOR,
mdtest and simul;
- execute more mpi instances than the number of clients in
case if NLOOPS set.
Test-Parameters: trivial
Signed-off-by: Elena Gryaznova <elena.gryaznova@hpe.com>
HPE-bug-id: LUS-12231
Reviewed-by: Vladimir Saveliev <vladimir.saveliev@hpe.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Change-Id: I8e019560356edb94fee75cfcb55e86c6cc7bd69d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58410
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Shaun Tancheff [Thu, 10 Apr 2025 09:16:10 +0000 (16:16 +0700)]
LU-18862 ldiskfs: update for RHEL 9.6
Update linux 6.6 ext4-encdata.patch to work around trivial
context change of generic_fillattr() arguments.
Use linux 6.11 version of ext4-kill-dx-root.patch
Use linux 6.6 version of ext4-ialloc-uid-gid-and-pass-owner-down.patch
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Ia5cf6dd1c21d81bc39837566ca69ef3a074d30c2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58567
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Keguang Xu [Sat, 18 Jan 2025 14:36:01 +0000 (22:36 +0800)]
LU-17427 mdt: reduce hold time for BFL rename lock
In non-parallel rename, the order of resource locking follows
a fixed order: first global BFL, then (up to) 4 FID locks.
This means the BFL can be held for a long time if any client
holding one of the FID locks is non-responsive for some reason.
Especially in a big cluster where hundreds or thousands clients
exist doing various workloads.
To reduce hold time for BFL lock, we restructure the locking
into two phases,
1. get the 4 child locks first (to cancel the majority of
lock holders)
2. try to get the BFL resource lock if it is uncontended
3a. if BFL is contended then drop child locks and wait for it
3b. re-get the child locks if they were dropped in 3a
Note in phase 1 there's no BFL umbrella anymore, which in turn
may introduce deadlock, hence some order logic is added, e.g.
mdt_rename_determine_lock_order() order by fid if objs belong
to different parents.
> perf results:
1. two active clients with only renames:
max_dirs without-patch with
500x500 14418 14276
150x150 20419 20210
2. slow clients scenario, QPS=10 and 5s pause where P(X)=1%
for master and P(X)=0.1% for patch (not quite sure if the P is
reasonable or not),
Metric (ms/req) without-patch with
Average Latency 205.76 21.50
Signed-off-by: Keguang Xu <squalfof@gmail.com>
Change-Id: I806f52a7c23acdb0f9cb7e7b4c8e306db2fad8d5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57741
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>
Shaun Tancheff [Fri, 11 Apr 2025 01:40:54 +0000 (08:40 +0700)]
LU-16350 ldiskfs: update for kernel 6.12
Update patches
ext4-data-in-dirent.patch
ext4-ext-merge.patch
ext4-filename-encode.patch
ext4-prealloc.patch
for kernel 6.12.
Linux commit v6.11-rc4-18-g4f05ee2f82b4
ext4: store cookie in private data
If file private_data is not set and an open() handler
is defined then the file must be open()'d before proceeding
to iterate() over the directory.
This corresponds with the dropping of file->f_version member
which is replaced by the cookie in file->private_data.
Note that the file->open() handler will load the expected
cookie into file->private_data.
For older kernels the open() handler is not provided.
HPE-bug-id: LUS-11376
Test-Parameters: trivial
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: Ie64bb701f45a024dce4caefe0e3ee673e6cfe25a
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57126
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Vladimir Saveliev [Wed, 12 Mar 2025 10:13:43 +0000 (13:13 +0300)]
LU-17933 target: do not break grants on RPC failure
When write RPC fails it may leave grant accounting inaccurate.
Grants are allocated in:
tgt_brw_write
obd_preprw
ofd_preprw
ofd_preprw_write
tgt_grant_prepare_write
oa->o_grant = tgt_grant_alloc()
tgd->tgd_tot_granted += grant;
ted->ted_grant += grant;
return grant;
If further it happens to return error, oa->o_grant is zeroed:
ofd_preprw_write
..
out:
tgt_grant_prepare_read
oa->o_grant = 0;
This results in a mismatch between grants owned by a client and grants
the server thinks the client owns.
Clients used to skip grant accounting update in case of write RPC
failure:
ptlrpc_req_interpret
brw_interpret
osc_brw_fini_request
if (rc < 0 && rc != -EDQUOT)
return rc
osc_update_grant
__osc_update_grant(cli, body->oa.o_grant)
Have server to take care of correct grant accounting in case of RPC
failure.
Test to illustrate the issue is added. This test needs zero lost
grants. Sync write on start is to get rid of those.
Signed-off-by: Vladimir Saveliev <vladimir.saveliev@hpe.com>
Change-Id: Ic835eb0b7f1894207637ec541b1d39c59bde286d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56547
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alexander Boyko <alexander.boyko@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Frederick Dilger [Wed, 10 Jul 2024 06:24:01 +0000 (00:24 -0600)]
LU-14590 utils: merge similar list_param params
New [--merge|-m], [--no-merge|-M] and [--dshbak|-b] options have
been added to be able to collapse repeated parameters.
[--merge|-m] will collapse any parameters with the same parameter
name, if used with get_param, matching params that have differing
values will have the differences be printed in red.
New [--color|-c auto|always|never] option to selected whether to
print parameters in color or not.
--merge is enabled by default when using list_param or --dshbak.
If --merge is disabled, duplicate parameters will be printed in
yellow (duplicates with different values will still be highlighted).
--dshbak will replace any instance of MDT|OST|QMT[0-9]* with
MDT|OST|QMT* meaning that for any system with more than one
OST|MDT this will greatly reduce the number of parameters being
printed.
sanity.sh test_0d was failing due to 'mgs.MGS.*' returning
'mgs.MGS.clear', and 'mgs.MGS.clear.uuid' is not a valid parameter
path, so the new param pattern is 'mgs.MGS.*.uuid' to avoid this from
happening. "uuid" is then removed to obtain the appropriate
directory.
Signed-off-by: Frederick Dilger <fdilger@whamcloud.com>
Change-Id: I03c85eb42160d90ce7435ce7fa5524b292fd55a7
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/55724
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Andreas Dilger [Wed, 6 Jul 2022 20:55:32 +0000 (14:55 -0600)]
LU-12885 llite: add enum ll_file_flags for clarity
Use enum ll_file_flags to store Lustre-internal flags on the open
file descriptor, instead of a generic "__u32 fd_flags", which can
easily be confused with any number of other flags in the code.
Rename variable "fd_flags" to "lfd_file_flags" to make this clear.
Test-Parameters: trivial
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: Idb4013610b9ef6f9461c8de275f6b5b4763ebbe5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/45924
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Timothy Day [Thu, 17 Apr 2025 15:58:29 +0000 (15:58 +0000)]
LU-18515 build: fix configure checks for ZFS 2.2.3
These config checks were missing certain headers. Thus,
the checks failed which caused the build to also fail when
trying to compile against ZFS 2.3.0+.
Fixes:
a13fc434c57f ("LU-17662 osd-zfs: Support for ZFS 2.2.3")
Test-Parameters: trivial
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I8e231f0c4581f435cb4209c767fc4727cb6cbfa0
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57452
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Akash B <akash-b@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Tue, 25 Mar 2025 21:23:23 +0000 (17:23 -0400)]
LU-13814 clio: add coo_dio_pages_init
Just like the cl_page it's replacing, the cl_dio_pages
struct needs various pieces of information from the
different layers of the cl_object in order to do the IO.
This adds the skeletion for coo_dio_pages_init.
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I30251b4b9e1455f87768e488647296390352cf88
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58530
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: Shaun Tancheff <shaun.tancheff@hpe.com>
Patrick Farrell [Wed, 26 Mar 2025 21:09:14 +0000 (17:09 -0400)]
LU-13814 clio: add cl_dio_pages_init
Just like the cl_page it's replacing, the cl_dio_pages
struct needs various pieces of information from the
different layers of the cl_object in order to do the IO.
This means we need a cl_dio_pages init, analogous to
cl_page_alloc and coo_pages_init.
Note this does not implement coo_pages_init for any layers,
it just moves parts of the existing init code.
coo_dio_pages_init will be implemented in the next
patch.
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I1fcf407b16d4077d94c7ba5afbc63bdd3fb3dfb4
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/52109
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: Shaun Tancheff <shaun.tancheff@hpe.com>
Andreas Dilger [Wed, 23 Apr 2025 05:58:47 +0000 (23:58 -0600)]
LU-15935 tests: ignore replay-dual/33 cleanup error
The cleanup in replay-dual test_33 can fail to reset at_min
if the OST was already stopped on some node during cleanup.
Ignore these non-fatal errors during stack_trap cleanup.
Fixes:
1a79d395dd ("LU-15935 target: keep track of multirpc slots in last_rcvd")
Test-Parameters: trivial testlist=replay-dual env=ONLY=33
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I69d3feb9591256704b47c850c35ea97ffb500c1e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58915
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Etienne AUJAMES <eaujames@ddn.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Brian Behlendorf [Fri, 11 Apr 2025 19:39:27 +0000 (12:39 -0700)]
LU-18886 zfs-osd: za_name flexible array OI scrub fix
Initialize the zap_attribute_t.za_name_len to resolve the
OI scrub failures observed with zfs-2.3. This is a follow up
to commit
d47a71f7a894a193957fe7771d43c5767979c117 which made
an identical fix for the other sites where a zap_attribute_t
is used.
Test-Parameters: fstype=zfs
Fixes:
d47a71f7a894a ("LU-18360 zfs-osd: za_name flexible array")
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Change-Id: Ib4295cbb7ce7e7efe0f7e67b82bc8c73a1f9df8d
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58762
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
James Simmons [Tue, 15 Apr 2025 17:17:17 +0000 (13:17 -0400)]
LU-18923 osd: move simple debugfs files to sysfs
Move simple files in debugfs for osd backends to general sysfs.
This makes them available as non-root.
Change-Id: If7a33b8a53c712a46735981653d86bdd2c9775a6
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58805
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Thu, 10 Apr 2025 15:32:10 +0000 (11:32 -0400)]
LU-17924 tests: disable obdfilter-survey for ZFS
Starting with ZFS 2.2.7 the obdfilter-survey test fails due to
memory exhausting. For now disable the test for ZFS.
Test-Parameters: trivial
Change-Id: Ibebc637a9b733cf0b262d18de1baeef09108cd36
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58796
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Tue, 15 Apr 2025 15:13:10 +0000 (11:13 -0400)]
LU-10870 tests: disable sanityn test 40a
If sanityn 40a is run several times there is a good chance the
test will fail. Disable the test until a solution is presented.
Currently Oleg's rocky8 setup will easily reproduce this
problem.
Test-Parameters: trivial testlist=sanityn
Change-Id: I0bdff999ecdf2481c2bd9eda6c4fc8b1cacd08d5
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58795
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Tue, 15 Apr 2025 15:15:28 +0000 (11:15 -0400)]
LU-16489 tests: disable lustre_rsync 2c test
In normal maloo testing we see lustre_rsync 2c test one in a
while fails but for Oleg's rocky8 setup it fails constantly.
For now disable the test until its resolved.
Test-Parameters: trivial testlist=lustre-rsync-test
Change-Id: Icd824c9d56f53629989b1cee51a86c57a452e410
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58794
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>
Timothy Day [Fri, 11 Apr 2025 16:02:43 +0000 (16:02 +0000)]
LU-18921 ldlm: make client_obd_cleanup return void
client_obd_cleanup() can never fail and it always returns
0. Make the function return void instead and fix all of the
callers.
Test-Parameters: trivial
Fixes:
911b6167a37c ("LU-3810 obd: Cleanup client import if client_obd_setup fail")
Signed-off-by: Timothy Day <timday@amazon.com>
Change-Id: I5a5987b4fafb712c35943620235620c6370a9f76
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58761
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Vandana Rungta <vrungta@amazon.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Tue, 8 Apr 2025 03:31:01 +0000 (20:31 -0700)]
LU-18902 tests: skip sanity/60g for older servers
This patch skips sanity/60g for older servers that
do not disable remote file statahead.
Test-Parameters: trivial
Test-Parameters: testlist=sanity env=ONLY=60g serverversion=2.12
Fixes:
02b5a407081c ("LU-11681 lmv: disable remote file statahead")
Change-Id: I7b26e9c0d8038db94bec3d2a006ec922457dec24
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58718
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Jian Yu [Tue, 8 Apr 2025 03:06:10 +0000 (20:06 -0700)]
LU-18900 tests: skip sanity/24G for older servers
This patch skips sanity/24G for older servers that
do not support migrating symlink in rename.
Test-Parameters: trivial
Test-Parameters: testlist=sanity env=ONLY=24G serverversion=2.12
Fixes:
9adc02c016d2 ("LU-11631 mdd: migrate symlink for cross-MDT rename")
Change-Id: Ib576f669e6ce76fecd0a50ac7e5eef38d3c2727a
Signed-off-by: Jian Yu <yujian@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58715
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Patrick Farrell [Fri, 4 Apr 2025 14:24:18 +0000 (10:24 -0400)]
LU-18890 doc: add "lfs find -ls" option to lfs-find.1 man page
The "lfs find -ls" option added in LU-15504 was not
documented in the lustre/doc/lfs-find.1 man page. This
patch adds proper documentation for this option, including:
- Adding the option to the SYNOPSIS section
- Adding a detailed description in the OPTIONS section
- Adding an example showing how to use the option
Fixes:
1d8164fa ("LU-15504 utils: lfs find -ls function")
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: Iecdc99d490f840c9beea62fb3b2c0bf49031b08c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58688
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Frederick Dilger <fdilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Sergey Cheremencev [Fri, 21 Mar 2025 06:32:31 +0000 (09:32 +0300)]
LU-18875 quota: change lqe only under lock
All fields of an lqe, especially flags, must be changed only under a
lock protection. The flags like lqe_gl, lqe_is_reset, lqe_edquot are
the part of an unsigned long(8 bytes) memory region in lquota_entry.
It is impossible to change only 1 bit in a memory, so the general way
is to "mov" 1 byte to some register(AL), change it(AND, OR) in this
register and "mov" back to the memory. It is a window for a race and
might cause a corruption of the neighbour flags. So this patch adds a
locking for remain places where the flags or any lqe members are
changed without locking. One of known issues this patch is aimed to
sort out is the following assertion:
(qmt_lock.c:973:qmt_id_lock_glimpse()) ASSERTION( lqe->lqe_gl )
Restore one old assertion in qmt_id_lock_glimpse that was removed by
mistake in
16ee9ecdb0 - qmt_reba_thread() is the only thread that can
change lqe_gl flag. Also check that lqe_gl is not set when we are
freeing an lqe.
Fixes:
16ee9ecdb0 ("LU-16913 quota: fix ASSERTION(lqe->lqe_gl)")
Fixes:
78be823f33 ("LU-15218 quota: delete unused quota ID")
Signed-off-by: Sergey Cheremencev <scherementsev@ddn.com>
Change-Id: I954ed8aa23be01846e479a64c376c4b37af05268
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58612
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>
Arshad Hussain [Sun, 30 Mar 2025 00:00:41 +0000 (05:30 +0530)]
LU-9633 lod: Add kernel doc style for lod (Part 3)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ica6613a5ae8a4ffe965e5451bb4fee939db980ec
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58603
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
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 [Sun, 30 Mar 2025 14:01:03 +0000 (19:31 +0530)]
LU-9633 lod: Add kernel doc style for lod (Part 4)
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
Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: I962a4a5eb33ea5b363dff21d2302df3ab584d012
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58602
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Anjus George <georgea@ornl.gov>
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>
Shaun Tancheff [Sun, 30 Mar 2025 07:23:44 +0000 (14:23 +0700)]
LU-18871 dkms: prefer 'command -v' over 'which'
Prefer command -v over which to quash spurious output during
dkms build.
Test-Parameters: trivial testgroup=full-dkms
HPE-bug-id: LUS-12801
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I63494f0bbb16c5dff85fcac2e8cb9c141c38bdd2
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58594
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Sun, 30 Mar 2025 18:38:38 +0000 (12:38 -0600)]
LU-13726 build: fix checkpatch fix matching
When the spelling.txt suspect string is a regexp, then the matched
$typo string is different from the regexp, and is not a valid key
in the $spelling_fix associative array. This generates an error:
WARNING: 'foo' may be misspelled - perhaps 'CHECKPATCH ERROR'
because $typo is not found in $spelling_fix and $typo_fix is empty.
If $typo_fix is empty after lookup, iterate the $spelling_fix keys
to find the one matching $typo so that it can be used as $typo_fix.
Avoid length warnings from DNAME usage, improve spelling suggestion.
Test-Parameters: trivial
Fixes:
d097fcc51b ("LU-18810 obd: add a parameter to enable filename encoding")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I6d29f9470d16c340ebf5bcd2384b477bac500c13
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58593
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Colin Faber <cfaber@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Vandana Rungta [Fri, 21 Mar 2025 16:06:25 +0000 (16:06 +0000)]
LU-18845 obdclass: NPE in with_imp_locked_nested
Unable to handle kernel NULL pointer dereference
at virtual address
0000000000000588
down_read+0x28/0x100
active_show+0x2c/0x90 [osp]
lustre_attr_show+0x1c/0x2c [obdclass]
active_show calls macro with_imp_locked with an
obd_device, which in turn gets a lock on
u.cli.cl_sem in obd_device. The exception is at offset 0x588,
and u.cli.cl_sem is at 0x588 in struct obd_device,
which confirms that a NULL obd was being used.
This fix adds checks for NULL obd to active_show.
Signed-off-by: Vandana Rungta <vrungta@amazon.com>
Change-Id: Ia0ff9e7a07f40bb7dd9c0d4cc0ecc38ea8d61d0b
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58499
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Reviewed-by: Neil Brown <neil@brown.name>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Timothy Day <timday@amazon.com>
Andreas Dilger [Wed, 9 Oct 2024 21:48:46 +0000 (15:48 -0600)]
LU-12597 tests: remove comma_list for MDTs part 4
Most places that use $(mdts_nodes) also call $(comma_list ...) at the
same time. Rather than returning a space-separated list of nodes from
those functions, instead return a comma-separated list suitable for
use by do_nodes() and similar functions calling pdsh internally.
This avoids the repeated calls to comma_list() and makes the tests
easier to read. Also, since comma_list() internally deduplicates the
node list, it isn't necessary to do that in the callers. A few tests
need to convert comma-separated osts_nodes into space-separated nodes.
Test-Parameters: trivial testlist=sanity-scrub
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I34509872350987564ca560ad93fdaba0443ebbe5
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58022
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Andreas Dilger [Thu, 9 Nov 2023 00:10:05 +0000 (17:10 -0700)]
LU-10026 sptlrpc: don't crash for too-large chunk size
If the chunk size is too large, don't fall off the
end of the page_pool[] array with a large "order".
EX-bug-id: EX-8270
Test-Parameters: trivial
Fixes:
d945f1b064 ("EX-6261 ptlrpc: extend sec bulk functionality")
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Artem Blagodarenko <ablagodarenko@ddn.com>
Change-Id: I9cdf059860cab3c22857766dba5617358f0aaba9
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57845
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>
Etienne AUJAMES [Fri, 17 Jan 2025 15:21:49 +0000 (16:21 +0100)]
LU-18653 utils: add "--clear-fixed" to "lfs migrate" help
Add the "--clear-fixed" option to the "lfs migrate" help string.
And correct the lfs-migrate.1 manpage:
s/LMV_HASH_FIXED_FLAG/LMV_HASH_FLAG_FIXED/
Test-Parameters: trivial
Fixes:
392f558f40 ("LU-17810 dne: dir restripe without fixed hash flag")
Signed-off-by: Etienne AUJAMES <etienne.aujames@cea.fr>
Change-Id: Ie5db5264777b036043f73453f22bebdf58f8ebcd
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57814
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 [Thu, 10 Apr 2025 14:46:03 +0000 (10:46 -0400)]
LU-15420 sec: handle fscrypt_require_key removal in newer kernels
Kernel commit
de3cdc6e75179a2324c moved fscrypt_require_key()
to the fscrypt_private.h which makes it no longer visible.
With this change move to fscrypt_has_encryption_key() which
existed for some time. Once difference is
fscrypt_has_encryption_key() reports success when the inode has
no encryption so we need to test IS_ENCRYPT(inode) as well.
Expand the ll_has_encryption_key() to also test for IS_ENCRYPT
since this is the most common use case.
Update LLCRYPT_FNAME_DIGEST to LLCRYPT_EXTRACT_DIGEST for mdd
layer.
Test-Parameters: trivial testlist=sanity-sec
Change-Id: I402f222f635e7c0f026c53093bb17ec4d461e189
Signed-off-by: James Simmons <jsimmons@infradead.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57754
Tested-by: Maloo <maloo@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Vikentsi Lapa [Tue, 3 Dec 2024 12:48:33 +0000 (12:48 +0000)]
LU-17224 tests: improve OST out-of-space testing
Add file system reservation with fallocate
to reduce I/O size with dd command
Test-Parameters: trivial testlist=sanityn env=MAXFREE=
60000000
Signed-off-by: Vikentsi Lapa <vlapa@whamcloud.com>
Change-Id: I40b64c1825aa5067788b6b31902d282ba59ccd13
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57260
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Rajeev Mishra <rajeevm@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Patrick Farrell [Tue, 25 Mar 2025 16:10:14 +0000 (12:10 -0400)]
LU-17814 utils: add parallel find arg
lfs find is currently serial, but it can be much faster if
we add a parallel implementation where it creates a work
unit for every directory and handles them in parallel.
This is the first patch of that implementation.
Add arg to control thread count.
No implementation yet.
Test-Parameters: trivial
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I73b542decd75e1f7580f584d2ea6a219af51be4c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57221
Reviewed-by: Marc Vef <mvef@whamcloud.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>
Shaun Tancheff [Fri, 11 Apr 2025 01:39:43 +0000 (08:39 +0700)]
LU-18906 build: page_cache_alloc removed, missing return
Fix gcc -Wreturn-type
nrs_orr.c:1680:1: error: control reaches end of non-void \
function [-Werror=return-type]
Fix gcc -Wimplicit-function-declaration
file.c:678:24: error: implicit declaration of function \
page_cache_alloc [-Werror=implicit-function-declaration]
nodemap_idx_cluster_roles_modify() needs to be static to avoid
error: no previous prototype for 'nodemap_idx_cluster_roles_modify' \
[-Werror=missing-prototypes]
Test-Parameters: trivial
Fixes:
f7b1fea6bff ("LU-16518 lustre: fix implicit-fallthrough warnings")
Fixes:
4a14a51a8e0 ("LU-18448 llite: read dir on open")
Fixes:
904a7f1e839 ("LU-17431 nodemap: introduce child_raise_privileges property")
Signed-off-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Change-Id: I6d5131748efc7d7fcc51c4dc3b06070057cb0f0e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58724
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Timothy Day <timday@amazon.com>
Reviewed-by: Robert Read <rread@ddn.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Etienne AUJAMES [Mon, 10 Mar 2025 17:26:42 +0000 (13:26 -0400)]
LU-17166 ptlrpc: add pb_projid field in ptlrpc_body
This patch "tags" ptlrpc requests with projid (with pb_projid field in
ptlrpc_body). This will enable to add server projid stats and TBF
scheduling based on projid.
The projid comes from the inode (struct ll_inode_info::lli_projid).
For MDT request by name (lookup/create), if the parent have the projid
inherit flag ("LLIF_PROJECT_INHERIT"), the request will be "tag" with
the parent projid.
To build an OSC request, cl_req_projid_set() is added to retrieve the
projid from the VPP layer.
Signed-off-by: Etienne AUJAMES <eaujames@ddn.com>
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I98a73023268a5f24549e3204d6d42a3f057a0798
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/54920
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>
Mikhail Pershin [Fri, 4 Apr 2025 13:29:07 +0000 (16:29 +0300)]
LU-18896 utils: don't miss null-terminator in append_param
The code to move tail can skip null-terminator if there is
no tail and parameter is the last one.
Fixes:
f9d346f0c1 ("LU-18587 utils: allow large NID lists in mount tools")
Signed-off-by: Mikhail Pershin <mpershin@whamcloud.com>
Change-Id: I088f7a0eda80a9df1d55b19db28793aa488cc95e
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58685
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
James Simmons [Thu, 10 Apr 2025 14:41:12 +0000 (10:41 -0400)]
LU-18783 llite: ensure dentry name within ll_namelen
Some of the pjdfstest POSIX filename length tests are failing.
This is due to the test expecting a ENAMETOOLONG error to be
reported instead of the current ENOENT error.
Add a test for the dentry name len to ensure its not longer than
sbi->ll_namelen. pjdfstest is expecting the largest file name size
to be NAME_MAX but newer ZFS versions allow names up to 1024 chars.
Ensure client limits filenames to be within NAME_MAX and OSD limit.
Add a tunable parameter llite.*.namelen_max to set this if needed.
Fixes:
7d197837e0 ("LU-4219 mdd: limit os_namelen to the max of NAME_MAX")
Signed-off-by: James Simmons <jsimmons@infradead.org>
Change-Id: I6bd872d69aca173d61ac55a2f8ffc505efb3f462
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58336
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: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Oleg Drokin [Thu, 31 Oct 2024 19:29:46 +0000 (15:29 -0400)]
LU-18072 ptlrpc: do not search for duplicate cancel requests
Cancel requests don't have any max inflight limitations, so
really could arrive in huge numbers and if they are also have a resent
flag, that leads to a lot of very expensive duplicates search that is
totally unneeded at the same time, so let's skip the check for cancels.
Change-Id: Id4be03a3c9406867adcdcfd31ed91ecc7b12f700
Signed-off-by: Oleg Drokin <green@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/56843
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andriy Skulysh <andriy.skulysh@hpe.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Alex Zhuravlev [Tue, 15 Apr 2025 08:58:08 +0000 (11:58 +0300)]
LU-18293 tests: Revert "LU-18293 test: use direct IO for"
This reverts commit
2f96622a522924c7b9e26fd2dfdf34eb6227b7a6
as it causes many failures in sanity-quota/71a
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I94d5ca67db64c0eead079ae415455f9c5951f9ed
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58790
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Serguei Smirnov [Mon, 7 Apr 2025 23:20:11 +0000 (16:20 -0700)]
LU-18899 o2iblnd: handle RDMA_CM_EVENT_ESTABLISHED gracefully
Modify kiblnd_cm_callback() to handle RDMA_CM_EVENT_ESTABLISHED
gracefully: report an error with relevant details and ignore
the event rather than just cause a crash with LBUG
if the connection state is not RDMA_CM_EVENT_ESTABLISHED or
IBLND_CONN_PASSIVE_WAIT as expected.
Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Change-Id: I8ddde6786eac99699665a71eb0587165e6552ea6
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/58711
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Cyril Bordage <cbordage@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>