Skip to content

Commit

Permalink
Merge branch 'master' into daos-16639
Browse files Browse the repository at this point in the history
  • Loading branch information
wangdi1 committed Oct 14, 2024
2 parents a8b8b3a + 032849e commit 9ed40c0
Show file tree
Hide file tree
Showing 29 changed files with 1,291 additions and 887 deletions.
1 change: 1 addition & 0 deletions .github/workflows/landing-builds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ on:
- ci/**
- requirements-build.txt
- requirements-utest.txt
- utils/build.config

permissions: {}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ossf-scorecard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
persist-credentials: false

- name: "Run analysis"
uses: ossf/scorecard-action@0864cf19026789058feabb7e87baa5f140aac736 # v2.3.1
uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0
with:
results_file: results.sarif
results_format: sarif
Expand Down
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Copyright 2021-2022 Intel Corporation.
BSD-2-Clause Plus Patent License

SPDX-License-Identifier: BSD-2-Clause-Patent
Copyright 2021-2024 Intel Corporation.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
6 changes: 5 additions & 1 deletion ci/doc_only_change.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,9 @@ if ! merge_base="$(git merge-base "FETCH_HEAD" HEAD)"; then
# nothing to do here except exit as if it's not a doc-only change
exit 0
fi
if ! git diff --no-commit-id --name-only "$merge_base" HEAD | grep -q -e ".*"; then
echo "No changes detected, full validation is expected"
exit 0
fi
git diff --no-commit-id --name-only "$merge_base" HEAD | \
grep -v -e "^docs/" -e "\.md$"
grep -v -e "^docs/" -e "\.md$" -e "^.*LICENSE.*$"
16 changes: 16 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
daos (2.7.100-7) unstable; urgency=medium
[ Tomasz Gromadzki ]
* Add support of the PMDK package 2.1.0 with NDCTL enabled.
* Increase the default ULT stack size to 20KiB if the engine uses
the DCPM storage class.
* Prevent using the RAM storage class (simulated PMem) when
the shutdown state (SDS) is active.
* Automatically disable SDS for the RAM storage class on engine startup.
* Force explicitly setting the PMEMOBJ_CONF='sds.at_create=0'
environment variable to deactivate SDS for the DAOS tools
(ddb, daos_perf, vos_perf, etc.) when used WITHOUT DCPM.
Otherwise, a user is supposed to be stopped by an error
like: "Unsafe shutdown count is not supported for this source".

-- Tomasz Gromadzki <tomasz.gromadzki@intel.com> Tue, 02 Oct 2024 12:00:00 +0200

daos (2.7.100-6) unstable; urgency=medium
[ Kris Jacque ]
* Bump minimum golang-go version to 1.21
Expand Down
6 changes: 4 additions & 2 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Build-Depends: debhelper (>= 10),
python3-distro,
libabt-dev,
libucx-dev,
libpmemobj-dev (>= 2.0.0),
libpmemobj-dev (>= 2.1.0),
libfuse3-dev,
libprotobuf-c-dev,
libjson-c-dev,
Expand Down Expand Up @@ -118,7 +118,9 @@ Depends: python (>=3.8), python3, python-yaml, python3-yaml,
daos-client (= ${binary:Version}),
daos-admin (= ${binary:Version}),
golang-go (>= 2:1.21),
libcapstone-dev
libcapstone-dev,
libndctl-dev,
libdaxctl-dev
Description: The Distributed Asynchronous Object Storage (DAOS) is an open-source
software-defined object store designed from the ground up for
massively distributed Non Volatile Memory (NVM). DAOS takes advantage
Expand Down
1 change: 0 additions & 1 deletion site_scons/components/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,6 @@ def define_components(reqs):
retriever=GitRepoRetriever(),
commands=[['make',
'all',
'NDCTL_ENABLE=n',
'BUILD_EXAMPLES=n',
'BUILD_BENCHMARKS=n',
'DOC=n',
Expand Down
67 changes: 37 additions & 30 deletions src/chk/chk_vos.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,20 @@ chk_db_fetch(char *key, int key_size, void *val, int val_size)
{
d_iov_t key_iov;
d_iov_t val_iov;
int rc;

d_iov_set(&key_iov, key, key_size);
d_iov_set(&val_iov, val, val_size);

return chk_db->sd_fetch(chk_db, CHK_DB_TABLE, &key_iov, &val_iov);
if (chk_db->sd_lock)
chk_db->sd_lock(chk_db);

rc = chk_db->sd_fetch(chk_db, CHK_DB_TABLE, &key_iov, &val_iov);

if (chk_db->sd_unlock)
chk_db->sd_unlock(chk_db);

return rc;
}

static int
Expand All @@ -33,21 +42,17 @@ chk_db_update(char *key, int key_size, void *val, int val_size)
d_iov_t val_iov;
int rc;

if (chk_db->sd_tx_begin) {
rc = chk_db->sd_tx_begin(chk_db);
if (rc != 0)
goto out;
}

d_iov_set(&key_iov, key, key_size);
d_iov_set(&val_iov, val, val_size);

if (chk_db->sd_lock)
chk_db->sd_lock(chk_db);

rc = chk_db->sd_upsert(chk_db, CHK_DB_TABLE, &key_iov, &val_iov);

if (chk_db->sd_tx_end)
rc = chk_db->sd_tx_end(chk_db, rc);
if (chk_db->sd_unlock)
chk_db->sd_unlock(chk_db);

out:
return rc;
}

Expand All @@ -57,27 +62,33 @@ chk_db_delete(char *key, int key_size)
d_iov_t key_iov;
int rc;

if (chk_db->sd_tx_begin) {
rc = chk_db->sd_tx_begin(chk_db);
if (rc != 0)
goto out;
}

d_iov_set(&key_iov, key, key_size);

if (chk_db->sd_lock)
chk_db->sd_lock(chk_db);

rc = chk_db->sd_delete(chk_db, CHK_DB_TABLE, &key_iov);

if (chk_db->sd_tx_end)
rc = chk_db->sd_tx_end(chk_db, rc);
if (chk_db->sd_unlock)
chk_db->sd_unlock(chk_db);

out:
return rc;
}

static int
chk_db_traverse(sys_db_trav_cb_t cb, void *args)
{
return chk_db->sd_traverse(chk_db, CHK_DB_TABLE, cb, args);
int rc;

if (chk_db->sd_lock)
chk_db->sd_lock(chk_db);

rc = chk_db->sd_traverse(chk_db, CHK_DB_TABLE, cb, args);

if (chk_db->sd_unlock)
chk_db->sd_unlock(chk_db);

return rc;
}

int
Expand Down Expand Up @@ -243,11 +254,8 @@ chk_prop_update(struct chk_property *cpp, d_rank_list_t *rank_list)
d_iov_t val_iov;
int rc;

if (chk_db->sd_tx_begin) {
rc = chk_db->sd_tx_begin(chk_db);
if (rc != 0)
goto out;
}
if (chk_db->sd_lock)
chk_db->sd_lock(chk_db);

if (cpp->cp_rank_nr != 0 && rank_list != NULL) {
D_ASSERTF(cpp->cp_rank_nr == rank_list->rl_nr, "Invalid rank nr %u/%u\n",
Expand All @@ -259,19 +267,18 @@ chk_prop_update(struct chk_property *cpp, d_rank_list_t *rank_list)

rc = chk_db->sd_upsert(chk_db, CHK_DB_TABLE, &key_iov, &val_iov);
if (rc != 0)
goto end;
goto out;
}

d_iov_set(&key_iov, CHK_PROPERTY, strlen(CHK_PROPERTY));
d_iov_set(&val_iov, cpp, sizeof(*cpp));

rc = chk_db->sd_upsert(chk_db, CHK_DB_TABLE, &key_iov, &val_iov);

end:
if (chk_db->sd_tx_end)
rc = chk_db->sd_tx_end(chk_db, rc);

out:
if (chk_db->sd_unlock)
chk_db->sd_unlock(chk_db);

if (rc != 0)
D_ERROR("Failed to update check property on rank %u: "DF_RC"\n",
dss_self_rank(), DP_RC(rc));
Expand Down
14 changes: 10 additions & 4 deletions src/client/dfuse/pil4dfs/int_dfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -6302,6 +6302,14 @@ new_mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset)

atomic_fetch_add_relaxed(&num_mmap, 1);

if ((fd < FD_FILE_BASE) && (fd_directed >= FD_FILE_BASE) && d_compatible_mode) {
/* DAOS-14494: Force the kernel to update the size before mapping. */
rc = next_fxstat(1, fd, &stat_buf);
if (rc == -1)
return MAP_FAILED;
return next_mmap(addr, length, prot, flags, fd, offset);
}

addr_ret = next_mmap(addr, length, prot, flags | MAP_ANONYMOUS, -1, offset);
if (addr_ret == MAP_FAILED)
return MAP_FAILED;
Expand Down Expand Up @@ -7086,10 +7094,8 @@ init_myhook(void)

register_a_hook("libc", "fcntl", (void *)new_fcntl, (long int *)(&libc_fcntl));

if (d_compatible_mode == false) {
register_a_hook("libc", "mmap", (void *)new_mmap, (long int *)(&next_mmap));
register_a_hook("libc", "munmap", (void *)new_munmap, (long int *)(&next_munmap));
}
register_a_hook("libc", "mmap", (void *)new_mmap, (long int *)(&next_mmap));
register_a_hook("libc", "munmap", (void *)new_munmap, (long int *)(&next_munmap));

register_a_hook("libc", "exit", (void *)new_exit, (long int *)(&next_exit));
register_a_hook("libc", "dup3", (void *)new_dup3, (long int *)(&libc_dup3));
Expand Down
2 changes: 1 addition & 1 deletion src/client/java/hadoop-daos/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<packaging>jar</packaging>

<properties>
<hadoop.version>3.3.6</hadoop.version>
<hadoop.version>3.4.0</hadoop.version>
<native.build.path>${project.basedir}/build</native.build.path>
<daos.install.path>${project.basedir}/install</daos.install.path>
</properties>
Expand Down
4 changes: 3 additions & 1 deletion src/common/lru.c
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,9 @@ void
daos_lru_ref_release(struct daos_lru_cache *lcache, struct daos_llink *llink)
{
D_ASSERT(lcache != NULL && llink != NULL && llink->ll_ref > 1);
D_ASSERT(d_list_empty(&llink->ll_qlink));
D_ASSERTF(d_list_empty(&llink->ll_qlink),
"May hit corrupted item in LRU cache %p: llink %p, refs %d, prev %p, next %p\n",
lcache, llink, llink->ll_ref, llink->ll_qlink.prev, llink->ll_qlink.next);

lru_hop_rec_decref(&lcache->dlc_htable, &llink->ll_link);

Expand Down
Loading

0 comments on commit 9ed40c0

Please sign in to comment.