History log of /spdk/test/scheduler/ (Results 1 – 25 of 76)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
7bc1134d05-Nov-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Read PID's status file only once

There's some peculiar issue where reading this file line by line can
be tainted by sudden updates to the file resulting in given fields
being unrecog

test/scheduler: Read PID's status file only once

There's some peculiar issue where reading this file line by line can
be tainted by sudden updates to the file resulting in given fields
being unrecognized by the get_proc_cpu_affinity(). To avoid that,
make sure this file is read once in full before parsing.

Change-Id: Ied4f03ada3b354b666df71f4d5f5d2467a874d98
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25407
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...

0b65bb4704-Nov-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Account for multiple cpus in the affinity mask

get_proc_cpu_affinity() can return an actual list, depending on how
the affinity is set for given thread. To make sure this check doesn

test/scheduler: Account for multiple cpus in the affinity mask

get_proc_cpu_affinity() can return an actual list, depending on how
the affinity is set for given thread. To make sure this check doesn't
suddenly fail, iterate over the entire list.

Change-Id: I83c176445992e0495ef5ada56679d7316cb2ff9b
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25405
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/fio/bdev/README.md
/spdk/autorun.sh
/spdk/configure
/spdk/deprecation.md
/spdk/doc/jsonrpc.md
/spdk/examples/fsdev/hello_world/hello_fsdev.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/examples/thread/thread/thread_ex.c
/spdk/include/spdk/bdev.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/env.h
/spdk/include/spdk/fd_group.h
/spdk/include/spdk/fsdev.h
/spdk/include/spdk/fsdev_module.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/reduce.h
/spdk/include/spdk/stdinc.h
/spdk/include/spdk/thread.h
/spdk/include/spdk_internal/mlx5.h
/spdk/include/spdk_internal/rdma_provider.h
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/spdk_bdev.map
/spdk/lib/blobfs/tree.c
/spdk/lib/env_dpdk/Makefile
/spdk/lib/env_dpdk/memory.c
/spdk/lib/env_dpdk/pci.c
/spdk/lib/env_dpdk/pci_dpdk.c
/spdk/lib/env_dpdk/pci_dpdk.h
/spdk/lib/env_dpdk/pci_dpdk_2207.c
/spdk/lib/env_dpdk/pci_dpdk_2211.c
/spdk/lib/env_dpdk/spdk_env_dpdk.map
/spdk/lib/event/reactor.c
/spdk/lib/fsdev/Makefile
/spdk/lib/fsdev/fsdev.c
/spdk/lib/fsdev/fsdev_io.c
/spdk/lib/fsdev/spdk_fsdev.map
/spdk/lib/fuse_dispatcher/fuse_dispatcher.c
/spdk/lib/iscsi/conn.c
/spdk/lib/mlx5/mlx5_umr.c
/spdk/lib/mlx5/spdk_mlx5.map
/spdk/lib/nvme/Makefile
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_pcie.c
/spdk/lib/nvme/nvme_pcie_common.c
/spdk/lib/nvme/nvme_pcie_internal.h
/spdk/lib/nvme/nvme_poll_group.c
/spdk/lib/nvme/nvme_qpair.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/nvme_transport.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/Makefile
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/ctrlr_discovery.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/transport.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/rdma_provider/Makefile
/spdk/lib/rdma_provider/rdma_provider_mlx5_dv.c
/spdk/lib/rdma_provider/rdma_provider_verbs.c
/spdk/lib/rdma_provider/spdk_rdma_provider.map
/spdk/lib/reduce/reduce.c
/spdk/lib/reduce/spdk_reduce.map
/spdk/lib/thread/Makefile
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/spdk_thread.map
/spdk/lib/thread/thread.c
/spdk/lib/util/Makefile
/spdk/lib/util/fd_group.c
/spdk/lib/util/spdk_util.map
/spdk/lib/vhost/vhost.c
/spdk/lib/vhost/vhost_internal.h
/spdk/mk/spdk.lib_deps.mk
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.c
/spdk/module/accel/error/accel_error.c
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/accel/mlx5/accel_mlx5.h
/spdk/module/accel/mlx5/accel_mlx5_rpc.c
/spdk/module/bdev/aio/bdev_aio.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/crypto/vbdev_crypto.c
/spdk/module/bdev/error/vbdev_error.c
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/nvme/Makefile
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/spdk_bdev_nvme.map
/spdk/module/bdev/ocf/ctx.c
/spdk/module/bdev/ocf/ctx.h
/spdk/module/bdev/ocf/vbdev_ocf.c
/spdk/module/bdev/ocf/volume.c
/spdk/module/bdev/ocf/volume.h
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/xnvme/bdev_xnvme.c
/spdk/module/event/subsystems/iobuf/iobuf.c
/spdk/module/event/subsystems/iobuf/iobuf_rpc.c
/spdk/module/fsdev/aio/fsdev_aio.c
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/uring.c
/spdk/ocf
/spdk/python/spdk/rpc/iobuf.py
/spdk/python/spdk/rpc/mlx5.py
/spdk/scripts/env_dpdk/22.11/24.11-bus_driver.h.patch
/spdk/scripts/env_dpdk/22.11/24.11-bus_pci_driver.h.patch
/spdk/scripts/env_dpdk/22.11/24.11-dev_driver.h.patch
/spdk/scripts/env_dpdk/22.11/24.11-rte_bus.h.patch
/spdk/scripts/env_dpdk/22.11/24.11-rte_bus_pci.h.patch
/spdk/scripts/env_dpdk/22.11/24.11-rte_dev.h.patch
/spdk/scripts/rpc.py
/spdk/test/accel/mlx5/accel_mlx5_copy.sh
/spdk/test/accel/mlx5/accel_mlx5_crc32c.sh
/spdk/test/accel/mlx5/accel_mlx5_crypto.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/common/config/pkgdep/patches/ice/0001-kernel_ethtool_ts_info.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-ptp.patch
/spdk/test/common/config/pkgdep/patches/irdma/0001-uverbs_attr.patch
/spdk/test/common/lib/test_env.c
/spdk/test/common/lib/test_iobuf.c
/spdk/test/env/memory/memory_ut.c
/spdk/test/make/check_so_deps.sh
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/nvmf_target_extra.sh
/spdk/test/nvmf/target/ns_masking.sh
/spdk/test/nvmf/target/nsid.sh
common.sh
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/accel/dpdk_compressdev.c/accel_dpdk_compressdev_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/compress.c/compress_ut.c
/spdk/test/unit/lib/bdev/crypto.c/crypto_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/fsdev/fsdev.c/fsdev_ut.c
/spdk/test/unit/lib/nvme/nvme_ctrlr.c/nvme_ctrlr_ut.c
/spdk/test/unit/lib/nvme/nvme_cuse.c/nvme_cuse_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie_common.c/nvme_pcie_common_ut.c
/spdk/test/unit/lib/nvme/nvme_poll_group.c/nvme_poll_group_ut.c
/spdk/test/unit/lib/nvme/nvme_rdma.c/nvme_rdma_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_bdev.c/ctrlr_bdev_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
/spdk/test/unit/lib/nvmf/fc.c/fc_ut.c
/spdk/test/unit/lib/nvmf/nvmf.c/nvmf_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/thread/iobuf.c/iobuf_ut.c
/spdk/test/unit/lib/util/Makefile
/spdk/test/unit/lib/util/fd_group.c/Makefile
/spdk/test/unit/lib/util/fd_group.c/fd_group_ut.c
/spdk/test/unit/lib/util/pipe.c/pipe_ut.c
/spdk/test/unit/unittest.sh
/spdk/xnvme
/spdk/xnvmebuild/Makefile
3a02df0b30-Aug-2024 Jim Harris <jim.harris@samsung.com>

event: add new 'mappings' parameter to static scheduler

This is useful for testing purposes, to place specific spdk_threads
on specific cores. Specified core must be in the thread's cpumask.

Usage:

event: add new 'mappings' parameter to static scheduler

This is useful for testing purposes, to place specific spdk_threads
on specific cores. Specified core must be in the thread's cpumask.

Usage:

scripts/rpc.py framework_set_scheduler --mappings='2:0,5:1'

This will move thread 2 to core 0 and thread 5 to core 1.

Note: checking for failure when setting core-limit parameter on
static scheduler has been removed. The whole mechanism for determine
which optional parameters are accepted for different schedulers needs
to be rethought, the current mechanism is not really working.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I16000805b8e2512f7ec6d84ee812d32bfcb2fd6d
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24766
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Anisa Su <anisa.su@samsung.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>

show more ...

118c273a30-Aug-2024 Jim Harris <jim.harris@samsung.com>

event: enable changing back to static scheduler

This requires saving the original core for each thread. Thankfully
it is very easy to just store it in the spdk_lw_thread. Then we
just run ->balance(

event: enable changing back to static scheduler

This requires saving the original core for each thread. Thankfully
it is very easy to just store it in the spdk_lw_thread. Then we
just run ->balance() once after the static scheduler is re-installed
to put all of the threads back to their original lcores, and take
all cores out of interrupt mode.

Note: 82c466 required bumping SO_VER due to adding trace_id to
struct spdk_reactor. But that didn't change the size of the structure.
For some unexplained reason, adding initial_lcore to the private
struct lw_thread in this patch results in abidiff no longer reporting
the trace_id change, and check_so_deps.sh fails saying the SO_VER
bump is no longer needed. A patch that simply adds the initial_lcore
member, with no other code changes, triggers the same error.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I9d1ace726617d95f89f42959c9c2c36602fb7f77
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24765
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/fio/bdev/fio_plugin.c
/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/spdk_nvme_perf/Makefile
/spdk/app/spdk_nvme_perf/perf.c
/spdk/autobuild.sh
/spdk/autopackage.sh
/spdk/autotest.sh
/spdk/configure
/spdk/deprecation.md
/spdk/doc/jsonrpc.md
/spdk/doc/nvmf.md
/spdk/doc/nvmf_tracing.md
/spdk/dpdk
/spdk/dpdkbuild/Makefile
/spdk/examples/accel/perf/accel_perf.c
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/ioat/perf/perf.c
/spdk/examples/ioat/verify/verify.c
/spdk/examples/nvme/arbitration/arbitration.c
/spdk/examples/nvme/hello_world/hello_world.c
/spdk/examples/nvme/pmr_persistence/pmr_persistence.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/examples/thread/thread/thread_ex.c
/spdk/include/spdk/accel.h
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/bdev.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/dma.h
/spdk/include/spdk/env.h
/spdk/include/spdk/event.h
/spdk/include/spdk/idxd.h
/spdk/include/spdk/idxd_spec.h
/spdk/include/spdk/init.h
/spdk/include/spdk/keyring_module.h
/spdk/include/spdk/log.h
/spdk/include/spdk/md5.h
/spdk/include/spdk/module/bdev/nvme.h
/spdk/include/spdk/module/keyring/file.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_cmd.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/reduce.h
/spdk/include/spdk/sock.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/trace.h
/spdk/include/spdk/version.h
/spdk/include/spdk_internal/event.h
/spdk/include/spdk_internal/idxd.h
/spdk/include/spdk_internal/mlx5.h
/spdk/include/spdk_internal/nvme_tcp.h
/spdk/include/spdk_internal/rdma_utils.h
/spdk/include/spdk_internal/sock.h
/spdk/include/spdk_internal/trace_defs.h
/spdk/lib/accel/Makefile
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_rpc.c
/spdk/lib/accel/accel_sw.c
/spdk/lib/accel/spdk_accel.map
/spdk/lib/bdev/Makefile
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/bdev_rpc.c
/spdk/lib/bdev/part.c
/spdk/lib/bdev/spdk_bdev.map
/spdk/lib/blob/blobstore.c
/spdk/lib/blob/blobstore.h
/spdk/lib/blob/request.c
/spdk/lib/blob/zeroes.c
/spdk/lib/blobfs/blobfs.c
/spdk/lib/dma/Makefile
/spdk/lib/dma/dma.c
/spdk/lib/dma/spdk_dma.map
/spdk/lib/env_dpdk/env.c
/spdk/lib/env_dpdk/env.mk
/spdk/lib/env_dpdk/env_internal.h
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/memory.c
/spdk/lib/env_dpdk/pci.c
/spdk/lib/env_dpdk/spdk_env_dpdk.map
/spdk/lib/env_dpdk/threads.c
/spdk/lib/env_ocf/ocf_env.c
/spdk/lib/event/app.c
/spdk/lib/event/app_rpc.c
/spdk/lib/event/event_internal.h
/spdk/lib/event/reactor.c
/spdk/lib/event/scheduler_static.c
/spdk/lib/fsdev/fsdev.c
/spdk/lib/fsdev/fsdev_io.c
/spdk/lib/ftl/Makefile
/spdk/lib/ftl/ftl_core.h
/spdk/lib/ftl/ftl_internal.h
/spdk/lib/ftl/ftl_io.c
/spdk/lib/ftl/ftl_l2p_cache.c
/spdk/lib/ftl/ftl_layout.c
/spdk/lib/ftl/ftl_layout.h
/spdk/lib/ftl/ftl_nv_cache.c
/spdk/lib/ftl/ftl_nv_cache.h
/spdk/lib/ftl/ftl_nv_cache_io.h
/spdk/lib/ftl/ftl_p2l_log.c
/spdk/lib/ftl/ftl_trace.c
/spdk/lib/ftl/mngt/ftl_mngt_ioch.c
/spdk/lib/ftl/mngt/ftl_mngt_md.c
/spdk/lib/ftl/mngt/ftl_mngt_misc.c
/spdk/lib/ftl/mngt/ftl_mngt_p2l.c
/spdk/lib/ftl/mngt/ftl_mngt_startup.c
/spdk/lib/ftl/mngt/ftl_mngt_steps.h
/spdk/lib/ftl/nvc/ftl_nvc_bdev_common.c
/spdk/lib/ftl/nvc/ftl_nvc_bdev_common.h
/spdk/lib/ftl/nvc/ftl_nvc_bdev_non_vss.c
/spdk/lib/ftl/nvc/ftl_nvc_bdev_vss.c
/spdk/lib/ftl/nvc/ftl_nvc_dev.h
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.c
/spdk/lib/ftl/upgrade/ftl_sb_v5.c
/spdk/lib/ftl/utils/ftl_md.c
/spdk/lib/ftl/utils/ftl_md.h
/spdk/lib/fuse_dispatcher/fuse_dispatcher.c
/spdk/lib/idxd/Makefile
/spdk/lib/idxd/idxd.c
/spdk/lib/idxd/spdk_idxd.map
/spdk/lib/init/Makefile
/spdk/lib/init/json_config.c
/spdk/lib/init/spdk_init.map
/spdk/lib/ioat/ioat.c
/spdk/lib/iscsi/Makefile
/spdk/lib/iscsi/conn.c
/spdk/lib/iscsi/conn.h
/spdk/lib/iscsi/iscsi.c
/spdk/lib/iscsi/iscsi.h
/spdk/lib/iscsi/iscsi_subsystem.c
/spdk/lib/keyring/Makefile
/spdk/lib/keyring/keyring.c
/spdk/lib/log/Makefile
/spdk/lib/log/log.c
/spdk/lib/log/spdk_log.map
/spdk/lib/mlx5/mlx5_crypto.c
/spdk/lib/mlx5/mlx5_priv.h
/spdk/lib/mlx5/mlx5_umr.c
/spdk/lib/mlx5/spdk_mlx5.map
/spdk/lib/nbd/nbd.c
/spdk/lib/nvme/Makefile
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_auth.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_ctrlr_cmd.c
/spdk/lib/nvme/nvme_cuse.c
/spdk/lib/nvme/nvme_fabric.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_io_msg.c
/spdk/lib/nvme/nvme_ns.c
/spdk/lib/nvme/nvme_ns_cmd.c
/spdk/lib/nvme/nvme_pcie.c
/spdk/lib/nvme/nvme_pcie_common.c
/spdk/lib/nvme/nvme_poll_group.c
/spdk/lib/nvme/nvme_qpair.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_stubs.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/nvme_transport.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/auth.c
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/ctrlr_bdev.c
/spdk/lib/nvmf/fc.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/rdma_utils/rdma_utils.c
/spdk/lib/rdma_utils/spdk_rdma_utils.map
/spdk/lib/reduce/Makefile
/spdk/lib/reduce/queue_internal.h
/spdk/lib/reduce/reduce.c
/spdk/lib/reduce/spdk_reduce.map
/spdk/lib/scsi/scsi.c
/spdk/lib/sock/sock.c
/spdk/lib/sock/spdk_sock.map
/spdk/lib/thread/Makefile
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/spdk_thread.map
/spdk/lib/thread/thread.c
/spdk/lib/trace/Makefile
/spdk/lib/trace_parser/Makefile
/spdk/lib/trace_parser/trace.cpp
/spdk/lib/util/Makefile
/spdk/lib/util/dif.c
/spdk/lib/util/md5.c
/spdk/lib/util/spdk_util.map
/spdk/lib/vfu_tgt/tgt_endpoint.c
/spdk/lib/vhost/vhost_blk.c
/spdk/lib/vhost/vhost_internal.h
/spdk/lib/vmd/vmd.c
/spdk/mk/spdk.common.mk
/spdk/mk/spdk.lib_deps.mk
/spdk/mk/spdk.modules.mk
/spdk/module/accel/Makefile
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.c
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.h
/spdk/module/accel/dpdk_cryptodev/accel_dpdk_cryptodev.c
/spdk/module/accel/dsa/accel_dsa.c
/spdk/module/accel/iaa/accel_iaa.c
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/accel/mlx5/accel_mlx5.h
/spdk/module/accel/mlx5/accel_mlx5_rpc.c
/spdk/module/bdev/aio/bdev_aio.c
/spdk/module/bdev/aio/bdev_aio.h
/spdk/module/bdev/aio/bdev_aio_rpc.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/compress/vbdev_compress.h
/spdk/module/bdev/compress/vbdev_compress_rpc.c
/spdk/module/bdev/ftl/bdev_ftl_rpc.c
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/null/bdev_null.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/bdev_nvme_rpc.c
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/virtio/bdev_virtio_scsi.c
/spdk/module/event/subsystems/nvmf/nvmf_tgt.c
/spdk/module/fsdev/aio/Makefile
/spdk/module/fsdev/aio/aio_mgr.c
/spdk/module/fsdev/aio/aio_mgr.h
/spdk/module/fsdev/aio/fsdev_aio.c
/spdk/module/fsdev/aio/fsdev_aio.h
/spdk/module/fsdev/aio/fsdev_aio_rpc.c
/spdk/module/fsdev/aio/linux_aio_mgr.c
/spdk/module/keyring/file/Makefile
/spdk/module/keyring/file/keyring.c
/spdk/module/keyring/file/keyring_rpc.c
/spdk/module/keyring/file/spdk_keyring_file.map
/spdk/module/scheduler/gscheduler/gscheduler.c
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/uring.c
/spdk/module/vfu_device/vfu_virtio_fs.c
/spdk/module/vfu_device/vfu_virtio_rpc.c
/spdk/python/Makefile
/spdk/python/spdk/__init__.py
/spdk/python/spdk/rpc/__init__.py
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/compressdev.py
/spdk/python/spdk/rpc/fsdev.py
/spdk/python/spdk/rpc/lvol.py
/spdk/python/spdk/rpc/mlx5.py
/spdk/python/spdk/rpc/nvmf.py
/spdk/python/spdk/spdkcli/ui_node.py
/spdk/python/spdk/spdkcli/ui_root.py
/spdk/scripts/check_format.sh
/spdk/scripts/keyctl-session-wrapper
/spdk/scripts/perf/pm/collect-cpu-temp
/spdk/scripts/perf/vhost/run_vhost_test.sh
/spdk/scripts/pkgdep.sh
/spdk/scripts/pkgdep/debian.sh
/spdk/scripts/pkgdep/freebsd.sh
/spdk/scripts/pkgdep/mariner.sh
/spdk/scripts/pkgdep/rhel.sh
/spdk/scripts/pkgdep/sles.sh
/spdk/scripts/rpc.py
/spdk/test/accel/accel.sh
/spdk/test/accel/dif/dif.c
/spdk/test/accel/mlx5/accel_mlx5_copy.sh
/spdk/test/accel/mlx5/accel_mlx5_crc32c.sh
/spdk/test/accel/mlx5/accel_mlx5_crypto.sh
/spdk/test/app/fuzz/iscsi_fuzz/Makefile
/spdk/test/app/fuzz/llvm_vfio_fuzz/llvm_vfio_fuzz.c
/spdk/test/app/stub/stub.c
/spdk/test/bdev/bdev_raid.sh
/spdk/test/bdev/blockdev.sh
/spdk/test/bdev/nbd_common.sh
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/autotest_setup.sh
/spdk/test/common/config/pkgdep/apt-get
/spdk/test/common/config/pkgdep/git
/spdk/test/common/config/pkgdep/patches/dpdk/24.07/uio-open-in-primary.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-__assign_str.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-devlink_param.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-napi_alloc_skb.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-xsk_buff_dma.patch
/spdk/test/common/config/pkgdep/patches/irdma/0001-ip_route_output.patch
/spdk/test/common/config/pkgdep/patches/qat/0001-empty-body.patch
/spdk/test/common/config/pkgdep/patches/qat/0001-old-style-declaration.patch
/spdk/test/common/config/pkgdep/yum
/spdk/test/common/lib/nvme/common_stubs.h
/spdk/test/common/lib/test_env.c
/spdk/test/common/nvme/functions.sh
/spdk/test/common/skipped_tests.txt
/spdk/test/compress/compress.sh
/spdk/test/cpp_headers/Makefile
/spdk/test/dma/test_dma/test_dma.c
/spdk/test/env/memory/memory_ut.c
/spdk/test/external_code/nvme/nvme.c
/spdk/test/ftl/bdevperf.sh
/spdk/test/fuzz/llvm.sh
/spdk/test/fuzz/llvm/llvm-gcov.sh
/spdk/test/interrupt/common.sh
/spdk/test/json_config/json_config.sh
/spdk/test/keyring/file.sh
/spdk/test/lvol/esnap/esnap.c
/spdk/test/make/check_so_deps.sh
/spdk/test/nvme/boot_partition/boot_partition.c
/spdk/test/nvme/fused_ordering/fused_ordering.c
/spdk/test/nvme/perf/common.sh
/spdk/test/nvme/reset/reset.c
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/fips/fips.sh
/spdk/test/nvmf/host/async_init.sh
/spdk/test/nvmf/host/auth.sh
/spdk/test/nvmf/host/failover.sh
/spdk/test/nvmf/host/multipath.sh
/spdk/test/nvmf/host/multipath_status.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/target/auth.sh
/spdk/test/nvmf/target/interrupt.sh
/spdk/test/nvmf/target/perf_adq.sh
/spdk/test/nvmf/target/shutdown.sh
/spdk/test/nvmf/target/tls.sh
rpc.sh
/spdk/test/spdkcli/match_files/spdkcli_raid.test.match
/spdk/test/spdkcli/match_files/spdkcli_vhost.test.match
/spdk/test/spdkcli/match_files/spdkcli_virtio_pci.test.match
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/accel/dpdk_compressdev.c/accel_dpdk_compressdev_ut.c
/spdk/test/unit/lib/accel/dpdk_cryptodev.c/accel_dpdk_cryptodev_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/compress.c/compress_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/raid/raid5f.c/raid5f_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/event/app.c/app_ut.c
/spdk/test/unit/lib/event/reactor.c/reactor_ut.c
/spdk/test/unit/lib/ftl/common/utils.c
/spdk/test/unit/lib/ftl/ftl_io.c/ftl_io_ut.c
/spdk/test/unit/lib/ftl/ftl_layout_upgrade/ftl_layout_upgrade_ut.c
/spdk/test/unit/lib/ftl/ftl_sb/ftl_sb_ut.c
/spdk/test/unit/lib/idxd/idxd.c/idxd_ut.c
/spdk/test/unit/lib/iscsi/iscsi.c/Makefile
/spdk/test/unit/lib/iscsi/iscsi.c/iscsi_ut.c
/spdk/test/unit/lib/keyring/keyring.c/keyring_ut.c
/spdk/test/unit/lib/log/log.c/log_ut.c
/spdk/test/unit/lib/nvme/nvme.c/nvme_ut.c
/spdk/test/unit/lib/nvme/nvme_ctrlr.c/nvme_ctrlr_ut.c
/spdk/test/unit/lib/nvme/nvme_ns_cmd.c/nvme_ns_cmd_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie_common.c/nvme_pcie_common_ut.c
/spdk/test/unit/lib/nvme/nvme_qpair.c/nvme_qpair_ut.c
/spdk/test/unit/lib/nvme/nvme_rdma.c/nvme_rdma_ut.c
/spdk/test/unit/lib/nvme/nvme_tcp.c/nvme_tcp_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_bdev.c/ctrlr_bdev_ut.c
/spdk/test/unit/lib/nvmf/nvmf.c/nvmf_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/nvmf/transport.c/transport_ut.c
/spdk/test/unit/lib/reduce/Makefile
/spdk/test/unit/lib/reduce/queue_internal.h/Makefile
/spdk/test/unit/lib/reduce/queue_internal.h/queue_internal_ut.c
/spdk/test/unit/lib/reduce/reduce.c/reduce_ut.c
/spdk/test/unit/lib/util/dif.c/dif_ut.c
/spdk/test/unit/unittest.sh
/spdk/test/vfio_user/vfio_user.sh
/spdk/test/vhost/common.sh
/spdk/test/vhost/perf_bench/vhost_perf.sh
4e4b993a09-May-2024 SeungYeon Shin <yss9509@naver.com>

test/scheduler: Add a system level test for the scheduler_set_option RPC

Change-Id: Ie9896285b7a037d6f17b18854485dea59d894729
Signed-off-by: SeungYeon Shin <syeon.shin@samsung.com>
Reviewed-on: http

test/scheduler: Add a system level test for the scheduler_set_option RPC

Change-Id: Ie9896285b7a037d6f17b18854485dea59d894729
Signed-off-by: SeungYeon Shin <syeon.shin@samsung.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23145
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/LICENSE
/spdk/app/fio/bdev/fio_plugin.c
/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/spdk_lspci/spdk_lspci.c
/spdk/app/spdk_nvme_discover/discovery_aer.c
/spdk/app/spdk_nvme_identify/identify.c
/spdk/app/spdk_nvme_perf/perf.c
/spdk/app/spdk_tgt/Makefile
/spdk/autopackage.sh
/spdk/autotest.sh
/spdk/configure
/spdk/doc/bdev.md
/spdk/doc/jsonrpc.md
/spdk/doc/performance_reports.md
/spdk/examples/Makefile
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/fsdev/Makefile
/spdk/examples/fsdev/hello_world/Makefile
/spdk/examples/fsdev/hello_world/hello_fsdev.c
/spdk/examples/idxd/perf/perf.c
/spdk/examples/interrupt_tgt/interrupt_tgt.c
/spdk/examples/ioat/perf/perf.c
/spdk/examples/ioat/verify/verify.c
/spdk/examples/nvme/abort/abort.c
/spdk/examples/nvme/arbitration/arbitration.c
/spdk/examples/nvme/cmb_copy/cmb_copy.c
/spdk/examples/nvme/hello_world/hello_world.c
/spdk/examples/nvme/hotplug/hotplug.c
/spdk/examples/nvme/nvme_manage/nvme_manage.c
/spdk/examples/nvme/pmr_persistence/pmr_persistence.c
/spdk/examples/nvme/reconnect/reconnect.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/examples/thread/thread/thread_ex.c
/spdk/examples/vmd/led/led.c
/spdk/examples/vmd/lsvmd/lsvmd.c
/spdk/include/Makefile
/spdk/include/linux/fuse_kernel.h
/spdk/include/linux/virtio_fs.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/env.h
/spdk/include/spdk/fsdev.h
/spdk/include/spdk/fsdev_module.h
/spdk/include/spdk/fuse_dispatcher.h
/spdk/include/spdk/module/bdev/nvme.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/pci_ids.h
/spdk/include/spdk/scheduler.h
/spdk/include/spdk/sock.h
/spdk/include/spdk/stdinc.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/util.h
/spdk/include/spdk_internal/event.h
/spdk/include/spdk_internal/mlx5.h
/spdk/include/spdk_internal/nvme_tcp.h
/spdk/include/spdk_internal/sock.h
/spdk/include/spdk_internal/trace_defs.h
/spdk/isa-l-crypto
/spdk/lib/Makefile
/spdk/lib/accel/accel_rpc.c
/spdk/lib/accel/accel_sw.c
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/bdev_rpc.c
/spdk/lib/bdev/part.c
/spdk/lib/env_dpdk/env.c
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/pci_dpdk.c
/spdk/lib/event/app.c
/spdk/lib/event/app_rpc.c
/spdk/lib/event/event_internal.h
/spdk/lib/event/log_rpc.c
/spdk/lib/event/reactor.c
/spdk/lib/event/spdk_event.map
/spdk/lib/fsdev/Makefile
/spdk/lib/fsdev/fsdev.c
/spdk/lib/fsdev/fsdev_internal.h
/spdk/lib/fsdev/fsdev_io.c
/spdk/lib/fsdev/fsdev_rpc.c
/spdk/lib/fsdev/spdk_fsdev.map
/spdk/lib/ftl/ftl_nv_cache.c
/spdk/lib/fuse_dispatcher/Makefile
/spdk/lib/fuse_dispatcher/fuse_dispatcher.c
/spdk/lib/fuse_dispatcher/fuse_dispatcher.map
/spdk/lib/mlx5/Makefile
/spdk/lib/mlx5/mlx5_crypto.c
/spdk/lib/mlx5/mlx5_dma.c
/spdk/lib/mlx5/mlx5_ifc.h
/spdk/lib/mlx5/mlx5_priv.h
/spdk/lib/mlx5/mlx5_qp.c
/spdk/lib/mlx5/mlx5_umr.c
/spdk/lib/mlx5/spdk_mlx5.map
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvmf/auth.c
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/mdns_server.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/stubs.c
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/transport.c
/spdk/lib/nvmf/transport.h
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/reduce/reduce.c
/spdk/lib/sock/sock.c
/spdk/lib/ublk/ublk.c
/spdk/lib/vhost/rte_vhost_user.c
/spdk/lib/vhost/vhost_rpc.c
/spdk/libvfio-user
/spdk/mk/spdk.lib_deps.mk
/spdk/mk/spdk.modules.mk
/spdk/module/Makefile
/spdk/module/accel/dpdk_cryptodev/accel_dpdk_cryptodev.c
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/accel/mlx5/accel_mlx5.h
/spdk/module/accel/mlx5/accel_mlx5_rpc.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/compress/vbdev_compress.h
/spdk/module/bdev/compress/vbdev_compress_rpc.c
/spdk/module/bdev/nvme/bdev_mdns_client.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/bdev_nvme_rpc.c
/spdk/module/bdev/nvme/spdk_bdev_nvme.map
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/blob/bdev/blob_bdev.c
/spdk/module/event/subsystems/Makefile
/spdk/module/event/subsystems/fsdev/Makefile
/spdk/module/event/subsystems/fsdev/fsdev.c
/spdk/module/fsdev/Makefile
/spdk/module/fsdev/aio/Makefile
/spdk/module/fsdev/aio/aio_mgr.c
/spdk/module/fsdev/aio/aio_mgr.h
/spdk/module/fsdev/aio/fsdev_aio.c
/spdk/module/fsdev/aio/fsdev_aio.h
/spdk/module/fsdev/aio/fsdev_aio_rpc.c
/spdk/module/fsdev/aio/linux_aio_mgr.c
/spdk/module/scheduler/dynamic/scheduler_dynamic.c
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/uring.c
/spdk/module/vfu_device/Makefile
/spdk/module/vfu_device/vfu_virtio_fs.c
/spdk/module/vfu_device/vfu_virtio_internal.h
/spdk/module/vfu_device/vfu_virtio_rpc.c
/spdk/python/spdk/rpc/__init__.py
/spdk/python/spdk/rpc/app.py
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/fsdev.py
/spdk/python/spdk/rpc/mlx5.py
/spdk/python/spdk/rpc/nvmf.py
/spdk/python/spdk/rpc/vfio_user.py
/spdk/scripts/check_format.sh
/spdk/scripts/common.sh
/spdk/scripts/perf/pm/collect-vmstat
/spdk/scripts/pkgdep/common.sh
/spdk/scripts/rpc.py
/spdk/scripts/setup.sh
/spdk/test/accel/mlx5/accel_mlx5_crypto.sh
/spdk/test/app/histogram_perf/histogram_perf.c
/spdk/test/bdev/bdev_raid.sh
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/common/skipped_build_files.txt
/spdk/test/common/skipped_tests.txt
/spdk/test/dd/negative_dd.sh
/spdk/test/env/vtophys/vtophys.c
/spdk/test/external_code/nvme/identify.c
/spdk/test/json_config/config_filter.py
/spdk/test/json_config/json_config.sh
/spdk/test/nvme/aer/aer.c
/spdk/test/nvme/boot_partition/boot_partition.c
/spdk/test/nvme/compliance/nvme_compliance.c
/spdk/test/nvme/connect_stress/connect_stress.c
/spdk/test/nvme/doorbell_aers/doorbell_aers.c
/spdk/test/nvme/e2edp/nvme_dp.c
/spdk/test/nvme/err_injection/err_injection.c
/spdk/test/nvme/fdp/fdp.c
/spdk/test/nvme/fused_ordering/fused_ordering.c
/spdk/test/nvme/overhead/overhead.c
/spdk/test/nvme/reserve/reserve.c
/spdk/test/nvme/reset/reset.c
/spdk/test/nvme/sgl/sgl.c
/spdk/test/nvme/simple_copy/simple_copy.c
/spdk/test/nvme/startup/startup.c
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/host/fio.sh
/spdk/test/nvmf/host/mdns_discovery.sh
/spdk/test/nvmf/host/multicontroller.sh
/spdk/test/nvmf/nvmf_target_extra.sh
/spdk/test/nvmf/target/auth.sh
/spdk/test/nvmf/target/control_msg_list.sh
/spdk/test/nvmf/target/wait_for_buf.sh
common.sh
core_isolating.sh
scheduler.sh
/spdk/test/unit/lib/Makefile
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/mt/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/event/reactor.c/reactor_ut.c
/spdk/test/unit/lib/fsdev/Makefile
/spdk/test/unit/lib/fsdev/fsdev.c/Makefile
/spdk/test/unit/lib/fsdev/fsdev.c/fsdev_ut.c
/spdk/test/unit/lib/init/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/auth.c/auth_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
/spdk/test/unit/lib/nvmf/nvmf.c/nvmf_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/nvmf/vfio_user.c/vfio_user_ut.c
/spdk/test/unit/lib/thread/thread.c/thread_ut.c
/spdk/test/unit/unittest.sh
/spdk/test/vfio_user/vfio_user.sh
/spdk/test/vfio_user/virtio/fio_fs.sh
/spdk/test/vhost/common.sh
/spdk/test/vhost/common/fio_jobs/default_fsdev.job
0070858e17-Jul-2024 Michal Berger <michal.berger@intel.com>

scripts/setup.sh: Use HUGE_EVEN_ALLOC logic by default

To that end, remove it altogether and allow setup.sh to always split
requested amount of hugepages across all available nodes. Custom
setups pe

scripts/setup.sh: Use HUGE_EVEN_ALLOC logic by default

To that end, remove it altogether and allow setup.sh to always split
requested amount of hugepages across all available nodes. Custom
setups per node are still available through the HUGENODE var.

Adjust some of the hugepages.sh tests to adhere to the new default.
This change allows us to remove the per_node_1G_alloc() test since
its flow is now covered by the custom_alloc().

By default, autotest.sh sets HUGEMEM=4096 and by spreading it across
all the nodes, for the minimal scenario, we get only 2GB on a single
node. For vhost tests, the default alloc per VM via vm_setup() is set
to 1GB so sharing that 2GB between qemu and SPDK spreads it a bit too
thin.

Case in point, for vhost.vhost_blk_packed_ring_integrity test roughly
> 600 hugepages is used for vhost. Since it slurps everything from
node0, only < 512 remains. Since VMs are assigned per node, the most
basic setups keep VM_*_qemu_numa_node set to 0. This is then used by
qemu to bind to a specific node. With 1G, < 512 hugepages is simply
not enough.

With that in mind, for vhost tests, keep all allocations on a single
node instead of trying to figure out right amount of memory per node
to keep the old behavior in (this may change in the future when
SPDK/vhost becomes numa-aware).

Change-Id: I83e18bfa4cc6de0a777804b354de083ae6ae9d8c
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24176
Community-CI: Mellanox Build Bot
Reviewed-by: Tomasz Zawadzki <tomasz@tzawadzki.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/spdk_nvme_perf/perf.c
/spdk/autotest.sh
/spdk/configure
/spdk/doc/fips.md
/spdk/doc/lvol.md
/spdk/doc/nvme.md
/spdk/doc/peer_2_peer.md
/spdk/doc/ublk.md
/spdk/examples/bdev/bdevperf/bdevperf.py
/spdk/examples/blob/cli/README.md
/spdk/examples/nvme/abort/abort.c
/spdk/examples/nvme/nvme_manage/nvme_manage.c
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/blob_bdev.h
/spdk/include/spdk/conf.h
/spdk/include/spdk/env.h
/spdk/include/spdk/ftl.h
/spdk/include/spdk/idxd.h
/spdk/include/spdk/lvol.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvme_spec.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/vfu_target.h
/spdk/include/spdk_internal/cunit.h
/spdk/include/spdk_internal/mock.h
/spdk/include/spdk_internal/nvme.h
/spdk/include/spdk_internal/rdma_provider.h
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_rpc.c
/spdk/lib/bdev/bdev.c
/spdk/lib/blob/blobstore.c
/spdk/lib/env_dpdk/env.mk
/spdk/lib/env_ocf/ocf_env.h
/spdk/lib/event/app.c
/spdk/lib/event/reactor.c
/spdk/lib/ftl/ftl_core.c
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.h
/spdk/lib/ftl/utils/ftl_md.c
/spdk/lib/idxd/idxd.c
/spdk/lib/init/json_config.c
/spdk/lib/init/subsystem_rpc.c
/spdk/lib/nvme/nvme_auth.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/reduce/reduce.c
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/thread.c
/spdk/lib/ublk/ublk.c
/spdk/lib/util/crc32.c
/spdk/lib/util/crc32c.c
/spdk/lib/util/fd_group.c
/spdk/lib/vfu_tgt/tgt_endpoint.c
/spdk/lib/vhost/rte_vhost_user.c
/spdk/lib/vhost/vhost_blk.c
/spdk/lib/virtio/virtio_vfio_user.c
/spdk/lib/virtio/virtio_vhost_user.c
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.c
/spdk/module/accel/dpdk_cryptodev/accel_dpdk_cryptodev.c
/spdk/module/accel/iaa/accel_iaa.c
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/gpt/vbdev_gpt.c
/spdk/module/bdev/lvol/vbdev_lvol.c
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/bdev/raid/raid1.c
/spdk/module/event/subsystems/sock/sock.c
/spdk/module/sock/posix/posix.c
/spdk/python/spdk/sma/qmp.py
/spdk/python/spdk/sma/volume/crypto.py
/spdk/scripts/backport.sh
/spdk/scripts/check_format.sh
/spdk/scripts/common/setup/interactive.sh
/spdk/scripts/get-pmr
/spdk/scripts/perf/nvmf/README.md
/spdk/scripts/perf/nvmf/common.py
/spdk/scripts/perf/nvmf/run_nvmf.py
/spdk/scripts/perf/pm/collect-cpu-load
/spdk/scripts/perf/pm/collect-vmstat
/spdk/scripts/pkgdep/arch.sh
/spdk/scripts/rpc.py
/spdk/scripts/setup.sh
/spdk/test/bdev/bdev_raid.sh
/spdk/test/bdev/blockdev.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/README.md
/spdk/test/common/config/pkgdep/patches/qat/0001-missing-prototypes.patch
/spdk/test/dd/uring.sh
/spdk/test/ftl/restore.sh
/spdk/test/json_config/config_filter.py
/spdk/test/nvme/cuse/nvme_ns_manage_cuse.sh
/spdk/test/nvme/doorbell_aers/doorbell_aers.c
/spdk/test/nvme/sgl/sgl.c
/spdk/test/nvme/sw_hotplug.sh
/spdk/test/nvmf/target/multitarget.sh
/spdk/test/openstack/run_openstack_tests.sh
common.sh
/spdk/test/setup/hugepages.sh
/spdk/test/sma/crypto.sh
/spdk/test/sma/qos.sh
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/raid/raid1.c/raid1_ut.c
/spdk/test/unit/lib/bdev/vbdev_zone_block.c/vbdev_zone_block_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/idxd/idxd.c/idxd_ut.c
/spdk/test/unit/lib/json/json_util.c/json_util_ut.c
/spdk/test/unit/lib/jsonrpc/jsonrpc_server.c/jsonrpc_server_ut.c
/spdk/test/unit/lib/keyring/keyring.c/keyring_ut.c
/spdk/test/unit/lib/lvol/lvol.c/lvol_ut.c
/spdk/test/unit/lib/nvme/nvme_tcp.c/nvme_tcp_ut.c
/spdk/test/unit/lib/nvmf/auth.c/auth_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/vhost/vhost.c/vhost_ut.c
/spdk/test/vhost/common.sh
/spdk/test/vhost/fiotest/fio.sh
/spdk/test/vhost/other/negative.sh
78cbcfdd23-Jul-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/scheduler: fix cpu mask for rpc governor tests

1) When ran through isolate_cores.sh, only specific cores are possible
to use due to cgroup settings. "0x$spdk_main_core" was incorrectly
assignin

test/scheduler: fix cpu mask for rpc governor tests

1) When ran through isolate_cores.sh, only specific cores are possible
to use due to cgroup settings. "0x$spdk_main_core" was incorrectly
assigning "0x1" which is core 0. Rather than core 1 as intended.

2) After recent changes gscheduler requires that all SMT cores
are included in CPU mask, so this test wouldn't pass with just one.
Simply use the same spdk_cpumask as in other tests and modify
the remainder of the test to match that.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ieda3e48cb3871a22f45062089daf7aed7b670d1a
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24303
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

79fce48823-Jul-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/scheduler: test scheduling period with dynamic scheduler

Static scheduler sets the scheduling period to 0 when it is
initialized, as no scheduling will take place.

Instead use dynamic schedule

test/scheduler: test scheduling period with dynamic scheduler

Static scheduler sets the scheduling period to 0 when it is
initialized, as no scheduling will take place.

Instead use dynamic scheduler to test scheduling period.
Changed the test order since it is not possible to change
back to static.

Fixes #3454

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ic6098c42861255617471fdc4948d183c56944895
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24301

show more ...

8d7b140f28-Jun-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/governor: add tests for framework_get_governor RPC

Add basic tests for framework_get_governor RPC.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I6db15a2476faa700690d7c

test/governor: add tests for framework_get_governor RPC

Add basic tests for framework_get_governor RPC.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I6db15a2476faa700690d7c977895ad353260b9a0
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23959
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

6371dd6428-Jun-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

event/scheduler: do not accept params for scheduler without set_opts

Scheduler should not accept any parameters if set_opts is not implemented.
This looks awful, as the decode is done just to check

event/scheduler: do not accept params for scheduler without set_opts

Scheduler should not accept any parameters if set_opts is not implemented.
This looks awful, as the decode is done just to check if more opts were
provided. Yet it does work.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I31c2385244557ac08de281553cad82eb3b3228ba
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23958
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

cc8a75c428-Jun-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

event/scheduler: allow framework_get_scheduler before initialization

It was always possible to configure scheduler before subsystem
initialization, but never possible to retrieve its configuration
a

event/scheduler: allow framework_get_scheduler before initialization

It was always possible to configure scheduler before subsystem
initialization, but never possible to retrieve its configuration
at that time.
Reason for this mismatch might have been omission or 'null'
scheduler pointing to the default one until subsystems are initialized.

Leave it as it is for now, but allow to retrieve scheduler configuration
at the same time as it is possible to configure it.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Id5a896b2dc329e891690099e9ad45bf3f01a09bd
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23955
Community-CI: Mellanox Build Bot
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...

74606c1328-Jun-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/scheduler: add tests for changes with static scheduler

There are assumptions which scheduler is the default,
or that static can only be switched from, never to.
Verify that.

Signed-off-by: Tom

test/scheduler: add tests for changes with static scheduler

There are assumptions which scheduler is the default,
or that static can only be switched from, never to.
Verify that.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I5c8ac44dc8fe145078d13fe776fdfd5f4f1c5119
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23957
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>

show more ...

494ddd9528-Jun-2024 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/scheduler: add tests for scheduler opts

Make sure that fix added in b238468 is tested.
As observed in issue #3421, this can be easily missed.

While here added any relevant tests that make sens

test/scheduler: add tests for scheduler opts

Make sure that fix added in b238468 is tested.
As observed in issue #3421, this can be easily missed.

While here added any relevant tests that make sense.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ib53370dd18f9e1f3722c7949d24c2c2fd79e0848
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23956
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/spdk_nvme_identify/identify.c
/spdk/app/spdk_nvme_perf/perf.c
/spdk/app/spdk_tgt/spdk_tgt.c
/spdk/app/spdk_top/spdk_top.c
/spdk/app/trace_record/trace_record.c
/spdk/autotest.sh
/spdk/deprecation.md
/spdk/doc/accel_fw.md
/spdk/doc/bdev.md
/spdk/doc/blob.md
/spdk/doc/jsonrpc.md
/spdk/doc/lvol.md
/spdk/doc/nvmf.md
/spdk/doc/performance_reports.md
/spdk/dpdk
/spdk/dpdkbuild/Makefile
/spdk/examples/accel/perf/accel_perf.c
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/bdev/bdevperf/bdevperf.py
/spdk/examples/interrupt_tgt/interrupt_tgt.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/include/spdk/accel.h
/spdk/include/spdk/bdev.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/blob.h
/spdk/include/spdk/cpuset.h
/spdk/include/spdk/dif.h
/spdk/include/spdk/env.h
/spdk/include/spdk/event.h
/spdk/include/spdk/fd_group.h
/spdk/include/spdk/file.h
/spdk/include/spdk/idxd.h
/spdk/include/spdk/idxd_spec.h
/spdk/include/spdk/lvol.h
/spdk/include/spdk/net.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvme_spec.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/reduce.h
/spdk/include/spdk/scheduler.h
/spdk/include/spdk/sock.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/util.h
/spdk/include/spdk/version.h
/spdk/include/spdk_internal/lvolstore.h
/spdk/include/spdk_internal/mlx5.h
/spdk/include/spdk_internal/mock.h
/spdk/include/spdk_internal/rdma_provider.h
/spdk/include/spdk_internal/rdma_utils.h
/spdk/include/spdk_internal/sock.h
/spdk/lib/Makefile
/spdk/lib/accel/Makefile
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_internal.h
/spdk/lib/accel/accel_rpc.c
/spdk/lib/accel/accel_sw.c
/spdk/lib/accel/spdk_accel.map
/spdk/lib/bdev/Makefile
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/bdev_rpc.c
/spdk/lib/bdev/spdk_bdev.map
/spdk/lib/blob/blobstore.c
/spdk/lib/blob/spdk_blob.map
/spdk/lib/env_dpdk/Makefile
/spdk/lib/env_dpdk/env.c
/spdk/lib/env_dpdk/env.mk
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/spdk_env_dpdk.map
/spdk/lib/env_dpdk/threads.c
/spdk/lib/event/Makefile
/spdk/lib/event/app.c
/spdk/lib/event/app_rpc.c
/spdk/lib/event/log_rpc.c
/spdk/lib/event/reactor.c
/spdk/lib/event/spdk_event.map
/spdk/lib/ftl/Makefile
/spdk/lib/ftl/ftl_band.c
/spdk/lib/ftl/ftl_band.h
/spdk/lib/ftl/ftl_band_ops.c
/spdk/lib/ftl/ftl_core.c
/spdk/lib/ftl/ftl_core.h
/spdk/lib/ftl/ftl_debug.h
/spdk/lib/ftl/ftl_init.c
/spdk/lib/ftl/ftl_internal.h
/spdk/lib/ftl/ftl_io.c
/spdk/lib/ftl/ftl_io.h
/spdk/lib/ftl/ftl_l2p.c
/spdk/lib/ftl/ftl_l2p.h
/spdk/lib/ftl/ftl_l2p_cache.c
/spdk/lib/ftl/ftl_l2p_cache.h
/spdk/lib/ftl/ftl_l2p_flat.c
/spdk/lib/ftl/ftl_l2p_flat.h
/spdk/lib/ftl/ftl_layout.c
/spdk/lib/ftl/ftl_layout.h
/spdk/lib/ftl/ftl_nv_cache.c
/spdk/lib/ftl/ftl_nv_cache.h
/spdk/lib/ftl/ftl_p2l.c
/spdk/lib/ftl/ftl_trace.c
/spdk/lib/ftl/mngt/ftl_mngt.c
/spdk/lib/ftl/mngt/ftl_mngt.h
/spdk/lib/ftl/mngt/ftl_mngt_band.c
/spdk/lib/ftl/mngt/ftl_mngt_bdev.c
/spdk/lib/ftl/mngt/ftl_mngt_l2p.c
/spdk/lib/ftl/mngt/ftl_mngt_md.c
/spdk/lib/ftl/mngt/ftl_mngt_misc.c
/spdk/lib/ftl/mngt/ftl_mngt_recovery.c
/spdk/lib/ftl/mngt/ftl_mngt_self_test.c
/spdk/lib/ftl/mngt/ftl_mngt_shutdown.c
/spdk/lib/ftl/mngt/ftl_mngt_startup.c
/spdk/lib/ftl/mngt/ftl_mngt_steps.h
/spdk/lib/ftl/mngt/ftl_mngt_upgrade.c
/spdk/lib/ftl/nvc/ftl_nvc_bdev_vss.c
/spdk/lib/ftl/nvc/ftl_nvc_dev.c
/spdk/lib/ftl/nvc/ftl_nvc_dev.h
/spdk/lib/ftl/upgrade/ftl_band_upgrade.c
/spdk/lib/ftl/upgrade/ftl_chunk_upgrade.c
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.c
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.h
/spdk/lib/ftl/upgrade/ftl_p2l_upgrade.c
/spdk/lib/ftl/upgrade/ftl_sb_v5.c
/spdk/lib/ftl/upgrade/ftl_trim_upgrade.c
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.c
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.h
/spdk/lib/ftl/utils/ftl_md.c
/spdk/lib/ftl/utils/ftl_md.h
/spdk/lib/idxd/idxd.c
/spdk/lib/idxd/idxd_kernel.c
/spdk/lib/idxd/spdk_idxd.map
/spdk/lib/iscsi/iscsi.c
/spdk/lib/iscsi/tgt_node.c
/spdk/lib/lvol/lvol.c
/spdk/lib/lvol/spdk_lvol.map
/spdk/lib/mlx5/mlx5_crypto.c
/spdk/lib/mlx5/spdk_mlx5.map
/spdk/lib/nvme/Makefile
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_auth.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_ctrlr_cmd.c
/spdk/lib/nvme/nvme_ctrlr_ocssd_cmd.c
/spdk/lib/nvme/nvme_fabric.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_io_msg.c
/spdk/lib/nvme/nvme_ns.c
/spdk/lib/nvme/nvme_pcie.c
/spdk/lib/nvme/nvme_pcie_common.c
/spdk/lib/nvme/nvme_pcie_internal.h
/spdk/lib/nvme/nvme_qpair.c
/spdk/lib/nvme/nvme_quirks.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/nvme_transport.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/Makefile
/spdk/lib/nvmf/auth.c
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/ctrlr_discovery.c
/spdk/lib/nvmf/fc.c
/spdk/lib/nvmf/mdns_server.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/stubs.c
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/transport.c
/spdk/lib/rdma_provider/Makefile
/spdk/lib/rdma_provider/common.c
/spdk/lib/rdma_provider/rdma_provider_mlx5_dv.c
/spdk/lib/rdma_provider/rdma_provider_verbs.c
/spdk/lib/rdma_provider/spdk_rdma_provider.map
/spdk/lib/rdma_utils/Makefile
/spdk/lib/rdma_utils/rdma_utils.c
/spdk/lib/rdma_utils/spdk_rdma_utils.map
/spdk/lib/reduce/Makefile
/spdk/lib/reduce/reduce.c
/spdk/lib/reduce/spdk_reduce.map
/spdk/lib/rocksdb/env_spdk.cc
/spdk/lib/scsi/scsi_pr.c
/spdk/lib/sock/Makefile
/spdk/lib/sock/sock.c
/spdk/lib/sock/spdk_sock.map
/spdk/lib/thread/Makefile
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/spdk_thread.map
/spdk/lib/thread/thread.c
/spdk/lib/trace/trace_flags.c
/spdk/lib/ublk/ublk.c
/spdk/lib/util/Makefile
/spdk/lib/util/cpuset.c
/spdk/lib/util/dif.c
/spdk/lib/util/fd_group.c
/spdk/lib/util/file.c
/spdk/lib/util/net.c
/spdk/lib/util/spdk_util.map
/spdk/lib/vhost/rte_vhost_user.c
/spdk/lib/vhost/vhost.c
/spdk/lib/vhost/vhost_blk.c
/spdk/lib/vhost/vhost_internal.h
/spdk/lib/vhost/vhost_scsi.c
/spdk/libvfio-user
/spdk/mk/spdk.app_vars.mk
/spdk/mk/spdk.lib_deps.mk
/spdk/mk/spdk.modules.mk
/spdk/mk/spdk.unittest.mk
/spdk/module/accel/dsa/accel_dsa.c
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/accel/mlx5/accel_mlx5.h
/spdk/module/accel/mlx5/accel_mlx5_rpc.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/crypto/vbdev_crypto.c
/spdk/module/bdev/delay/vbdev_delay.c
/spdk/module/bdev/error/vbdev_error.c
/spdk/module/bdev/error/vbdev_error.h
/spdk/module/bdev/gpt/vbdev_gpt.c
/spdk/module/bdev/iscsi/bdev_iscsi.c
/spdk/module/bdev/lvol/vbdev_lvol.c
/spdk/module/bdev/lvol/vbdev_lvol.h
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/malloc/bdev_malloc.c
/spdk/module/bdev/malloc/bdev_malloc.h
/spdk/module/bdev/malloc/bdev_malloc_rpc.c
/spdk/module/bdev/null/bdev_null.c
/spdk/module/bdev/null/bdev_null.h
/spdk/module/bdev/null/bdev_null_rpc.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/bdev_nvme_rpc.c
/spdk/module/bdev/passthru/vbdev_passthru.c
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/bdev/raid/bdev_raid_rpc.c
/spdk/module/bdev/raid/bdev_raid_sb.c
/spdk/module/bdev/raid/raid1.c
/spdk/module/bdev/uring/bdev_uring.c
/spdk/module/bdev/zone_block/vbdev_zone_block.c
/spdk/module/blobfs/bdev/blobfs_fuse.c
/spdk/module/event/subsystems/Makefile
/spdk/module/event/subsystems/nvmf/event_nvmf.h
/spdk/module/event/subsystems/nvmf/nvmf_rpc.c
/spdk/module/event/subsystems/nvmf/nvmf_tgt.c
/spdk/module/event/subsystems/sock/sock.c
/spdk/module/scheduler/dpdk_governor/dpdk_governor.c
/spdk/module/scheduler/dynamic/scheduler_dynamic.c
/spdk/module/scheduler/gscheduler/gscheduler.c
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/uring.c
/spdk/module/vfu_device/vfu_virtio.c
/spdk/module/vfu_device/vfu_virtio_blk.c
/spdk/module/vfu_device/vfu_virtio_internal.h
/spdk/module/vfu_device/vfu_virtio_scsi.c
/spdk/python/spdk/__init__.py
/spdk/python/spdk/rpc/app.py
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/lvol.py
/spdk/python/spdk/rpc/mlx5.py
/spdk/python/spdk/rpc/nvmf.py
/spdk/scripts/check_format.sh
/spdk/scripts/common.sh
/spdk/scripts/perf/nvmf/common.py
/spdk/scripts/perf/nvmf/run_nvmf.py
/spdk/scripts/perf/vhost/conf-generator
/spdk/scripts/pkgdep.sh
/spdk/scripts/pkgdep/common.sh
/spdk/scripts/pkgdep/debian.sh
/spdk/scripts/pkgdep/helpers.sh
/spdk/scripts/pkgdep/rhel.sh
/spdk/scripts/qat_setup.sh
/spdk/scripts/rpc.py
/spdk/scripts/setup.sh
/spdk/test/accel/accel.sh
/spdk/test/accel/dif/dif.c
/spdk/test/bdev/bdev_raid.sh
/spdk/test/bdev/blockdev.sh
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/common/config/pkgdep/patches/dpdk/24.03/pcapng-add-memcpy-check.patch
/spdk/test/common/lib/test_rdma.c
/spdk/test/common/skipped_build_files.txt
/spdk/test/common/skipped_tests.txt
/spdk/test/dd/common.sh
/spdk/test/dma/test_dma/test_dma.c
/spdk/test/event/app_repeat/Makefile
/spdk/test/fuzz/llvm.sh
/spdk/test/fuzz/llvm/nvmf/fuzz_json.conf
/spdk/test/iscsi_tgt/chap/chap_common.sh
/spdk/test/iscsi_tgt/chap/chap_discovery.sh
/spdk/test/iscsi_tgt/chap/chap_mutual_not_set.sh
/spdk/test/iscsi_tgt/fio/iscsi.json
/spdk/test/iscsi_tgt/iscsi_tgt.sh
/spdk/test/json_config/extra_key.json
/spdk/test/json_config/json_config.sh
/spdk/test/lvol/external_snapshot.sh
/spdk/test/lvol/snapshot_clone.sh
/spdk/test/make/check_so_deps.sh
/spdk/test/nvme/cuse/cuse.c
/spdk/test/nvme/cuse/spdk_nvme_cli_cuse.sh
/spdk/test/nvme/sw_hotplug.sh
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/fips/fips.sh
/spdk/test/nvmf/host/fio.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/nvmf_host.sh
/spdk/test/nvmf/nvmf_target_core.sh
/spdk/test/nvmf/nvmf_target_extra.sh
/spdk/test/nvmf/target/auth.sh
/spdk/test/nvmf/target/ns_masking.sh
/spdk/test/nvmf/target/tls.sh
/spdk/test/ocf/integrity/fio-modes.sh
/spdk/test/ocf/integrity/flush.sh
rpc.sh
scheduler.sh
/spdk/test/setup/devices.sh
/spdk/test/sma/vhost_blk.sh
/spdk/test/spdkcli/match_files/spdkcli_details_vhost.test.match
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/compress.c/compress_ut.c
/spdk/test/unit/lib/bdev/crypto.c/crypto_ut.c
/spdk/test/unit/lib/bdev/mt/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/raid/Makefile
/spdk/test/unit/lib/bdev/raid/bdev_raid.c/bdev_raid_ut.c
/spdk/test/unit/lib/bdev/raid/bdev_raid_sb.c/bdev_raid_sb_ut.c
/spdk/test/unit/lib/bdev/raid/common.c
/spdk/test/unit/lib/bdev/raid/concat.c/concat_ut.c
/spdk/test/unit/lib/bdev/raid/raid0.c/Makefile
/spdk/test/unit/lib/bdev/raid/raid0.c/raid0_ut.c
/spdk/test/unit/lib/bdev/raid/raid1.c/raid1_ut.c
/spdk/test/unit/lib/bdev/raid/raid5f.c/raid5f_ut.c
/spdk/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/event/reactor.c/reactor_ut.c
/spdk/test/unit/lib/ftl/Makefile
/spdk/test/unit/lib/ftl/common/utils.c
/spdk/test/unit/lib/ftl/ftl_band.c/ftl_band_ut.c
/spdk/test/unit/lib/ftl/ftl_layout_upgrade/ftl_layout_upgrade_ut.c
/spdk/test/unit/lib/ftl/ftl_mngt/ftl_mngt_ut.c
/spdk/test/unit/lib/ftl/ftl_p2l.c/.gitignore
/spdk/test/unit/lib/ftl/ftl_p2l.c/Makefile
/spdk/test/unit/lib/ftl/ftl_p2l.c/ftl_p2l_ut.c
/spdk/test/unit/lib/ftl/ftl_sb/ftl_sb_ut.c
/spdk/test/unit/lib/idxd/idxd.c/idxd_ut.c
/spdk/test/unit/lib/lvol/lvol.c/lvol_ut.c
/spdk/test/unit/lib/nvme/nvme.c/nvme_ut.c
/spdk/test/unit/lib/nvme/nvme_ctrlr.c/nvme_ctrlr_ut.c
/spdk/test/unit/lib/nvme/nvme_ns.c/nvme_ns_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie_common.c/nvme_pcie_common_ut.c
/spdk/test/unit/lib/nvme/nvme_rdma.c/nvme_rdma_ut.c
/spdk/test/unit/lib/nvme/nvme_tcp.c/nvme_tcp_ut.c
/spdk/test/unit/lib/nvmf/auth.c/auth_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/fc.c/fc_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/rdma/common.c/common_ut.c
/spdk/test/unit/lib/scsi/scsi_pr.c/scsi_pr_ut.c
/spdk/test/unit/lib/sock/posix.c/posix_ut.c
/spdk/test/unit/lib/sock/sock.c/sock_ut.c
/spdk/test/unit/lib/sock/uring.c/uring_ut.c
/spdk/test/unit/lib/thread/iobuf.c/iobuf_ut.c
/spdk/test/unit/lib/util/Makefile
/spdk/test/unit/lib/util/cpuset.c/cpuset_ut.c
/spdk/test/unit/lib/util/dif.c/dif_ut.c
/spdk/test/unit/lib/util/file.c/Makefile
/spdk/test/unit/lib/util/file.c/file_ut.c
/spdk/test/unit/lib/util/net.c/Makefile
/spdk/test/unit/lib/util/net.c/net_ut.c
/spdk/test/unit/lib/vhost/vhost.c/vhost_ut.c
/spdk/test/unit/unittest.sh
/spdk/test/vfio_user/nvme/common.sh
/spdk/test/vfio_user/nvme/vfio_user_fio.sh
/spdk/test/vfio_user/nvme/vfio_user_restart_vm.sh
/spdk/test/vhost/common.sh
b24df7cf09-May-2024 Michal Berger <michal.berger@intel.com>

test: Drop superfluous calls to print_backtrace()

Since we use errtrace, the ERR trap is inherited and preserved in
each subshell, cmd substitution, etc. that we execute along the
way. This means th

test: Drop superfluous calls to print_backtrace()

Since we use errtrace, the ERR trap is inherited and preserved in
each subshell, cmd substitution, etc. that we execute along the
way. This means that each failure inside such subshell triggers
call to print_backtrace(). Depending on the context, this may not
be desired. Consider simple example:

# foo() { return 1; }
# [[ $(foo) == no_output_so_fail_me ]]

This assumes that from the test perspective we don't care if foo(),
internally, fails, we just look for a specific string it should
return. If it doesn't, errexit will be triggered at the [[ level
and fail the test. This is fine, but before this happens, extra
print_backtrace() call will be made from the $() context.

Changing logic above and we may start spamming these calls:

# foo() { return 1; }
# [[ $(foo) -eq 0 ]]

Here failure still triggers the print_backtrace() but logically
the [[ test succeeds so we end up with a useless call in the log
which may be downright confusing.

Cherry on top is the fact that we don't inherit errexit inside
the subshell. So this print_backtrace() call is entirely foobar
as it won't do anything at all.

Best case would be to enable inherit_errexit from autotest_common.sh
across all the test suites. This, however, will require proper
discipline in maintaining the tests as use of subshell environment
would have to be more explicit - in other words the ambiguity from
the first example (i.e. failure != no output) would not be allowed.

For now, refactor code a bit to get rid of these extra calls, next
step would be to test behavior of inherit_errexit.

Change-Id: Ice3f072008162c1713e78a6da99a833919bc716c
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23078
Reviewed-by: Ben Walker <ben@nvidia.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

7b52e4c108-May-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Meassure utime of $spdk_pid threads as a fallback

Normally these tests look at a business of given cpu as a whole but
this is a bit problematic when some external entity starts to st

test/scheduler: Meassure utime of $spdk_pid threads as a fallback

Normally these tests look at a business of given cpu as a whole but
this is a bit problematic when some external entity starts to steal
its time. This causes discrepancies in tests where given cpu is
suddenly marked as busy where in fact SPDK was idle.

To mitigate this, after all per-cpu checks are done, and in case given
cpu is not idle where we expect it should be, check utime of the SPDK
thread pinned to that cpu.

Fixes issue #3362.

Change-Id: Ia105d1c45a9d0fa4c01a167a6c39790d68fb73ac
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23074
Reviewed-by: Ben Walker <ben@nvidia.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

1dc0652008-May-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Calculate median of the cpu load samples

Done for debug purposes to clearly see how the outliers can
(sometimes heavily) influence the average.

Related to #3362.

Change-Id: I56db14

test/scheduler: Calculate median of the cpu load samples

Done for debug purposes to clearly see how the outliers can
(sometimes heavily) influence the average.

Related to #3362.

Change-Id: I56db14a817607c3ae13172fb41eaee3481c33ea8
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23073
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...

b22f1b3408-May-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Enhance lookup of the $old_cgroup in move_proc()

Change-Id: I47fc3462550f03ada3e1b1517aa89c4fe4e2bca0
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://revi

test/scheduler: Enhance lookup of the $old_cgroup in move_proc()

Change-Id: I47fc3462550f03ada3e1b1517aa89c4fe4e2bca0
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23012
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>

show more ...


/spdk/.gitmodules
/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/spdk_nvme_perf/perf.c
/spdk/app/spdk_top/spdk_top.c
/spdk/autotest.sh
/spdk/configure
/spdk/doc/accel_fw.md
/spdk/doc/blob.md
/spdk/doc/jsonrpc.md
/spdk/doc/lvol.md
/spdk/dpdk
/spdk/dpdkbuild/Makefile
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/go/hello_gorpc/hello_gorpc.go
/spdk/examples/nvme/hello_world/hello_world.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/go/rpc/client/client.go
/spdk/include/spdk/accel.h
/spdk/include/spdk/blob.h
/spdk/include/spdk/keyring.h
/spdk/include/spdk/lvol.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/util.h
/spdk/include/spdk_internal/lvolstore.h
/spdk/include/spdk_internal/mock.h
/spdk/include/spdk_internal/nvme.h
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_rpc.c
/spdk/lib/bdev/bdev.c
/spdk/lib/blob/blob_bs_dev.c
/spdk/lib/blob/blobstore.c
/spdk/lib/blob/blobstore.h
/spdk/lib/blob/spdk_blob.map
/spdk/lib/blobfs/blobfs.c
/spdk/lib/env_dpdk/env.mk
/spdk/lib/event/app.c
/spdk/lib/event/app_rpc.c
/spdk/lib/event/event_internal.h
/spdk/lib/idxd/idxd.c
/spdk/lib/idxd/idxd_kernel.c
/spdk/lib/keyring/keyring.c
/spdk/lib/keyring/spdk_keyring.map
/spdk/lib/lvol/lvol.c
/spdk/lib/lvol/spdk_lvol.map
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_auth.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_pcie_common.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/Makefile
/spdk/lib/nvmf/auth.c
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/fc.c
/spdk/lib/nvmf/mdns_server.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/stubs.c
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/transport.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/thread.c
/spdk/lib/ublk/ublk.c
/spdk/lib/ublk/ublk_internal.h
/spdk/lib/ublk/ublk_rpc.c
/spdk/lib/vhost/rte_vhost_user.c
/spdk/lib/vhost/vhost_blk.c
/spdk/lib/vhost/vhost_internal.h
/spdk/mk/spdk.common.mk
/spdk/mk/spdk.mock.unittest.mk
/spdk/module/accel/dpdk_cryptodev/accel_dpdk_cryptodev.c
/spdk/module/bdev/crypto/vbdev_crypto.c
/spdk/module/bdev/delay/vbdev_delay.c
/spdk/module/bdev/lvol/vbdev_lvol.c
/spdk/module/bdev/lvol/vbdev_lvol.h
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/bdev_nvme_rpc.c
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/bdev/raid/bdev_raid_rpc.c
/spdk/module/bdev/raid/bdev_raid_sb.c
/spdk/module/bdev/raid/raid5f.c
/spdk/module/event/subsystems/iobuf/iobuf.c
/spdk/module/event/subsystems/iobuf/iobuf_rpc.c
/spdk/module/event/subsystems/nvmf/nvmf_tgt.c
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/lvol.py
/spdk/python/spdk/rpc/nvmf.py
/spdk/python/spdk/rpc/ublk.py
/spdk/scripts/check_format.sh
/spdk/scripts/common/setup/interactive.sh
/spdk/scripts/perf/pm/common
/spdk/scripts/pkgdep.sh
/spdk/scripts/pkgdep/common.sh
/spdk/scripts/pkgdep/rhel.sh
/spdk/scripts/rpc.py
/spdk/test/bdev/bdev_raid.sh
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/pkgdep/os/rhel
/spdk/test/common/lib/test_iobuf.c
/spdk/test/common/skipped_build_files.txt
/spdk/test/common/skipped_tests.txt
/spdk/test/ftl/ftl.sh
/spdk/test/interrupt/common.sh
/spdk/test/interrupt/interrupt_common.sh
/spdk/test/lvol/external_copy.sh
/spdk/test/lvol/lvol.sh
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/host/auth.sh
/spdk/test/nvmf/host/mdns_discovery.sh
/spdk/test/nvmf/host/multipath_status.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/target/auth.sh
/spdk/test/nvmf/target/host_management.sh
cgroups.sh
/spdk/test/unit/lib/bdev/raid/bdev_raid.c/bdev_raid_ut.c
/spdk/test/unit/lib/bdev/raid/bdev_raid_sb.c/bdev_raid_sb_ut.c
/spdk/test/unit/lib/bdev/raid/common.c
/spdk/test/unit/lib/bdev/raid/raid5f.c/raid5f_ut.c
/spdk/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/blob/blob.c/ext_dev.c
/spdk/test/unit/lib/lvol/lvol.c/lvol_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie_common.c/nvme_pcie_common_ut.c
/spdk/test/unit/lib/nvme/nvme_qpair.c/nvme_qpair_ut.c
/spdk/test/unit/lib/nvmf/Makefile
/spdk/test/unit/lib/nvmf/auth.c/Makefile
/spdk/test/unit/lib/nvmf/auth.c/auth_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
/spdk/test/unit/lib/nvmf/fc_ls.c/fc_ls_ut.c
/spdk/test/unit/lib/nvmf/nvmf.c/nvmf_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/rpc/rpc.c/Makefile
9da1824827-Apr-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Drop SILENT_CGROUP_DEBUG

Change-Id: I3475f8a722c029cb855ebecf6d886b79d2649985
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk

test/scheduler: Drop SILENT_CGROUP_DEBUG

Change-Id: I3475f8a722c029cb855ebecf6d886b79d2649985
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22968
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...

bc33ed1d27-Apr-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Make sure stderr is not O_TRUNCated in move_proc()

Since we are not dup'ing stdout in this case but rather explicitly
point at a file we want to write to, we need to make sure said
f

test/scheduler: Make sure stderr is not O_TRUNCated in move_proc()

Since we are not dup'ing stdout in this case but rather explicitly
point at a file we want to write to, we need to make sure said
file is not suddenly truncated.

In case foo.sh attempts to call to move_proc() and is executed
like so:

foo.sh >bar.log 2>&1

the redirection to /dev/stderr will cause bar.log to be truncated.
This is actually seen under CI after 8571999d82 got merged as it
removed the SILENT_CGROUP_DEBUG silencer - it causes the build.log
to suddenly drop the trace until remaining tests are finished.
(this happens as jenkins redirects both std{out,err} to a regular
file in a similar fashion).

This can be simply missed when running these tests with std{out,err}
attached to a terminal (as O_TRUNC is ignored there), and so it
unfortunately was while working on the aforementioned commit.

Change-Id: I9d2d5ab87151c3653b0e162aa72b1409418f6fc3
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22967
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...


/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/spdk_nvme_identify/identify.c
/spdk/app/trace/trace.cpp
/spdk/app/trace_record/trace_record.c
/spdk/deprecation.md
/spdk/doc/Doxyfile
/spdk/doc/jsonrpc.md
/spdk/doc/nvme_multipath.md
/spdk/examples/accel/perf/accel_perf.c
/spdk/include/spdk/accel.h
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/bdev.h
/spdk/include/spdk/blob.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/trace.h
/spdk/include/spdk/util.h
/spdk/lib/accel/accel.c
/spdk/lib/bdev/bdev.c
/spdk/lib/blob/blob_bs_dev.c
/spdk/lib/blob/blobstore.c
/spdk/lib/blob/zeroes.c
/spdk/lib/log/log.c
/spdk/lib/nvme/nvme.c
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/fc_ls.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/transport.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/thread/thread.c
/spdk/lib/trace/spdk_trace.map
/spdk/lib/trace/trace.c
/spdk/lib/trace/trace_flags.c
/spdk/lib/trace/trace_internal.h
/spdk/lib/util/iov.c
/spdk/lib/util/spdk_util.map
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/crypto/vbdev_crypto.c
/spdk/module/bdev/lvol/vbdev_lvol.c
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/malloc/bdev_malloc.c
/spdk/module/blob/bdev/blob_bdev.c
/spdk/python/spdk/sma/device/nvmf_vfiouser.py
/spdk/scripts/bpf/trace.py
/spdk/test/accel/accel.sh
/spdk/test/common/config/autotest_setup.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/dd/sparse.sh
/spdk/test/external_code/accel/app_driver.c
/spdk/test/external_code/accel/app_module.c
/spdk/test/fuzz/autofuzz_iscsi.sh
/spdk/test/iscsi_tgt/iscsi_tgt.sh
/spdk/test/nvme/fdp/fdp.c
/spdk/test/nvmf/host/dma.sh
/spdk/test/nvmf/target/ns_hotplug_stress.sh
/spdk/test/nvmf/target/nvmf_lvs_grow.sh
/spdk/test/nvmf/target/perf_adq.sh
cgroups.sh
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/compress.c/compress_ut.c
/spdk/test/unit/lib/bdev/crypto.c/crypto_ut.c
/spdk/test/unit/lib/bdev/mt/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/part.c/part_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/blob/blob.c/esnap_dev.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
/spdk/test/unit/lib/nvmf/fc_ls.c/fc_ls_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/nvmf/transport.c/transport_ut.c
/spdk/test/unit/lib/nvmf/vfio_user.c/vfio_user_ut.c
8571999d19-Apr-2024 Michal Berger <michal.berger@intel.com>

test/scheduler: Stop moving all processes between cgroups

Initially, this was done in order to reduce jitter on the cpus the
SPDK processes would execute on - every other process was being
moved to

test/scheduler: Stop moving all processes between cgroups

Initially, this was done in order to reduce jitter on the cpus the
SPDK processes would execute on - every other process was being
moved to a dedicated "all" cgroup which would limit cpus and mem
nodes to those SPDK was being moved away from.

This was done at early stages of the dynamic scheduler where it
was not known were potential discrepancies in tests are coming
from. Most of these issues had been already resolved, hence there
is no need to perform such an invasive action anymore.

In fact, under newer kernels (6.8.x) this cgroup dance causes a
peculiar issues where some of the processes become unresponsive
when suddenly moved from their designated cgroup.

Instead, move only processes associated with a test (this would
include SPDK processes executed along the way) to a separate
cgroup with appropriate setup.

While at it, enhance remove_cgroup() to make sure all lingering
leaf cgroups are removed as well - this is actually needed since
our cleanup() was leaving unattended cgroups around - /cpuset/all
and /cpuset in particular. Since this patch now tries to rely only
on /cpuset we need to make sure we can properly remove it without
hitting -EBUSY.

Change-Id: I450535959e323980341ffbc9723d38092aa1051d
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22859
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...


/spdk/.gitignore
/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/Makefile
/spdk/app/fio/Makefile
/spdk/app/fio/bdev/Makefile
/spdk/app/fio/bdev/README.md
/spdk/app/fio/bdev/bdev.json
/spdk/app/fio/bdev/bdev_zoned.json
/spdk/app/fio/bdev/example_config.fio
/spdk/app/fio/bdev/fio_plugin.c
/spdk/app/fio/bdev/full_bench.fio
/spdk/app/fio/bdev/zbd_example.fio
/spdk/app/fio/nvme/Makefile
/spdk/app/fio/nvme/README.md
/spdk/app/fio/nvme/example_config.fio
/spdk/app/fio/nvme/fio_plugin.c
/spdk/app/fio/nvme/full_bench.fio
/spdk/app/fio/nvme/mock_sgl_config.fio
/spdk/app/spdk_dd/spdk_dd.c
/spdk/app/spdk_nvme_identify/identify.c
/spdk/app/spdk_nvme_perf/perf.c
/spdk/app/trace/trace.cpp
/spdk/app/trace_record/trace_record.c
/spdk/autopackage.sh
/spdk/autorun_post.py
/spdk/autotest.sh
/spdk/configure
/spdk/deprecation.md
/spdk/doc/bdev.md
/spdk/doc/jsonrpc.md
/spdk/doc/nvme.md
/spdk/doc/nvmf_tracing.md
/spdk/doc/performance_reports.md
/spdk/docker/build_base/Dockerfile
/spdk/dpdkbuild/Makefile
/spdk/examples/accel/perf/accel_perf.c
/spdk/examples/bdev/Makefile
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/bdev/bdevperf/bdevperf.py
/spdk/examples/bdev/hello_world/hello_bdev.c
/spdk/examples/blob/cli/blobcli.c
/spdk/examples/blob/hello_world/hello_blob.c
/spdk/examples/nvme/Makefile
/spdk/examples/nvme/arbitration/arbitration.c
/spdk/examples/sock/hello_world/hello_sock.c
/spdk/go/rpc/Makefile
/spdk/go/rpc/go.mod
/spdk/go/rpc/go.sum
/spdk/go/rpc/mocks/IClient.go
/spdk/go/rpc/mocks/boilerplate.txt
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/bdev.h
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/dif.h
/spdk/include/spdk/dma.h
/spdk/include/spdk/event.h
/spdk/include/spdk/file.h
/spdk/include/spdk/gpt_spec.h
/spdk/include/spdk/hexlify.h
/spdk/include/spdk/init.h
/spdk/include/spdk/iscsi_spec.h
/spdk/include/spdk/json.h
/spdk/include/spdk/keyring.h
/spdk/include/spdk/keyring_module.h
/spdk/include/spdk/likely.h
/spdk/include/spdk/log.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvme_spec.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_cmd.h
/spdk/include/spdk/nvmf_fc_spec.h
/spdk/include/spdk/nvmf_spec.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/opal.h
/spdk/include/spdk/opal_spec.h
/spdk/include/spdk/pipe.h
/spdk/include/spdk/queue_extras.h
/spdk/include/spdk/reduce.h
/spdk/include/spdk/rpc.h
/spdk/include/spdk/scsi_spec.h
/spdk/include/spdk/stdinc.h
/spdk/include/spdk/thread.h
/spdk/include/spdk/trace.h
/spdk/include/spdk/trace_parser.h
/spdk/include/spdk/tree.h
/spdk/include/spdk/util.h
/spdk/include/spdk/uuid.h
/spdk/include/spdk/version.h
/spdk/include/spdk_internal/sock.h
/spdk/include/spdk_internal/trace_defs.h
/spdk/isa-l
/spdk/isalbuild/Makefile
/spdk/isalbuild/isa-l
/spdk/isalcryptobuild/Makefile
/spdk/isalcryptobuild/isa-l-crypto
/spdk/lib/Makefile
/spdk/lib/accel/Makefile
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_rpc.c
/spdk/lib/accel/accel_sw.c
/spdk/lib/bdev/Makefile
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/part.c
/spdk/lib/bdev/spdk_bdev.map
/spdk/lib/blob/Makefile
/spdk/lib/blob/blobstore.c
/spdk/lib/blobfs/Makefile
/spdk/lib/blobfs/blobfs.c
/spdk/lib/conf/Makefile
/spdk/lib/dma/Makefile
/spdk/lib/dma/dma.c
/spdk/lib/dma/spdk_dma.map
/spdk/lib/env_dpdk/Makefile
/spdk/lib/env_dpdk/env.mk
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/pci_dpdk.c
/spdk/lib/env_dpdk/pci_dpdk_2211.c
/spdk/lib/event/Makefile
/spdk/lib/event/app.c
/spdk/lib/event/app_rpc.c
/spdk/lib/ftl/Makefile
/spdk/lib/ftl/base/ftl_base_bdev.c
/spdk/lib/ftl/ftl_band.c
/spdk/lib/ftl/ftl_band_ops.c
/spdk/lib/ftl/ftl_init.c
/spdk/lib/ftl/ftl_layout.c
/spdk/lib/ftl/ftl_layout.h
/spdk/lib/ftl/ftl_nv_cache.c
/spdk/lib/ftl/ftl_p2l.c
/spdk/lib/ftl/ftl_sb.c
/spdk/lib/ftl/ftl_sb.h
/spdk/lib/ftl/ftl_sb_common.h
/spdk/lib/ftl/ftl_sb_current.h
/spdk/lib/ftl/ftl_trace.c
/spdk/lib/ftl/mngt/ftl_mngt_bdev.c
/spdk/lib/ftl/mngt/ftl_mngt_md.c
/spdk/lib/ftl/mngt/ftl_mngt_misc.c
/spdk/lib/ftl/mngt/ftl_mngt_recovery.c
/spdk/lib/ftl/mngt/ftl_mngt_startup.c
/spdk/lib/ftl/mngt/ftl_mngt_upgrade.c
/spdk/lib/ftl/nvc/ftl_nvc_bdev_vss.c
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.c
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.h
/spdk/lib/ftl/upgrade/ftl_sb_prev.h
/spdk/lib/ftl/upgrade/ftl_sb_upgrade.c
/spdk/lib/ftl/upgrade/ftl_sb_upgrade.h
/spdk/lib/ftl/upgrade/ftl_sb_v3.c
/spdk/lib/ftl/upgrade/ftl_sb_v3.h
/spdk/lib/ftl/upgrade/ftl_sb_v5.c
/spdk/lib/ftl/upgrade/ftl_sb_v5.h
/spdk/lib/ftl/utils/ftl_df.h
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.c
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.h
/spdk/lib/ftl/utils/ftl_md.c
/spdk/lib/ftl/utils/ftl_property.c
/spdk/lib/idxd/Makefile
/spdk/lib/idxd/idxd_kernel.c
/spdk/lib/init/Makefile
/spdk/lib/init/json_config.c
/spdk/lib/init/rpc.c
/spdk/lib/init/spdk_init.map
/spdk/lib/init/subsystem.c
/spdk/lib/ioat/Makefile
/spdk/lib/iscsi/Makefile
/spdk/lib/iscsi/conn.c
/spdk/lib/iscsi/iscsi_rpc.c
/spdk/lib/iscsi/param.c
/spdk/lib/iscsi/task.c
/spdk/lib/iscsi/task.h
/spdk/lib/iscsi/tgt_node.c
/spdk/lib/iscsi/tgt_node.h
/spdk/lib/json/Makefile
/spdk/lib/json/json_util.c
/spdk/lib/jsonrpc/Makefile
/spdk/lib/keyring/Makefile
/spdk/lib/keyring/keyring.c
/spdk/lib/keyring/keyring_internal.h
/spdk/lib/keyring/keyring_rpc.c
/spdk/lib/keyring/spdk_keyring.map
/spdk/lib/log/Makefile
/spdk/lib/log/log.c
/spdk/lib/log/log_flags.c
/spdk/lib/lvol/Makefile
/spdk/lib/mlx5/Makefile
/spdk/lib/nbd/Makefile
/spdk/lib/notify/Makefile
/spdk/lib/nvme/Makefile
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_auth.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_ctrlr_cmd.c
/spdk/lib/nvme/nvme_cuse.c
/spdk/lib/nvme/nvme_fabric.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_ns_cmd.c
/spdk/lib/nvme/nvme_opal.c
/spdk/lib/nvme/nvme_pcie.c
/spdk/lib/nvme/nvme_pcie_common.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_stubs.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/nvme_transport.c
/spdk/lib/nvme/nvme_vfio_user.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/Makefile
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/ctrlr_bdev.c
/spdk/lib/nvmf/fc.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/tcp.c
/spdk/lib/nvmf/transport.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/rdma/Makefile
/spdk/lib/rdma/rdma_verbs.c
/spdk/lib/reduce/Makefile
/spdk/lib/rpc/Makefile
/spdk/lib/rpc/rpc.c
/spdk/lib/rpc/spdk_rpc.map
/spdk/lib/scsi/Makefile
/spdk/lib/scsi/scsi.c
/spdk/lib/scsi/scsi_bdev.c
/spdk/lib/scsi/scsi_internal.h
/spdk/lib/sock/Makefile
/spdk/lib/sock/sock.c
/spdk/lib/sock/sock_rpc.c
/spdk/lib/thread/Makefile
/spdk/lib/thread/iobuf.c
/spdk/lib/thread/thread.c
/spdk/lib/trace/Makefile
/spdk/lib/trace/spdk_trace.map
/spdk/lib/trace/trace.c
/spdk/lib/trace/trace_flags.c
/spdk/lib/trace/trace_internal.h
/spdk/lib/trace_parser/Makefile
/spdk/lib/trace_parser/spdk_trace_parser.map
/spdk/lib/trace_parser/trace.cpp
/spdk/lib/ublk/Makefile
/spdk/lib/ut/Makefile
/spdk/lib/ut_mock/Makefile
/spdk/lib/util/Makefile
/spdk/lib/util/crc64.c
/spdk/lib/util/dif.c
/spdk/lib/util/file.c
/spdk/lib/util/pipe.c
/spdk/lib/util/spdk_util.map
/spdk/lib/vfio_user/host/Makefile
/spdk/lib/vfio_user/host/vfio_user_internal.h
/spdk/lib/vfu_tgt/Makefile
/spdk/lib/vhost/Makefile
/spdk/lib/vhost/rte_vhost_user.c
/spdk/lib/vhost/vhost_internal.h
/spdk/lib/vhost/vhost_rpc.c
/spdk/lib/virtio/Makefile
/spdk/lib/vmd/Makefile
/spdk/libvfio-user
/spdk/mk/spdk.common.mk
/spdk/mk/spdk.fio.mk
/spdk/mk/spdk.lib_deps.mk
/spdk/mk/spdk.modules.mk
/spdk/module/Makefile
/spdk/module/accel/dpdk_compressdev/Makefile
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.c
/spdk/module/accel/dpdk_cryptodev/Makefile
/spdk/module/accel/dpdk_cryptodev/accel_dpdk_cryptodev.c
/spdk/module/accel/dsa/Makefile
/spdk/module/accel/dsa/accel_dsa.c
/spdk/module/accel/error/Makefile
/spdk/module/accel/error/accel_error.c
/spdk/module/accel/iaa/Makefile
/spdk/module/accel/iaa/accel_iaa.c
/spdk/module/accel/iaa/accel_iaa.h
/spdk/module/accel/iaa/accel_iaa_rpc.c
/spdk/module/accel/ioat/Makefile
/spdk/module/accel/ioat/accel_ioat.c
/spdk/module/accel/mlx5/Makefile
/spdk/module/accel/mlx5/accel_mlx5.c
/spdk/module/bdev/aio/Makefile
/spdk/module/bdev/aio/bdev_aio.c
/spdk/module/bdev/aio/bdev_aio.h
/spdk/module/bdev/aio/bdev_aio_rpc.c
/spdk/module/bdev/compress/Makefile
/spdk/module/bdev/crypto/Makefile
/spdk/module/bdev/crypto/vbdev_crypto.c
/spdk/module/bdev/daos/Makefile
/spdk/module/bdev/delay/Makefile
/spdk/module/bdev/error/Makefile
/spdk/module/bdev/error/vbdev_error.c
/spdk/module/bdev/error/vbdev_error_rpc.c
/spdk/module/bdev/ftl/Makefile
/spdk/module/bdev/ftl/bdev_ftl.c
/spdk/module/bdev/gpt/Makefile
/spdk/module/bdev/iscsi/Makefile
/spdk/module/bdev/lvol/Makefile
/spdk/module/bdev/malloc/Makefile
/spdk/module/bdev/malloc/bdev_malloc.c
/spdk/module/bdev/null/Makefile
/spdk/module/bdev/null/bdev_null.c
/spdk/module/bdev/nvme/Makefile
/spdk/module/bdev/nvme/bdev_mdns_client.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/nvme/bdev_nvme.h
/spdk/module/bdev/nvme/bdev_nvme_rpc.c
/spdk/module/bdev/ocf/Makefile
/spdk/module/bdev/passthru/Makefile
/spdk/module/bdev/raid/Makefile
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/bdev/raid/bdev_raid_rpc.c
/spdk/module/bdev/raid/bdev_raid_sb.c
/spdk/module/bdev/raid/raid0.c
/spdk/module/bdev/raid/raid1.c
/spdk/module/bdev/raid/raid5f.c
/spdk/module/bdev/rbd/Makefile
/spdk/module/bdev/rbd/bdev_rbd.c
/spdk/module/bdev/split/Makefile
/spdk/module/bdev/uring/Makefile
/spdk/module/bdev/uring/bdev_uring.c
/spdk/module/bdev/uring/bdev_uring.h
/spdk/module/bdev/uring/bdev_uring_rpc.c
/spdk/module/bdev/virtio/Makefile
/spdk/module/bdev/xnvme/Makefile
/spdk/module/bdev/zone_block/Makefile
/spdk/module/blob/bdev/Makefile
/spdk/module/blobfs/bdev/Makefile
/spdk/module/env_dpdk/Makefile
/spdk/module/event/subsystems/Makefile
/spdk/module/event/subsystems/accel/Makefile
/spdk/module/event/subsystems/bdev/Makefile
/spdk/module/event/subsystems/bdev/bdev.c
/spdk/module/event/subsystems/iobuf/Makefile
/spdk/module/event/subsystems/iscsi/Makefile
/spdk/module/event/subsystems/keyring/Makefile
/spdk/module/event/subsystems/keyring/keyring.c
/spdk/module/event/subsystems/nbd/Makefile
/spdk/module/event/subsystems/nvmf/Makefile
/spdk/module/event/subsystems/nvmf/nvmf_tgt.c
/spdk/module/event/subsystems/scheduler/Makefile
/spdk/module/event/subsystems/scsi/Makefile
/spdk/module/event/subsystems/sock/Makefile
/spdk/module/event/subsystems/ublk/Makefile
/spdk/module/event/subsystems/vfu_tgt/Makefile
/spdk/module/event/subsystems/vhost_blk/Makefile
/spdk/module/event/subsystems/vhost_scsi/Makefile
/spdk/module/event/subsystems/vmd/Makefile
/spdk/module/keyring/Makefile
/spdk/module/keyring/file/Makefile
/spdk/module/keyring/file/keyring.c
/spdk/module/keyring/file/keyring_file.h
/spdk/module/keyring/file/keyring_rpc.c
/spdk/module/keyring/linux/Makefile
/spdk/module/keyring/linux/keyring.c
/spdk/module/keyring/linux/keyring_linux.h
/spdk/module/keyring/linux/keyring_rpc.c
/spdk/module/scheduler/dpdk_governor/Makefile
/spdk/module/scheduler/dynamic/Makefile
/spdk/module/scheduler/dynamic/scheduler_dynamic.c
/spdk/module/scheduler/gscheduler/Makefile
/spdk/module/sock/posix/Makefile
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/Makefile
/spdk/module/sock/uring/uring.c
/spdk/module/vfu_device/Makefile
/spdk/python/Makefile
/spdk/python/spdk/__init__.py
/spdk/python/spdk/rpc/__init__.py
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/client.py
/spdk/python/spdk/rpc/iscsi.py
/spdk/python/spdk/rpc/keyring.py
/spdk/python/spdk/rpc/nvmf.py
/spdk/python/spdk/rpc/sock.py
/spdk/python/spdk/spdkcli/ui_node.py
/spdk/rpmbuild/rpm.sh
/spdk/rpmbuild/spdk.spec
/spdk/scripts/bash-completion/spdk
/spdk/scripts/bpf/trace.py
/spdk/scripts/ceph/start.sh
/spdk/scripts/check_format.sh
/spdk/scripts/common.sh
/spdk/scripts/common/setup/interactive.sh
/spdk/scripts/detect_cc.sh
/spdk/scripts/env_dpdk/22.11/22.11-rte_bus_pci.h.patch
/spdk/scripts/perf/nvmf/run_nvmf.py
/spdk/scripts/perf/pm/collect-bmc-pm
/spdk/scripts/perf/pm/collect-cpu-load
/spdk/scripts/perf/pm/collect-cpu-temp
/spdk/scripts/perf/pm/collect-vmstat
/spdk/scripts/perf/pm/common
/spdk/scripts/perf/vhost/conf-generator
/spdk/scripts/perf/vhost/run_vhost_test.sh
/spdk/scripts/pkgdep.sh
/spdk/scripts/pkgdep/arch.sh
/spdk/scripts/pkgdep/common.sh
/spdk/scripts/pkgdep/debian.sh
/spdk/scripts/pkgdep/freebsd.sh
/spdk/scripts/pkgdep/mariner.sh
/spdk/scripts/pkgdep/requirements.txt
/spdk/scripts/pkgdep/rhel.sh
/spdk/scripts/qat_setup.sh
/spdk/scripts/rpc.py
/spdk/scripts/rpc_http_proxy.py
/spdk/scripts/setup.sh
/spdk/scripts/vagrant/README.md
/spdk/scripts/vagrant/Vagrantfile
/spdk/scripts/vagrant/update.sh
/spdk/shared_lib/Makefile
/spdk/test/accel/accel.sh
/spdk/test/accel/accel_rpc.sh
/spdk/test/accel/dif/dif.c
/spdk/test/app/fuzz/common/fuzz_common.h
/spdk/test/app/fuzz/iscsi_fuzz/iscsi_fuzz.c
/spdk/test/app/fuzz/llvm_nvme_fuzz/Makefile
/spdk/test/app/fuzz/llvm_nvme_fuzz/llvm_nvme_fuzz.c
/spdk/test/app/fuzz/llvm_vfio_fuzz/Makefile
/spdk/test/app/fuzz/llvm_vfio_fuzz/llvm_vfio_fuzz.c
/spdk/test/app/fuzz/nvme_fuzz/nvme_fuzz.c
/spdk/test/app/fuzz/vhost_fuzz/vhost_fuzz.c
/spdk/test/app/stub/stub.c
/spdk/test/bdev/bdev_raid.sh
/spdk/test/bdev/bdevio/bdevio.c
/spdk/test/bdev/blockdev.sh
/spdk/test/blobfs/blobfs.sh
/spdk/test/blobfs/mkfs/mkfs.c
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/autotest_setup.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/common/config/pkgdep/patches/ice/0001-devlink_fmsg.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-ethtool-set-get-rxfh-params.patch
/spdk/test/common/config/pkgdep/patches/ice/0001-xdp_do_flush_map.patch
/spdk/test/common/config/pkgdep/patches/qat/0001-missing-prototypes.patch
/spdk/test/common/config/pkgdep/patches/qat/0001-phys_proc_id.patch
/spdk/test/common/config/pkgdep/patches/qat/0001-strlcpy-to-strscpy.patch
/spdk/test/common/skipped_build_files.txt
/spdk/test/common/skipped_tests.txt
/spdk/test/compress/compress.sh
/spdk/test/dma/test_dma/test_dma.c
/spdk/test/event/event_perf/event_perf.c
/spdk/test/event/reactor/reactor.c
/spdk/test/event/reactor_perf/reactor_perf.c
/spdk/test/external_code/Makefile
/spdk/test/external_code/accel/Makefile
/spdk/test/external_code/accel/app_driver.c
/spdk/test/external_code/accel/app_module.c
/spdk/test/external_code/nvme/identify.c
/spdk/test/external_code/test_make.sh
/spdk/test/ftl/bdevperf.sh
/spdk/test/ftl/dirty_shutdown.sh
/spdk/test/fuzz/autofuzz.sh
/spdk/test/fuzz/autofuzz_iscsi.sh
/spdk/test/fuzz/autofuzz_nvmf.sh
/spdk/test/fuzz/llvm/nvmf/run.sh
/spdk/test/fuzz/llvm/vfio/run.sh
/spdk/test/iscsi_tgt/initiator/initiator.sh
/spdk/test/iscsi_tgt/iscsi_tgt.sh
/spdk/test/iscsi_tgt/sock/sock.sh
/spdk/test/json_config/clear_config.py
/spdk/test/json_config/common.sh
/spdk/test/json_config/config_filter.py
/spdk/test/json_config/json_config.sh
/spdk/test/json_config/json_config_extra_key.sh
/spdk/test/json_config/json_config_with_delay.sh
/spdk/test/keyring/common.sh
/spdk/test/keyring/file.sh
/spdk/test/keyring/linux.sh
/spdk/test/lvol/esnap/esnap.c
/spdk/test/nvme/cuse/cuse.c
/spdk/test/nvme/cuse/spdk_nvme_cli_cuse.sh
/spdk/test/nvme/fdp/fdp.c
/spdk/test/nvme/nvme.sh
/spdk/test/nvme/overhead/overhead.c
/spdk/test/nvme/reserve/reserve.c
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/fips/fips.sh
/spdk/test/nvmf/host/auth.sh
/spdk/test/nvmf/host/digest.sh
/spdk/test/nvmf/host/discovery.sh
/spdk/test/nvmf/host/dma.sh
/spdk/test/nvmf/host/fio.sh
/spdk/test/nvmf/host/identify_kernel_nvmf.sh
/spdk/test/nvmf/host/perf.sh
/spdk/test/nvmf/host/target_disconnect.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/target/abort_qd_sizes.sh
/spdk/test/nvmf/target/device_removal.sh
/spdk/test/nvmf/target/fabrics_fuzz.sh
/spdk/test/nvmf/target/host_management.sh
/spdk/test/nvmf/target/ns_masking.sh
/spdk/test/nvmf/target/shutdown.sh
/spdk/test/nvmf/target/tls.sh
/spdk/test/nvmf/target/vfio_user_fuzz.sh
/spdk/test/packaging/rpm/rpm.sh
/spdk/test/rpc/skip_rpc.sh
cgroups.sh
common.sh
isolate_cores.sh
/spdk/test/sma/discovery.sh
/spdk/test/thread/lock/spdk_lock.c
/spdk/test/thread/poller_perf/poller_perf.c
/spdk/test/unit/lib/Makefile
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/accel/dpdk_compressdev.c/accel_dpdk_compressdev_ut.c
/spdk/test/unit/lib/accel/dpdk_cryptodev.c/accel_dpdk_cryptodev_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/crypto.c/crypto_ut.c
/spdk/test/unit/lib/bdev/mt/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/raid/bdev_raid.c/bdev_raid_ut.c
/spdk/test/unit/lib/bdev/raid/bdev_raid_sb.c/bdev_raid_sb_ut.c
/spdk/test/unit/lib/bdev/raid/common.c
/spdk/test/unit/lib/bdev/raid/concat.c/concat_ut.c
/spdk/test/unit/lib/bdev/raid/raid1.c/raid1_ut.c
/spdk/test/unit/lib/bdev/raid/raid5f.c/raid5f_ut.c
/spdk/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/dma/dma.c/dma_ut.c
/spdk/test/unit/lib/event/app.c/app_ut.c
/spdk/test/unit/lib/ftl/common/utils.c
/spdk/test/unit/lib/ftl/ftl_band.c/ftl_band_ut.c
/spdk/test/unit/lib/ftl/ftl_layout_upgrade/ftl_layout_upgrade_ut.c
/spdk/test/unit/lib/ftl/ftl_sb/Makefile
/spdk/test/unit/lib/ftl/ftl_sb/ftl_sb_ut.c
/spdk/test/unit/lib/init/Makefile
/spdk/test/unit/lib/init/rpc.c/Makefile
/spdk/test/unit/lib/init/rpc.c/rpc_ut.c
/spdk/test/unit/lib/keyring/Makefile
/spdk/test/unit/lib/keyring/keyring.c/Makefile
/spdk/test/unit/lib/keyring/keyring.c/keyring_ut.c
/spdk/test/unit/lib/log/log.c/log_ut.c
/spdk/test/unit/lib/nvme/nvme.c/nvme_ut.c
/spdk/test/unit/lib/nvme/nvme_cuse.c/nvme_cuse_ut.c
/spdk/test/unit/lib/nvme/nvme_fabric.c/nvme_fabric_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_tcp.c/nvme_tcp_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_bdev.c/ctrlr_bdev_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/nvmf/tcp.c/tcp_ut.c
/spdk/test/unit/lib/nvmf/vfio_user.c/vfio_user_ut.c
/spdk/test/unit/lib/rpc/rpc.c/rpc_ut.c
/spdk/test/unit/lib/scsi/scsi.c/Makefile
/spdk/test/unit/lib/scsi/scsi.c/scsi_ut.c
/spdk/test/unit/lib/scsi/scsi_bdev.c/scsi_bdev_ut.c
/spdk/test/unit/lib/util/dif.c/dif_ut.c
/spdk/test/unit/lib/util/pipe.c/pipe_ut.c
/spdk/test/unit/lib/vhost/vhost.c/vhost_ut.c
/spdk/test/unit/unittest.sh
/spdk/test/vhost/common.sh
/spdk/test/vhost/lvol/lvol_test.sh
99bebace29-Dec-2023 Michal Berger <michal.berger@intel.com>

scripts/perf: Align date's format across the PM tools

vmstat uses 24h timestamp and it cannot be changed so let other
tools follow suit.

Change-Id: I34d2d0d0b6ec551ef71d9e24539f62eb368a6346
Signed-

scripts/perf: Align date's format across the PM tools

vmstat uses 24h timestamp and it cannot be changed so let other
tools follow suit.

Change-Id: I34d2d0d0b6ec551ef71d9e24539f62eb368a6346
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21187
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>

show more ...

8d588fbc28-Dec-2023 Michal Berger <michal.berger@intel.com>

scripts/perf: Tag PM data with current run_test() instance

Add signal handler to catch USR1 and drive re-tagging of the PM data.
This should allow for a quick cross-reference while troubleshooting
t

scripts/perf: Tag PM data with current run_test() instance

Add signal handler to catch USR1 and drive re-tagging of the PM data.
This should allow for a quick cross-reference while troubleshooting
target test and its potential impact on the system.

Change-Id: I6eb7ff0ed0fc4d0162db0166543a070a4ad90de4
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21179
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>

show more ...

36eea92628-Dec-2023 Michal Berger <michal.berger@intel.com>

scripts/perf: Allow to define interval for collect-cpu-load

Change-Id: I35d53128dff8cbd0483b9c972f6baf356e46d221
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.sp

scripts/perf: Allow to define interval for collect-cpu-load

Change-Id: I35d53128dff8cbd0483b9c972f6baf356e46d221
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21177
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

59c811f027-Dec-2023 Michal Berger <michal.berger@intel.com>

scripts/perf: Add tool for collecting cpu load

As we are at it, remove bottleneck in get_cpu_time() - avoid reading
/proc/stat line by line to find target cpu as in case of systems with
hundreds of

scripts/perf: Add tool for collecting cpu load

As we are at it, remove bottleneck in get_cpu_time() - avoid reading
/proc/stat line by line to find target cpu as in case of systems with
hundreds of cpus this increases the get_cpu_time()'s runtime quite
significantly. Instead, slurp all cpu stats with a single read and
expose them as _cpuN[].

On a system with 144 cpus single get_cpu_time()'s iteration dropped
from ~5s to ~1s.

Note that this tool uses plain integer arithmetic so the results per
cpu time may be a bit off due to lacking precision. Nevertheless,
they should serve nicely as an approximation.

Change-Id: I64fecb593c5c38e3db79f75dcc4f23a9069c701a
Signed-off-by: Michal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21173
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/Makefile
/spdk/app/spdk_nvme_discover/Makefile
/spdk/app/spdk_nvme_discover/discovery_aer.c
/spdk/app/spdk_nvme_identify/.gitignore
/spdk/app/spdk_nvme_identify/Makefile
/spdk/app/spdk_nvme_identify/identify.c
/spdk/app/spdk_nvme_perf/.gitignore
/spdk/app/spdk_nvme_perf/Makefile
/spdk/app/spdk_nvme_perf/README.md
/spdk/app/spdk_nvme_perf/perf.c
/spdk/app/spdk_top/spdk_top.c
/spdk/autotest.sh
/spdk/configure
/spdk/deprecation.md
/spdk/doc/Doxyfile
/spdk/doc/bdev.md
/spdk/doc/fips.md
/spdk/doc/general.md
/spdk/doc/getting_started.md
/spdk/doc/jsonrpc.md
/spdk/doc/nvme.md
/spdk/doc/nvmf_tgt_pg.md
/spdk/doc/nvmf_tracing.md
/spdk/doc/peer_2_peer.md
/spdk/doc/vmd.md
/spdk/docker/README.md
/spdk/docker/docker-compose.monitoring.yaml
/spdk/docker/monitoring/prometheus.yaml
/spdk/docker/monitoring/telegraf.conf
/spdk/docker/spdk-app/init
/spdk/dpdk
/spdk/dpdkbuild/Makefile
/spdk/examples/accel/perf/accel_perf.c
/spdk/examples/bdev/bdevperf/bdevperf.c
/spdk/examples/nvme/Makefile
/spdk/examples/nvme/fio_plugin/README.md
/spdk/examples/nvme/fio_plugin/fio_plugin.c
/spdk/examples/nvme/hotplug/hotplug.c
/spdk/examples/nvmf/nvmf/README.md
/spdk/go/rpc/README.md
/spdk/go/rpc/client/client_test.go
/spdk/include/spdk/accel.h
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/blob.h
/spdk/include/spdk/blob_bdev.h
/spdk/include/spdk/dif.h
/spdk/include/spdk/idxd.h
/spdk/include/spdk/idxd_spec.h
/spdk/include/spdk/lvol.h
/spdk/include/spdk/nvme.h
/spdk/include/spdk/nvme_spec.h
/spdk/include/spdk/nvmf.h
/spdk/include/spdk/nvmf_transport.h
/spdk/include/spdk/queue_extras.h
/spdk/include/spdk/trace.h
/spdk/include/spdk/util.h
/spdk/include/spdk_internal/trace_defs.h
/spdk/intel-ipsec-mb
/spdk/lib/accel/accel.c
/spdk/lib/accel/accel_sw.c
/spdk/lib/accel/spdk_accel.map
/spdk/lib/bdev/Makefile
/spdk/lib/bdev/bdev.c
/spdk/lib/blob/Makefile
/spdk/lib/blob/blobstore.c
/spdk/lib/blob/spdk_blob.map
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/pci.c
/spdk/lib/event/app.c
/spdk/lib/ftl/Makefile
/spdk/lib/ftl/base/ftl_base_bdev.c
/spdk/lib/ftl/base/ftl_base_dev.c
/spdk/lib/ftl/base/ftl_base_dev.h
/spdk/lib/ftl/ftl_core.h
/spdk/lib/ftl/ftl_layout.c
/spdk/lib/ftl/ftl_layout.h
/spdk/lib/ftl/ftl_sb.c
/spdk/lib/ftl/ftl_sb.h
/spdk/lib/ftl/ftl_sb_common.h
/spdk/lib/ftl/ftl_sb_current.h
/spdk/lib/ftl/mngt/ftl_mngt_bdev.c
/spdk/lib/ftl/mngt/ftl_mngt_md.c
/spdk/lib/ftl/mngt/ftl_mngt_recovery.c
/spdk/lib/ftl/nvc/ftl_nvc_bdev_vss.c
/spdk/lib/ftl/nvc/ftl_nvc_dev.h
/spdk/lib/ftl/upgrade/ftl_layout_upgrade.c
/spdk/lib/ftl/upgrade/ftl_sb_prev.h
/spdk/lib/ftl/upgrade/ftl_sb_upgrade.h
/spdk/lib/ftl/upgrade/ftl_sb_v3.c
/spdk/lib/ftl/upgrade/ftl_sb_v3.h
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.c
/spdk/lib/ftl/utils/ftl_layout_tracker_bdev.h
/spdk/lib/ftl/utils/ftl_md.c
/spdk/lib/ftl/utils/ftl_md.h
/spdk/lib/idxd/Makefile
/spdk/lib/idxd/idxd.c
/spdk/lib/idxd/idxd_internal.h
/spdk/lib/idxd/idxd_user.c
/spdk/lib/idxd/spdk_idxd.map
/spdk/lib/init/rpc.c
/spdk/lib/iscsi/conn.c
/spdk/lib/lvol/Makefile
/spdk/lib/lvol/lvol.c
/spdk/lib/lvol/spdk_lvol.map
/spdk/lib/nbd/nbd.c
/spdk/lib/nvme/Makefile
/spdk/lib/nvme/nvme.c
/spdk/lib/nvme/nvme_ctrlr.c
/spdk/lib/nvme/nvme_cuse.c
/spdk/lib/nvme/nvme_internal.h
/spdk/lib/nvme/nvme_io_msg.c
/spdk/lib/nvme/nvme_ns.c
/spdk/lib/nvme/nvme_qpair.c
/spdk/lib/nvme/nvme_rdma.c
/spdk/lib/nvme/nvme_tcp.c
/spdk/lib/nvme/nvme_transport.c
/spdk/lib/nvme/spdk_nvme.map
/spdk/lib/nvmf/ctrlr.c
/spdk/lib/nvmf/ctrlr_bdev.c
/spdk/lib/nvmf/nvmf.c
/spdk/lib/nvmf/nvmf_internal.h
/spdk/lib/nvmf/nvmf_rpc.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/spdk_nvmf.map
/spdk/lib/nvmf/subsystem.c
/spdk/lib/nvmf/vfio_user.c
/spdk/lib/rpc/rpc.c
/spdk/lib/trace/Makefile
/spdk/lib/trace/spdk_trace.map
/spdk/lib/trace/trace.c
/spdk/lib/util/Makefile
/spdk/lib/util/iov.c
/spdk/mk/spdk.common.mk
/spdk/mk/spdk.lib_deps.mk
/spdk/module/accel/dpdk_compressdev/accel_dpdk_compressdev.c
/spdk/module/accel/dsa/accel_dsa.c
/spdk/module/accel/dsa/accel_dsa.h
/spdk/module/accel/dsa/accel_dsa_rpc.c
/spdk/module/accel/iaa/accel_iaa.c
/spdk/module/accel/ioat/accel_ioat.c
/spdk/module/bdev/lvol/vbdev_lvol.c
/spdk/module/bdev/lvol/vbdev_lvol.h
/spdk/module/bdev/lvol/vbdev_lvol_rpc.c
/spdk/module/bdev/nvme/bdev_nvme.c
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/blob/bdev/Makefile
/spdk/module/blob/bdev/blob_bdev.c
/spdk/module/blob/bdev/spdk_blob_bdev.map
/spdk/python/Makefile
/spdk/python/spdk/rpc/nvmf.py
/spdk/scripts/perf/pm/collect-bmc-pm
/spdk/scripts/perf/pm/collect-cpu-load
/spdk/scripts/perf/pm/collect-cpu-temp
/spdk/scripts/pkgdep.sh
/spdk/scripts/pkgdep/arch.sh
/spdk/scripts/pkgdep/azurelinux.sh
/spdk/scripts/pkgdep/debian.sh
/spdk/scripts/pkgdep/mariner.sh
/spdk/scripts/pkgdep/rhel.sh
/spdk/scripts/pkgdep/sles.sh
/spdk/scripts/rpc.py
/spdk/scripts/setup.sh
/spdk/test/Makefile
/spdk/test/accel/Makefile
/spdk/test/accel/accel.sh
/spdk/test/accel/accel_rpc.sh
/spdk/test/accel/dif/.gitignore
/spdk/test/accel/dif/Makefile
/spdk/test/accel/dif/dif.c
/spdk/test/app/fuzz/llvm_nvme_fuzz/llvm_nvme_fuzz.c
/spdk/test/app/fuzz/llvm_vfio_fuzz/llvm_vfio_fuzz.c
/spdk/test/app/stub/stub.c
/spdk/test/common/autobuild_common.sh
/spdk/test/common/autotest_common.sh
/spdk/test/common/config/pkgdep/git
/spdk/test/common/config/pkgdep/os/mariner
/spdk/test/common/config/pkgdep/tdnf
/spdk/test/common/skipped_build_files.txt
/spdk/test/common/skipped_tests.txt
/spdk/test/compress/compress.sh
/spdk/test/dd/common.sh
/spdk/test/dd/dd.sh
/spdk/test/dd/negative_dd.sh
/spdk/test/external_code/Makefile
/spdk/test/external_code/accel/Makefile
/spdk/test/external_code/accel/app_driver.c
/spdk/test/external_code/accel/app_module.c
/spdk/test/external_code/accel/driver.c
/spdk/test/external_code/accel/driver.json
/spdk/test/external_code/accel/module.c
/spdk/test/external_code/accel/module.json
/spdk/test/external_code/nvme/Makefile
/spdk/test/external_code/test_make.sh
/spdk/test/fuzz/llvm/common.sh
/spdk/test/iscsi_tgt/ext4test/ext4test.sh
/spdk/test/nvme/nvme.sh
/spdk/test/nvme/perf/common.sh
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/fips/fips.sh
/spdk/test/nvmf/host/digest.sh
/spdk/test/nvmf/host/dma.sh
/spdk/test/nvmf/host/identify.sh
/spdk/test/nvmf/host/identify_kernel_nvmf.sh
/spdk/test/nvmf/host/perf.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/target/delete_subsystem.sh
/spdk/test/nvmf/target/filesystem.sh
/spdk/test/nvmf/target/identify_passthru.sh
/spdk/test/nvmf/target/multipath.sh
/spdk/test/nvmf/target/ns_hotplug_stress.sh
/spdk/test/nvmf/target/nvmf_example.sh
/spdk/test/nvmf/target/nvmf_lvol.sh
/spdk/test/nvmf/target/nvmf_lvs_grow.sh
/spdk/test/nvmf/target/nvmf_vfio_user.sh
/spdk/test/nvmf/target/perf_adq.sh
/spdk/test/nvmf/target/tls.sh
/spdk/test/rpc_client/rpc_client_test.c
common.sh
/spdk/test/setup/common.sh
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/accel/dpdk_compressdev.c/accel_dpdk_compressdev_ut.c
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c
/spdk/test/unit/lib/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/ftl/ftl_band.c/ftl_band_ut.c
/spdk/test/unit/lib/ftl/ftl_layout_upgrade/ftl_layout_upgrade_ut.c
/spdk/test/unit/lib/ftl/ftl_sb/ftl_sb_ut.c
/spdk/test/unit/lib/idxd/Makefile
/spdk/test/unit/lib/idxd/idxd.c/Makefile
/spdk/test/unit/lib/idxd/idxd.c/idxd_ut.c
/spdk/test/unit/lib/idxd/idxd_user.c/idxd_user_ut.c
/spdk/test/unit/lib/lvol/lvol.c/lvol_ut.c
/spdk/test/unit/lib/nvme/nvme_qpair.c/nvme_qpair_ut.c
/spdk/test/unit/lib/nvme/nvme_rdma.c/nvme_rdma_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/nvmf/ctrlr_bdev.c/ctrlr_bdev_ut.c
/spdk/test/unit/lib/nvmf/nvmf.c/nvmf_ut.c
/spdk/test/unit/lib/nvmf/rdma.c/rdma_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_ut.c
/spdk/test/unit/lib/util/iov.c/iov_ut.c
/spdk/test/vmd/vmd.sh
19377d6604-Dec-2023 Tomasz Zawadzki <tomasz.zawadzki@intel.com>

test/scheduler: measure ticks since last check

get_thread_stats() gathers busy/idle from start of
the application, directly from RPC.
For some tests it is not required to measure state
from app star

test/scheduler: measure ticks since last check

get_thread_stats() gathers busy/idle from start of
the application, directly from RPC.
For some tests it is not required to measure state
from app start, but only changes during test.

idle.sh assumes that second check would make all
threads idle. Yet if initialization takes long enough,
app_thread will not be idle longer than it was busy by then.
This became apparent when adding ASAN to all jobs,
which considerably increased start up time.

To fix that, only measure ticks between consecutive RPC calls.
Added get_thread_stats_current() that returns busy/idle
difference, since last time it was called.

It allows to remove the workaround for first sample,
per removed comment.

While here:
- added print with load/busy/idle for each thread
- fixed unlikely condition for idle[thread] == busy[thread]

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Iaacce31aa7d4bcc22a51dbd7e71a4c7a4d274862
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/20884
Reviewed-by: Michal Berger <michal.berger@intel.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...


/spdk/CHANGELOG.md
/spdk/doc/bdev.md
/spdk/doc/jsonrpc.md
/spdk/dpdkbuild/Makefile
/spdk/examples/nvme/abort/abort.c
/spdk/examples/nvme/perf/perf.c
/spdk/examples/nvmf/nvmf/nvmf.c
/spdk/include/spdk/accel_module.h
/spdk/include/spdk/env.h
/spdk/include/spdk/event.h
/spdk/lib/accel/accel.c
/spdk/lib/bdev/bdev.c
/spdk/lib/env_dpdk/Makefile
/spdk/lib/env_dpdk/env_internal.h
/spdk/lib/env_dpdk/init.c
/spdk/lib/env_dpdk/memory.c
/spdk/lib/event/app.c
/spdk/lib/nvmf/rdma.c
/spdk/lib/nvmf/tcp.c
/spdk/mk/spdk.deps.mk
/spdk/module/bdev/raid/Makefile
/spdk/module/bdev/raid/bdev_raid.c
/spdk/module/bdev/raid/bdev_raid.h
/spdk/module/bdev/raid/bdev_raid_rpc.c
/spdk/module/bdev/raid/bdev_raid_sb.c
/spdk/module/bdev/raid/concat.c
/spdk/module/bdev/raid/raid0.c
/spdk/module/bdev/raid/raid1.c
/spdk/module/bdev/raid/raid5f.c
/spdk/python/spdk/rpc/cmd_parser.py
/spdk/scripts/common.sh
/spdk/scripts/setup.sh
/spdk/test/bdev/bdev_raid.sh
/spdk/test/common/autotest_common.sh
/spdk/test/dd/common.sh
/spdk/test/make/check_so_deps.sh
/spdk/test/nvme/connect_stress/connect_stress.c
/spdk/test/nvme/fused_ordering/fused_ordering.c
/spdk/test/nvmf/common.sh
/spdk/test/nvmf/nvmf.sh
/spdk/test/nvmf/target/abort.sh
/spdk/test/nvmf/target/bdev_io_wait.sh
/spdk/test/nvmf/target/bdevio.sh
/spdk/test/nvmf/target/connect_stress.sh
/spdk/test/nvmf/target/delete_subsystem.sh
/spdk/test/nvmf/target/fused_ordering.sh
/spdk/test/nvmf/target/host_management.sh
/spdk/test/nvmf/target/ns_hotplug_stress.sh
/spdk/test/nvmf/target/nvmf_example.sh
/spdk/test/nvmf/target/nvmf_lvol.sh
/spdk/test/nvmf/target/queue_depth.sh
/spdk/test/nvmf/target/tls.sh
/spdk/test/nvmf/target/zcopy.sh
common.sh
idle.sh
/spdk/test/unit/lib/bdev/bdev.c/bdev_ut.c
/spdk/test/unit/lib/bdev/raid/Makefile
/spdk/test/unit/lib/bdev/raid/bdev_raid.c/bdev_raid_ut.c
/spdk/test/unit/lib/bdev/raid/bdev_raid_sb.c/Makefile
/spdk/test/unit/lib/bdev/raid/bdev_raid_sb.c/bdev_raid_sb_ut.c
/spdk/test/unit/lib/bdev/raid/common.c
/spdk/test/unit/lib/bdev/raid/concat.c/concat_ut.c
/spdk/test/unit/lib/bdev/raid/raid1.c/raid1_ut.c
/spdk/test/unit/lib/bdev/raid/raid5f.c/raid5f_ut.c
/spdk/test/unit/unittest.sh

1234