From df7aadc8ea34c510ee5c2103dc3164546c38fcc0 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Wed, 27 Mar 2024 11:52:58 -0600 Subject: [PATCH 01/28] DAOS-15136 client: Switch to using libfused Switch to using libfused instead of libfuse3 PR-repos: fused@PR-1:28 Required-githooks: true Change-Id: I382b96a17a8d503d6cf7321b57050e7ab0c187d4 Signed-off-by: Jeff Olivier --- debian/changelog | 6 ++++++ debian/control | 2 +- site_scons/components/__init__.py | 14 +++++++++++++- site_scons/prereq_tools/base.py | 3 +-- src/client/dfuse/SConscript | 30 ++++-------------------------- src/client/dfuse/dfuse.h | 4 ++-- src/client/dfuse/dfuse_fuseops.c | 2 +- src/client/dfuse/dfuse_main.c | 4 ++-- src/client/dfuse/dfuse_thread.c | 2 +- utils/build.config | 3 +-- utils/rpms/daos.spec | 17 ++++++++--------- 11 files changed, 40 insertions(+), 47 deletions(-) diff --git a/debian/changelog b/debian/changelog index 71b8feb50a8..94572934636 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +daos (2.5.101-3) unstable; urgency=medium + [ Jeff Olivier ] + * Switch from libfuse3 to libfused + + -- Jeff Olivier Wed, 27 Mar 2024 21:30:00 +0000 + daos (2.5.101-2) unstable; urgency=medium [ Jan Michalski ] * Add dtx_tests to the server-tests package diff --git a/debian/control b/debian/control index 921880c051c..61ff273f9c0 100644 --- a/debian/control +++ b/debian/control @@ -19,7 +19,7 @@ Build-Depends: debhelper (>= 10), libabt-dev, libucx-dev, libpmemobj-dev (>= 2.0.0), - libfuse3-dev, + libfused-dev, libprotobuf-c-dev, libjson-c-dev, dpdk-dev (>= 21.11.2), diff --git a/site_scons/components/__init__.py b/site_scons/components/__init__.py index b96a7ffc973..beec0b46e9f 100644 --- a/site_scons/components/__init__.py +++ b/site_scons/components/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016-2023 Intel Corporation +# Copyright 2016-2024 Intel Corporation # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -308,6 +308,18 @@ def define_components(reqs): required_progs=['libtoolize', 'ninja', 'meson'], out_of_src_build=True) + reqs.define('fused', libs=['fused'], defines=['FUSE_USE_VERSION=35'], + retriever=GitRepoRetriever('https://github.com/daos-stack/fused.git'), + commands=[['find', '../fused', '-type', 'f', '-name', '*', '-exec', 'sed', '-i', + 's/fuse3/fused/g', '{}', ';'], + ['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', + '-Dudevrulesdir=$FUSED_PREFIX/udev', '-Dutils=False', + '--default-library', 'shared', '../fused'], + ['ninja', 'install']], + headers=['fused/fuse.h'], + required_progs=['libtoolize', 'ninja', 'meson'], + out_of_src_build=True) + # Tell SPDK which CPU to optimize for, by default this is native which works well unless you # are relocating binaries across systems, for example in CI under GitHub actions etc. There # isn't a minimum value needed here, but getting this wrong will cause daos server to exit diff --git a/site_scons/prereq_tools/base.py b/site_scons/prereq_tools/base.py index efd2fd3f9a4..67ee2d5a1c1 100644 --- a/site_scons/prereq_tools/base.py +++ b/site_scons/prereq_tools/base.py @@ -444,7 +444,6 @@ def __init__(self, env, opts): opts.Add(('MPI_PKG', 'Specifies name of pkg-config to load for MPI', None)) opts.Add(BoolVariable('FIRMWARE_MGMT', 'Build in device firmware management.', False)) opts.Add(BoolVariable('STACK_MMAP', 'Allocate ABT ULTs stacks with mmap()', False)) - opts.Add(BoolVariable('STATIC_FUSE', "Build with static libfuse library", False)) opts.Add(EnumVariable('BUILD_TYPE', "Set the build type", 'release', ['dev', 'debug', 'release'], ignorecase=1)) opts.Add(EnumVariable('TARGET_TYPE', "Set the prerequisite type", 'default', @@ -521,7 +520,7 @@ def run_build(self, opts): # argobots is not really needed by client but it's difficult to separate common_reqs = ['ucx', 'ofi', 'hwloc', 'mercury', 'boost', 'uuid', 'crypto', 'protobufc', 'lz4', 'isal', 'isal_crypto'] - client_reqs = ['fuse', 'json-c', 'capstone'] + client_reqs = ['fused', 'json-c', 'capstone'] server_reqs = ['argobots', 'pmdk', 'spdk', 'ipmctl'] test_reqs = ['cmocka'] diff --git a/src/client/dfuse/SConscript b/src/client/dfuse/SConscript index 4b35bb3460d..419a0c77bc6 100644 --- a/src/client/dfuse/SConscript +++ b/src/client/dfuse/SConscript @@ -140,7 +140,7 @@ def check_ioctl_def(context, ctype): context.Message(f'Checking if fuse ioctl is type {ctype} ') # pylint: disable-next=consider-using-f-string - src = """#include + src = """#include extern void my_ioctl (fuse_req_t req, fuse_ino_t ino, %s cmd, @@ -175,22 +175,6 @@ def configure_fuse(cenv): check.Finish() -def find_static_fuse(cenv): - """Find and copy static fuse library""" - - fuse_prefix = '/usr' - if os.path.exists(cenv.subst('$FUSE_PREFIX')): - fuse_prefix = cenv.subst('$FUSE_PREFIX') - - for path in ['lib64', 'lib/x86_64-linux-gnu', 'lib']: - fuselib = os.path.join(fuse_prefix, path, "libfuse3.a") - if os.path.exists(fuselib): - return [File(fuselib)] - - print("Could not find libfuse3.a") - return [] - - def scons(): """Scons function""" @@ -229,14 +213,8 @@ def scons(): cenv.AppendUnique(LIBS=['dfs', 'duns']) cenv.require('hwloc') - if cenv.get('STATIC_FUSE'): - cenv.require('fuse', headers_only=True) - static_fuse = find_static_fuse(cenv) - extra_libs = ['dl'] - else: - cenv.require('fuse') - static_fuse = [] - extra_libs = ['dl'] + cenv.require('fused') + extra_libs = ['dl'] configure_fuse(cenv) @@ -246,7 +224,7 @@ def scons(): for src in OPS_SRC: dfuse_obj += cenv.Object(os.path.join('ops', f'{src}.c')) cenv.AppendUnique(LIBS=['gurt'] + extra_libs) - dfuse_bin = cenv.d_program('dfuse/dfuse', common + dfuse_obj + static_fuse) + dfuse_bin = cenv.d_program('dfuse/dfuse', common + dfuse_obj) Default(dfuse_bin) diff --git a/src/client/dfuse/dfuse.h b/src/client/dfuse/dfuse.h index 350323dbecb..2fe14f26d22 100644 --- a/src/client/dfuse/dfuse.h +++ b/src/client/dfuse/dfuse.h @@ -9,8 +9,8 @@ #include -#include -#include +#include +#include #include #include diff --git a/src/client/dfuse/dfuse_fuseops.c b/src/client/dfuse/dfuse_fuseops.c index dcf7fadfa85..c115d6c69b2 100644 --- a/src/client/dfuse/dfuse_fuseops.c +++ b/src/client/dfuse/dfuse_fuseops.c @@ -4,7 +4,7 @@ * SPDX-License-Identifier: BSD-2-Clause-Patent */ -#include +#include #include "dfuse_common.h" #include "dfuse.h" diff --git a/src/client/dfuse/dfuse_main.c b/src/client/dfuse/dfuse_main.c index a8b5b0e45ef..d697bb58909 100644 --- a/src/client/dfuse/dfuse_main.c +++ b/src/client/dfuse/dfuse_main.c @@ -8,8 +8,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff --git a/src/client/dfuse/dfuse_thread.c b/src/client/dfuse/dfuse_thread.c index d4036a32c58..e3885363400 100644 --- a/src/client/dfuse/dfuse_thread.c +++ b/src/client/dfuse/dfuse_thread.c @@ -6,7 +6,7 @@ #include -#include +#include #define D_LOGFAC DD_FAC(dfuse) #include "dfuse.h" diff --git a/utils/build.config b/utils/build.config index ba1a33793a3..a2ba8ea21e6 100644 --- a/utils/build.config +++ b/utils/build.config @@ -3,7 +3,7 @@ component=daos [commit_versions] ARGOBOTS = v1.1 -FUSE = fuse-3.16.2 +FUSED = master PMDK = 2.0.0 ISAL = v2.30.0 ISAL_CRYPTO = v2.23.0 @@ -17,4 +17,3 @@ UCX=v1.14.1 spdk=https://github.com/spdk/spdk/commit/b0aba3fcd5aceceea530a702922153bc75664978.diff,https://github.com/spdk/spdk/commit/445a4c808badbad3942696ecf16fa60e8129a747.diff ofi=https://github.com/ofiwg/libfabric/commit/d827c6484cc5bf67dfbe395890e258860c3f0979.diff mercury=https://raw.githubusercontent.com/daos-stack/mercury/857f1d5d2ca72d4c1b8d7be5e7fd26d6292b495f/na_ucx_am_send_retry.patch -fuse=https://github.com/libfuse/libfuse/commit/c9905341ea34ff9acbc11b3c53ba8bcea35eeed8.diff diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index 16ac6ba9375..eb90ccc2538 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -15,7 +15,7 @@ Name: daos Version: 2.5.101 -Release: 2%{?relval}%{?dist} +Release: 3%{?relval}%{?dist} Summary: DAOS Storage Engine License: BSD-2-Clause-Patent @@ -51,9 +51,9 @@ BuildRequires: boost-devel %endif BuildRequires: libpmemobj-devel >= 2.0.0 %if (0%{?rhel} >= 8) -BuildRequires: fuse3-devel >= 3 +BuildRequires: fused-devel >= 1 %else -BuildRequires: fuse3-devel >= 3.4.2 +BuildRequires: fused-devel >= 1 %endif %if (0%{?suse_version} >= 1500) BuildRequires: go-race @@ -175,7 +175,7 @@ Requires: mercury >= %{mercury_version} Requires: libfabric >= %{libfabric_version} %if (0%{?suse_version} >= 1500) Requires: libfabric1 >= %{libfabric_version} -Requires: libfuse3-3 >= 3.4.2 +Requires: fused >= 1 %endif Requires: /usr/bin/fusermount3 %{?systemd_requires} @@ -225,11 +225,7 @@ Requires: libcapstone-devel Requires: Lmod Requires: capstone-devel %endif -%if (0%{?rhel} >= 8) -Requires: fuse3-devel >= 3 -%else -Requires: fuse3-devel >= 3.4.2 -%endif +Requires: fused >= 1 %description client-tests This is the package needed to run the DAOS test suite (client tests) @@ -587,6 +583,9 @@ getent passwd daos_agent >/dev/null || useradd -s /sbin/nologin -r -g daos_agent # No files in a shim package %changelog +* Wed Mar 27 2024 Jeff Olivier 2.5.101-3 +- Switch libfuse3 to libfused + * Mon Mar 18 2024 Jan Michalski 2.5.101-2 - Add dtx_tests to the server-tests package From 20bf3b6c3a256f1f63d36a2db95e4b0ff822e879 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 28 Mar 2024 10:09:27 -0600 Subject: [PATCH 02/28] PR-repos: fused@1:28 Required-githooks: true Change-Id: Icdd7235f8a93363ee7cc33a1adb5e3c43956c4aa Signed-off-by: Jeff Olivier From 1cff4e9cf1639ed05bc6236c3ff9fc52a713f562 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 28 Mar 2024 10:54:22 -0600 Subject: [PATCH 03/28] Fix whitespace issue PR-repos: fused@PR-1:28 Required-githooks: true Change-Id: I089ba37ac48df60b27abbd4ca92d54fe7615ec44 Signed-off-by: Jeff Olivier --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/control b/debian/control index 61ff273f9c0..40b703addff 100644 --- a/debian/control +++ b/debian/control @@ -19,7 +19,7 @@ Build-Depends: debhelper (>= 10), libabt-dev, libucx-dev, libpmemobj-dev (>= 2.0.0), - libfused-dev, + libfused-dev, libprotobuf-c-dev, libjson-c-dev, dpdk-dev (>= 21.11.2), From 28e84790533f35ff298a0adf90c41d06f05d210b Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Fri, 5 Apr 2024 09:02:56 -0600 Subject: [PATCH 04/28] PR-repos: fused@PR-1:28 Required-githooks: true Skipped-githooks: Jenkins Change-Id: I2eaff4da3903f07b6b331209a92d6802de93f3a7 Signed-off-by: Jeff Olivier From 1a37b21c75e0b034b0020bda97cd1c0bb4ed0ac2 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 25 Apr 2024 13:25:15 -0600 Subject: [PATCH 05/28] fix bad merge Required-githooks: true Signed-off-by: Jeff Olivier --- debian/changelog | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 476541f8f61..77e39cb4a49 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,7 +9,6 @@ daos (2.5.101-3) unstable; urgency=medium * Updated pydaos install process -- Ashley M. Pittman Thu, 04 Apr 2024 09:15:00 -0800 ->>>>>>> master daos (2.5.101-2) unstable; urgency=medium [ Jan Michalski ] From 22ac59166134ddba5b608512269e88b0a1572370 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 25 Apr 2024 13:31:11 -0600 Subject: [PATCH 06/28] PR-repos: fused@PR-1:29 Required-githooks: true Signed-off-by: Jeff Olivier From 926f43aab1b1c129b10d3b0d2be6e1348fb3d08d Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Thu, 25 Apr 2024 21:21:48 +0000 Subject: [PATCH 07/28] DAOS-15753 dfuse: Do not deadlock when failing to mount. Signed-off-by: Ashley Pittman --- src/client/dfuse/dfuse_core.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/client/dfuse/dfuse_core.c b/src/client/dfuse/dfuse_core.c index dad3a467bff..4f654fa3209 100644 --- a/src/client/dfuse/dfuse_core.c +++ b/src/client/dfuse/dfuse_core.c @@ -1517,6 +1517,8 @@ dfuse_fs_start(struct dfuse_info *dfuse_info, struct dfuse_cont *dfs) } err_threads: + dfuse_info->di_shutdown = true; + for (int i = 0; i < dfuse_info->di_eq_count; i++) { struct dfuse_eq *eqt = &dfuse_info->di_eqt[i]; From 2a8ff90b5c1cd39e9c0af917cd1a1f7fe01e8bb7 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 25 Apr 2024 15:39:56 -0600 Subject: [PATCH 08/28] PR-repos: fused@PR-1:29 Try setting memcheck default to no Required-githooks: true Signed-off-by: Jeff Olivier --- utils/node_local_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index b6018e90b3e..2324ba4feac 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6502,7 +6502,7 @@ def main(): parser.add_argument('--dfuse-debug', default=None) parser.add_argument('--client-debug', default=None) parser.add_argument('--class-name', default=None, help='class name to use for junit') - parser.add_argument('--memcheck', default='some', choices=['yes', 'no', 'some']) + parser.add_argument('--memcheck', default='no', choices=['yes', 'no', 'some']) parser.add_argument('--server-valgrind', action='store_true') parser.add_argument('--server-fi', action='store_true', help='Run server fault injection test') parser.add_argument('--multi-user', action='store_true') From e991acb927cc8f2750eeada4cc9691289eabfbfe Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 20:24:50 -0700 Subject: [PATCH 09/28] Empty commit for pragmas Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier From 18b1e5e56502797aae4cd5578ac96ae5176056c9 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 20:28:16 -0700 Subject: [PATCH 10/28] Remove the sed Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier --- site_scons/components/__init__.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/site_scons/components/__init__.py b/site_scons/components/__init__.py index ca85f7b3a0d..8869f20d453 100644 --- a/site_scons/components/__init__.py +++ b/site_scons/components/__init__.py @@ -309,9 +309,7 @@ def define_components(reqs): reqs.define('fused', libs=['fused'], defines=['FUSE_USE_VERSION=35'], retriever=GitRepoRetriever('https://github.com/daos-stack/fused.git'), - commands=[['find', '../fused', '-type', 'f', '-name', '*', '-exec', 'sed', '-i', - 's/fuse3/fused/g', '{}', ';'], - ['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', + commands=[['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', '-Dudevrulesdir=$FUSED_PREFIX/udev', '-Dutils=False', '--default-library', 'shared', '../fused'], ['ninja', 'install']], From a397c1ee565a78dfb664675c78649f83f3e3a75e Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 20:52:54 -0700 Subject: [PATCH 11/28] Fix a few more issues Required-githooks: true Features: dfuse Signed-off-by: Jeff Olivier --- site_scons/components/__init__.py | 2 +- src/client/dfuse/SConscript | 4 +--- utils/build.config | 2 +- utils/rpms/daos.spec | 6 +----- 4 files changed, 4 insertions(+), 10 deletions(-) diff --git a/site_scons/components/__init__.py b/site_scons/components/__init__.py index 8869f20d453..2595ed154db 100644 --- a/site_scons/components/__init__.py +++ b/site_scons/components/__init__.py @@ -308,7 +308,7 @@ def define_components(reqs): out_of_src_build=True) reqs.define('fused', libs=['fused'], defines=['FUSE_USE_VERSION=35'], - retriever=GitRepoRetriever('https://github.com/daos-stack/fused.git'), + retriever=GitRepoRetriever(), commands=[['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', '-Dudevrulesdir=$FUSED_PREFIX/udev', '-Dutils=False', '--default-library', 'shared', '../fused'], diff --git a/src/client/dfuse/SConscript b/src/client/dfuse/SConscript index 952b342a14c..c699dd2acbb 100644 --- a/src/client/dfuse/SConscript +++ b/src/client/dfuse/SConscript @@ -178,10 +178,8 @@ def configure_fuse(cenv): if check.CheckFuseIoctl('unsigned int'): pass - elif check.CheckFuseIoctl('int'): - cenv.AppendUnique(CPPDEFINES={'FUSE_IOCTL_USE_INT': '1'}) else: - print('Could not determine type of fuse ioctl type') + print('Expected unsigned int ioctl type') Exit(2) check.Finish() diff --git a/utils/build.config b/utils/build.config index da92662ee65..0244da0e8d3 100644 --- a/utils/build.config +++ b/utils/build.config @@ -15,7 +15,7 @@ ucx=v1.14.1 [repos] argobots=https://github.com/pmodels/argobots.git -fuse=https://github.com/daos-stack/fused.git +fused=https://github.com/daos-stack/fused.git pmdk=https://github.com/pmem/pmdk.git isal=https://github.com/intel/isa-l.git isal_crypto=https://github.com/intel/isa-l_crypto.git diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index ea83ad13fd2..c777818a725 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -51,11 +51,7 @@ BuildRequires: libjson-c-devel BuildRequires: boost-devel %endif BuildRequires: libpmemobj-devel >= 2.1.0 -%if (0%{?rhel} >= 8) -BuildRequires: fused-devel >= 1 -%else -BuildRequires: fused-devel >= 1 -%endif +BuildRequires: fused-devel %if (0%{?suse_version} >= 1500) BuildRequires: go-race BuildRequires: libprotobuf-c-devel From dc5d340d71fdee4d908b95438fad7c51bec65db9 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 21:22:48 -0700 Subject: [PATCH 12/28] Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier --- src/client/dfuse/dfuse_fuseops.c | 2 +- src/client/dfuse/dfuse_thread.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client/dfuse/dfuse_fuseops.c b/src/client/dfuse/dfuse_fuseops.c index 36da3bfba80..a196c652933 100644 --- a/src/client/dfuse/dfuse_fuseops.c +++ b/src/client/dfuse/dfuse_fuseops.c @@ -1,5 +1,5 @@ /** - * (C) Copyright 2016-2023 Intel Corporation. + * (C) Copyright 2016-2024 Intel Corporation. * * SPDX-License-Identifier: BSD-2-Clause-Patent */ diff --git a/src/client/dfuse/dfuse_thread.c b/src/client/dfuse/dfuse_thread.c index 021044543f5..1e820d49f32 100644 --- a/src/client/dfuse/dfuse_thread.c +++ b/src/client/dfuse/dfuse_thread.c @@ -1,5 +1,5 @@ /** - * (C) Copyright 2020-2023 Intel Corporation. + * (C) Copyright 2020-2024 Intel Corporation. * * SPDX-License-Identifier: BSD-2-Clause-Patent */ From 85041ed60b787b1a74f218270ab330d2832cf135 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 21:25:33 -0700 Subject: [PATCH 13/28] Clean up rpm dependencies Required-githooks: true Signed-off-by: Jeff Olivier --- utils/rpms/daos.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index c777818a725..f072e7b7253 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -167,7 +167,6 @@ Requires: mercury >= %{mercury_version} Requires: libfabric >= %{libfabric_version} %if (0%{?suse_version} >= 1500) Requires: libfabric1 >= %{libfabric_version} -Requires: fused >= 1 %endif Requires: /usr/bin/fusermount3 %{?systemd_requires} @@ -215,7 +214,6 @@ Requires: libcapstone-devel Requires: Lmod Requires: capstone-devel %endif -Requires: fused >= 1 Requires: pciutils-devel %if (0%{?suse_version} > 0) Requires: libndctl-devel From 0ed4c7c148152fda99e6f187c119f0d47f9e9401 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 19 Dec 2024 22:15:16 -0700 Subject: [PATCH 14/28] empty commit for test Features: dfuse Allow-unstable-test: true Required-githooks: true Signed-off-by: Jeff Olivier From 4b266cf3bbf040f2b5451920529a3d065455a9a4 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Fri, 20 Dec 2024 08:32:07 -0700 Subject: [PATCH 15/28] Add back valgrind testing Features: dfuse Allow-unstable-test: true Required-githooks: true Signed-off-by: Jeff Olivier --- utils/node_local_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index d92ee33ec89..727f2214ecf 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6798,7 +6798,7 @@ def main(): parser.add_argument('--dfuse-debug', default=None) parser.add_argument('--client-debug', default=None) parser.add_argument('--class-name', default=None, help='class name to use for junit') - parser.add_argument('--memcheck', default='no', choices=['yes', 'no', 'some']) + parser.add_argument('--memcheck', default='some', choices=['yes', 'no', 'some']) parser.add_argument('--server-valgrind', action='store_true') parser.add_argument('--server-fi', action='store_true', help='Run server fault injection test') parser.add_argument('--multi-user', action='store_true') From 3f3a39729d6dd34d6682221f169cf85e0c470681 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Fri, 20 Dec 2024 08:33:13 -0700 Subject: [PATCH 16/28] fix typo Allow-unstable-test: true Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier --- debian/changelog | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 9475ef7e1a0..484b32f3533 100644 --- a/debian/changelog +++ b/debian/changelog @@ -102,7 +102,6 @@ daos (2.5.101-5) unstable; urgency=medium -- Lei Huang Fri, 03 May 2024 16:40:00 -0600 daos (2.5.101-4) unstable; urgency=medium ->>>>>>> master [ Fan Yong ] * NOOP change to keep in parity with RPM version From 515b136e6e031e31f16e9d61a26ad1294ad58264 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Fri, 20 Dec 2024 17:02:05 -0700 Subject: [PATCH 17/28] Try again Allow-unstable-test: true Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier --- site_scons/components/__init__.py | 1 + utils/build.config | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/site_scons/components/__init__.py b/site_scons/components/__init__.py index 2595ed154db..bfb7e35ced8 100644 --- a/site_scons/components/__init__.py +++ b/site_scons/components/__init__.py @@ -312,6 +312,7 @@ def define_components(reqs): commands=[['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', '-Dudevrulesdir=$FUSED_PREFIX/udev', '-Dutils=False', '--default-library', 'shared', '../fused'], + ['meson', 'setup', '--reconfigure', '../fused'], ['ninja', 'install']], headers=['fused/fuse.h'], required_progs=['libtoolize', 'ninja', 'meson'], diff --git a/utils/build.config b/utils/build.config index 0244da0e8d3..94534d6af64 100644 --- a/utils/build.config +++ b/utils/build.config @@ -3,7 +3,7 @@ component=daos [commit_versions] argobots=v1.2 -fused=v1.0.0-rc1 +fused=v1.0.0-rc2 pmdk=2.1.0 isal=v2.30.0 isal_crypto=v2.23.0 From 7585023003122342fb22cf7b92ae059c44c170f5 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Fri, 20 Dec 2024 22:03:18 -0700 Subject: [PATCH 18/28] Add missing FUSE_CAP for printing Allow-unstable-test: true Features: dfuse Required-githooks: true Signed-off-by: Jeff Olivier --- src/client/dfuse/dfuse_fuseops.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/client/dfuse/dfuse_fuseops.c b/src/client/dfuse/dfuse_fuseops.c index a196c652933..9bf772c4fc0 100644 --- a/src/client/dfuse/dfuse_fuseops.c +++ b/src/client/dfuse/dfuse_fuseops.c @@ -44,16 +44,15 @@ dfuse_show_flags(void *handle, unsigned int cap, unsigned int want) SHOW_FLAG(handle, cap, want, FUSE_CAP_PARALLEL_DIROPS); SHOW_FLAG(handle, cap, want, FUSE_CAP_POSIX_ACL); SHOW_FLAG(handle, cap, want, FUSE_CAP_HANDLE_KILLPRIV); - -#ifdef FUSE_CAP_CACHE_SYMLINKS + SHOW_FLAG(handle, cap, want, FUSE_CAP_HANDLE_KILLPRIV_V2); SHOW_FLAG(handle, cap, want, FUSE_CAP_CACHE_SYMLINKS); -#endif -#ifdef FUSE_CAP_NO_OPENDIR_SUPPORT SHOW_FLAG(handle, cap, want, FUSE_CAP_NO_OPENDIR_SUPPORT); -#endif -#ifdef FUSE_CAP_EXPLICIT_INVAL_DATA SHOW_FLAG(handle, cap, want, FUSE_CAP_EXPLICIT_INVAL_DATA); -#endif + SHOW_FLAG(handle, cap, want, FUSE_CAP_EXPIRE_ONLY); + SHOW_FLAG(handle, cap, want, FUSE_CAP_SETXATTR_EXT); + SHOW_FLAG(handle, cap, want, FUSE_CAP_DIRECT_IO_ALLOW_MMAP); + SHOW_FLAG(handle, cap, want, FUSE_CAP_PASSTHROUGH); + SHOW_FLAG(handle, cap, want, FUSE_CAP_NO_EXPORT_SUPPORT); if (cap) DFUSE_TRA_WARNING(handle, "Unknown capability flags %#x", cap); From 6fd013cf0aa05fc996261ca3ed7cf690c3a8b2d0 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 26 Dec 2024 09:02:09 -0700 Subject: [PATCH 19/28] Merge master again now that jenkins is back Allow-unstable-test: true Features: dfuse Signed-off-by: Jeff Olivier From c3c65a9e89afa16719fb79733a0eaeb8c03bea7a Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Tue, 7 Jan 2025 08:42:29 -0700 Subject: [PATCH 20/28] Test again Features: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From f0002f9db971f31855e91014a02f681bd22c29c3 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Wed, 8 Jan 2025 09:49:00 -0700 Subject: [PATCH 21/28] Features: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From fad1a2dc233130668395a88fad41ec5fc5534e58 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Thu, 9 Jan 2025 08:03:41 -0700 Subject: [PATCH 22/28] empty commit to retest Features: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From 57522610e2528bf48dc05fe9443230b29d16b1e1 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Sat, 11 Jan 2025 16:58:42 -0700 Subject: [PATCH 23/28] Use static library Features: dfuse Allow-unstable-build: true Signed-off-by: Jeff Olivier --- site_scons/components/__init__.py | 3 ++- utils/build.config | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/site_scons/components/__init__.py b/site_scons/components/__init__.py index bfb7e35ced8..d414f7d874c 100644 --- a/site_scons/components/__init__.py +++ b/site_scons/components/__init__.py @@ -1,4 +1,5 @@ # Copyright 2016-2024 Intel Corporation +# Copyright 2025 Hewlett Packard Enterprise Development LP # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -311,7 +312,7 @@ def define_components(reqs): retriever=GitRepoRetriever(), commands=[['meson', 'setup', '--prefix=$FUSED_PREFIX', '-Ddisable-mtab=True', '-Dudevrulesdir=$FUSED_PREFIX/udev', '-Dutils=False', - '--default-library', 'shared', '../fused'], + '--default-library', 'static', '../fused'], ['meson', 'setup', '--reconfigure', '../fused'], ['ninja', 'install']], headers=['fused/fuse.h'], diff --git a/utils/build.config b/utils/build.config index 94534d6af64..712082823d7 100644 --- a/utils/build.config +++ b/utils/build.config @@ -3,7 +3,7 @@ component=daos [commit_versions] argobots=v1.2 -fused=v1.0.0-rc2 +fused=v1.0.0-rc3 pmdk=2.1.0 isal=v2.30.0 isal_crypto=v2.23.0 From 02e8a790794cc3b7ecccbbd6a5eeed71856d5bce Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Sat, 11 Jan 2025 17:25:06 -0700 Subject: [PATCH 24/28] Empty commit to retest Features: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From 3487bc685e97dfd68eecf9bc5c15c743926ae9bd Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Sat, 11 Jan 2025 18:03:33 -0700 Subject: [PATCH 25/28] Try again to see if it picks up #4 Features: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From 0f3267e8aa357ca957f7e67c3f93b19a32a79513 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Sun, 12 Jan 2025 16:10:38 -0700 Subject: [PATCH 26/28] Test with static library Test-tag: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From dae46c8c1cd345e7aedc7d0881ba57deb09e0103 Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Sun, 12 Jan 2025 23:15:39 -0700 Subject: [PATCH 27/28] Test-tag: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier From 9937f33eac73e24f317edf11131901b3e5c6d0ba Mon Sep 17 00:00:00 2001 From: Jeff Olivier Date: Tue, 14 Jan 2025 08:37:34 -0700 Subject: [PATCH 28/28] Retest after sync Test-tag: dfuse Allow-unstable-test: true Signed-off-by: Jeff Olivier