Skip to content

Commit

Permalink
Merge branch 'master' into feature/vos_on_blob_p2
Browse files Browse the repository at this point in the history
Required-githooks: true
  • Loading branch information
NiuYawei committed May 23, 2024
2 parents cae6592 + 6bbfb3c commit 4753dde
Show file tree
Hide file tree
Showing 294 changed files with 7,575 additions and 5,792 deletions.
21 changes: 18 additions & 3 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
- name: Checkout code
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Check DAOS ftest tags.
run: \[ ! -x src/tests/ftest/tags.py \] || ./src/tests/ftest/tags.py lint
run: \[ ! -x src/tests/ftest/tags.py \] || ./src/tests/ftest/tags.py lint --verbose

flake8-lint:
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -105,7 +105,7 @@ jobs:
max-line-length: '100'
args: '--filename */SConscript, SConstruct'

Doxygen:
doxygen:
name: Doxygen
runs-on: ubuntu-22.04
steps:
Expand Down Expand Up @@ -146,7 +146,7 @@ jobs:
- name: Run pylint check.
run: ./utils/cq/daos_pylint.py --git --output-format github

Codespell:
codespell:
name: Codespell
runs-on: ubuntu-22.04
steps:
Expand All @@ -160,3 +160,18 @@ jobs:
skip: ./src/control/vendor,./src/control/go.sum,./.git
ignore_words_file: ci/codespell.ignores
builtin: clear,rare,informal,names,en-GB_to_en-US

linting-summary:
name: Linting Summary
runs-on: ubuntu-22.04
needs: [isort, shell-check, log-check, ftest-tags, flake8-lint, doxygen, pylint, codespell]
if: (!cancelled())
steps:
- name: Check if any job failed
run: |
if [[ -z "$(echo "${{ join(needs.*.result, '') }}" | sed -e 's/success//g')" ]]; then
echo "All jobs succeeded"
else
echo "One or more jobs did not succeed"
exit 1
fi
10 changes: 5 additions & 5 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -273,22 +273,22 @@ pipeline {
booleanParam(name: 'CI_medium_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Medium test stage')
booleanParam(name: 'CI_medium-md-on-ssd_TEST',
booleanParam(name: 'CI_medium_md_on_ssd_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Medium MD on SSD test stage')
booleanParam(name: 'CI_medium-verbs-provider_TEST',
booleanParam(name: 'CI_medium_verbs_provider_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Medium Verbs Provider test stage')
booleanParam(name: 'CI_medium-verbs-provider-md-on-ssd_TEST',
booleanParam(name: 'CI_medium_verbs_provider_md_on_ssd_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Medium Verbs Provider MD on SSD test stage')
booleanParam(name: 'CI_medium-ucx-provider_TEST',
booleanParam(name: 'CI_medium_ucx_provider_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Medium UCX Provider test stage')
booleanParam(name: 'CI_large_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Large test stage')
booleanParam(name: 'CI_large-md-on-ssd_TEST',
booleanParam(name: 'CI_large_md_on_ssd_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Large MD on SSD test stage')
string(name: 'CI_UNIT_VM1_LABEL',
Expand Down
2 changes: 1 addition & 1 deletion TAG
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.5.101-tb
2.7.100-tb
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.5.101
2.7.100
2 changes: 1 addition & 1 deletion ci/jira_query.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
# valid. We've never checked/enforced these before so there have been a lot of values used in the
# past.
VALID_COMPONENTS = ('agent', 'build', 'ci', 'csum', 'doc', 'gha', 'il', 'md', 'mercury',
'packaging', 'pil4dfs', 'swim', 'test', 'tools')
'packaging', 'pil4dfs', 'swim', 'test', 'tools', 'ddb')

# Expected ticket prefix.
VALID_TICKET_PREFIX = ('DAOS', 'CORCI', 'SRE')
Expand Down
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
daos (2.7.100-1) unstable; urgency=medium
[ Phillip Henderson ]
* Bump version to 2.7.100

-- Phillip Henderson <phillip.henderson@intel.com> Mon, 20 May 2024 12:37:00 -0500

daos (2.5.101-5) unstable; urgency=medium
[ Lei Huang ]
* Add libaio as a dependent package
Expand Down
4 changes: 2 additions & 2 deletions docs/admin/common_tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This section describes some of the common tasks handled by admins at a high leve
4. Generate certificate files.
5. Copy one of the example configs from `utils/config/examples` to
`/etc/daos` and adjust it based on the environment. E.g., `access_points`,
`bdev_class`.
`class`.
6. Check that the directory where the log files will be created exists. E.g.,
`control_log_file`, `log_file` field in `engines` section.
7. Start `daos_server`.
Expand Down Expand Up @@ -38,7 +38,7 @@ to server hosts and `daos-client` to client hosts.
4. Generate certificate files and distribute them to all the hosts.
5. Copy one of the example configs from `utils/config/examples` to
`/etc/daos` of one of the server hosts and adjust it based on the environment.
E.g., `access_points`, `bdev_class`.
E.g., `access_points`, `class`.
6. Check that the directory where the log files will be created exists. E.g.,
`control_log_file`, `log_file` field in `engines` section.
7. Start `daos_server`.
Expand Down
8 changes: 4 additions & 4 deletions docs/admin/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -1409,18 +1409,18 @@ When the command is run, the pmem kernel devices created on SCM/PMem regions are
formatted and mounted based on the parameters provided in the server config file.

- `scm_mount` specifies the location of the mountpoint to create.
- `scm_class` can be set to `ram` to use a tmpfs in the situation that no SCM/PMem
- `class` can be set to `ram` to use a tmpfs in the situation that no SCM/PMem
is available (`scm_size` dictates the size of tmpfs in GB), when set to `dcpm` the device
specified under `scm_list` will be mounted at `scm_mount` path.

### NVMe Format

When the command is run, NVMe SSDs are formatted and set up to be used by DAOS
based on the parameters provided in the server config file.
based on the parameters provided in the server config file engine storage sections.

`bdev_class` can be set to `nvme` to use actual NVMe devices with SPDK for DAOS
`class` can be set to `nvme` to use actual NVMe devices with SPDK for DAOS
storage.
Other `bdev_class` values can be used for emulation of NVMe storage as specified
Other `class` values can be used for emulation of NVMe storage as specified
in the server config file.
`bdev_list` identifies devices to use with a list of PCI addresses (this can be
populated after viewing results from `storage scan` command).
Expand Down
6 changes: 3 additions & 3 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Welcome to DAOS Version 2.5!
# Welcome to DAOS Version 2.7!

The Distributed Asynchronous Object Storage (DAOS) is an open-source
object store designed from the ground up for massively distributed Non
Expand All @@ -15,11 +15,11 @@ In addition to on-prem deployments, DAOS can be deployed in cloud
environments. More information on cloud deployments is available
in the [DAOS in the Cloud](./cloud/) section.

The included document versions are associated with DAOS v2.5.
The included document versions are associated with DAOS v2.7.
They may also describe features that are currently under development
for a future DAOS release. Those features will be clearly marked as such.

!!! warning
DAOS v2.5 is the (unstable) master branch for DAOS v2.6 development.
DAOS v2.7 is the (unstable) master branch for DAOS v2.8 development.
Use at your own risk. Please consider the [latest](../latest/)
stable DAOS release for production deployments.
4 changes: 2 additions & 2 deletions docs/release/release_notes.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# DAOS Version 2.6 Release Notes
# DAOS Version 2.8 Release Notes

DAOS 2.6 is under active development and has not been released yet.
DAOS 2.8 is under active development and has not been released yet.
The release is planned for late 2023.
In the meantime, please refer to the support document for the
[latest](https://docs.daos.io/latest/release/release_notes/)
Expand Down
4 changes: 2 additions & 2 deletions docs/release/support_matrix.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# DAOS Version 2.6 Support
# DAOS Version 2.8 Support

DAOS 2.6 is under active development and has not been released yet.
DAOS 2.8 is under active development and has not been released yet.
The release is planned for late 2023.
In the meantime, please refer to the support document for the
[latest](https://docs.daos.io/latest/release/support_matrix/)
Expand Down
4 changes: 2 additions & 2 deletions docs/release/upgrading.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Upgrading to DAOS Version 2.6
# Upgrading to DAOS Version 2.8

DAOS 2.6 is under active development and has not been released yet.
DAOS 2.8 is under active development and has not been released yet.
The release is planned for the second half of 2023.
In the meantime, please refer to the upgrading information for the
[latest](https://docs.daos.io/latest/release/upgrading/) DAOS release.
10 changes: 5 additions & 5 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Project Information
site_name: DAOS v2.5
site_name: DAOS v2.7
site_description: Distributed Asynchronous Object Storage
site_author: DAOS Project

Expand Down Expand Up @@ -57,9 +57,9 @@ markdown_extensions:
nav:
- Release Information:
- 'index.md'
- 'Release Notes v2.5': 'release/release_notes.md'
- 'Support Matrix v2.5': 'release/support_matrix.md'
- 'Upgrading to v2.5': 'release/upgrading.md'
- 'Release Notes v2.7': 'release/release_notes.md'
- 'Support Matrix v2.7': 'release/support_matrix.md'
- 'Upgrading to v2.7': 'release/upgrading.md'
- Overview:
- 'Architecture': 'overview/architecture.md'
- 'Storage Model': 'overview/storage.md'
Expand Down Expand Up @@ -108,5 +108,5 @@ nav:
- 'Dev Environment': 'dev/development.md'
- 'Contributing': 'dev/contributing.md'
- 'DAOS Internals': 'https://github.com/daos-stack/daos/blob/master/src/README.md'
- 'DAOS API Documentation': 'https://docs.daos.io/v2.5/doxygen/html/index.html'
- 'DAOS API Documentation': 'https://docs.daos.io/v2.7/doxygen/html/index.html'
# Attention: Don't change that doxygen path to a relative path, or mkdocs will stumble...
30 changes: 23 additions & 7 deletions src/cart/crt_register.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright 2016-2022 Intel Corporation.
* (C) Copyright 2016-2024 Intel Corporation.
*
* SPDX-License-Identifier: BSD-2-Clause-Patent
*/
Expand Down Expand Up @@ -572,13 +572,14 @@ proto_query_cb(const struct crt_cb_info *cb_info)

int
crt_proto_query_int(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc, uint32_t *ver, int count,
crt_proto_query_cb_t cb, void *arg, crt_context_t ctx)
uint32_t timeout, crt_proto_query_cb_t cb, void *arg, crt_context_t ctx)
{
crt_rpc_t *rpc_req = NULL;
crt_context_t crt_ctx;
struct crt_proto_query_in *rpc_req_input;
struct proto_query_t *proto_query = NULL;
uint32_t *tmp_array = NULL;
uint32_t default_timeout;
int rc = DER_SUCCESS;

if (ver == NULL) {
Expand Down Expand Up @@ -629,6 +630,21 @@ crt_proto_query_int(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc, uint32_t *ver
proto_query->pq_user_arg = arg;
proto_query->pq_coq->coq_base = base_opc;

if (timeout != 0) {
/** The global timeout may be overwritten by the per context timeout
* so let's use the API to get the actual setting.
*/
rc = crt_req_get_timeout(rpc_req, &default_timeout);
/** Should only fail if invalid parameter */
D_ASSERT(rc == 0);

if (timeout < default_timeout) {
rc = crt_req_set_timeout(rpc_req, timeout);
/** Should only fail if invalid parameter */
D_ASSERT(rc == 0);
}
}

rc = crt_req_send(rpc_req, proto_query_cb, proto_query);
if (rc != 0)
D_ERROR("crt_req_send() failed: "DF_RC"\n", DP_RC(rc));
Expand All @@ -650,17 +666,17 @@ crt_proto_query_int(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc, uint32_t *ver
}

int
crt_proto_query(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc,
uint32_t *ver, int count, crt_proto_query_cb_t cb, void *arg)
crt_proto_query(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc, uint32_t *ver, int count,
uint32_t timeout, crt_proto_query_cb_t cb, void *arg)
{
return crt_proto_query_int(tgt_ep, base_opc, ver, count, cb, arg, NULL);
return crt_proto_query_int(tgt_ep, base_opc, ver, count, timeout, cb, arg, NULL);
}

int
crt_proto_query_with_ctx(crt_endpoint_t *tgt_ep, crt_opcode_t base_opc, uint32_t *ver, int count,
crt_proto_query_cb_t cb, void *arg, crt_context_t ctx)
uint32_t timeout, crt_proto_query_cb_t cb, void *arg, crt_context_t ctx)
{
return crt_proto_query_int(tgt_ep, base_opc, ver, count, cb, arg, ctx);
return crt_proto_query_int(tgt_ep, base_opc, ver, count, timeout, cb, arg, ctx);
}

/* local operation, query if base_opc with version number ver is registered. */
Expand Down
8 changes: 3 additions & 5 deletions src/cart/crt_rpc.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright 2016-2023 Intel Corporation.
* (C) Copyright 2016-2024 Intel Corporation.
*
* SPDX-License-Identifier: BSD-2-Clause-Patent
*/
Expand Down Expand Up @@ -441,8 +441,7 @@ crt_register_proto_fi(crt_endpoint_t *ep)
if (rc != 0)
return -DER_MISC;

rc = crt_proto_query(ep, cpf.cpf_base, &cpf.cpf_ver,
1, crt_pfi_cb, &pfi);
rc = crt_proto_query(ep, cpf.cpf_base, &cpf.cpf_ver, 1, 0, crt_pfi_cb, &pfi);
if (rc != -DER_SUCCESS)
D_GOTO(out, rc);

Expand Down Expand Up @@ -481,8 +480,7 @@ crt_register_proto_ctl(crt_endpoint_t *ep)
if (rc != 0)
return -DER_MISC;

rc = crt_proto_query(ep, cpf.cpf_base, &cpf.cpf_ver,
1, crt_pfi_cb, &pfi);
rc = crt_proto_query(ep, cpf.cpf_base, &cpf.cpf_ver, 1, 0, crt_pfi_cb, &pfi);
if (rc != -DER_SUCCESS)
D_GOTO(out, rc);

Expand Down
Loading

0 comments on commit 4753dde

Please sign in to comment.