Home
last modified time | relevance | path

Searched full:spdk (Results 1 – 25 of 1343) sorted by relevance

12345678910>>...54

/spdk/test/spdkcli/
H A Dnvmf.sh35 '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode1 N37SXV509SRW\
36 max_namespaces=4 allow_any_host=True' 'nqn.2014-08.org.spdk:cnode1' True
37 '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc3 1' 'Malloc3' True
38 '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc4 2' 'Malloc4' True
39 '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create \
41 '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode2 N37SXV509SRD\
42 max_namespaces=2 allow_any_host=True' 'nqn.2014-08.org.spdk:cnode2' True
43 '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/namespaces create Malloc2' 'Malloc2' True
44 '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/listen_addresses create \
46 '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode3 N37SXV509SRR\
[all …]
/spdk/
H A DREADME.md3 …ps://img.shields.io/github/license/spdk/spdk?style=flat-square&color=blue&label=License)](https://…
4 [![Build Status](https://travis-ci.org/spdk/spdk.svg?branch=master)](https://travis-ci.org/spdk/spd…
5 …tps://img.shields.io/badge/godoc-reference-blue.svg)](http://godoc.org/github.com/spdk/spdk/go/rpc)
6 …ttps://goreportcard.com/badge/github.com/spdk/spdk/go/rpc)](https://goreportcard.com/report/github…
8 NOTE: The SPDK mailing list has moved to a new location. Please visit
9 [this URL](https://lists.linuxfoundation.org/mailman/listinfo/spdk) to subscribe
13 The Storage Performance Development Kit ([SPDK](http://www.spdk.io)) provides a set of tools
22 * [NVMe driver](http://www.spdk.io/doc/nvme.html)
23 * [I/OAT (DMA engine) driver](http://www.spdk.io/doc/ioat.html)
24 * [NVMe over Fabrics target](http://www.spdk.io/doc/nvmf.html)
[all …]
/spdk/doc/
H A Dbackporting.md3 In SPDK updating supported versions, other than the latest `master`, is carried out through
8 ## How to backport to other SPDK maintained branches {#backporting_other_branches}
19 [a4a0462](https://review.spdk.io/gerrit/c/spdk/spdk/+/17093) is a good example: `23.01` and `23.05`
27 [a4a0462](https://review.spdk.io/gerrit/c/spdk/spdk/+/17093) and its backport
28 [62b467b](https://review.spdk.io/gerrit/c/spdk/spdk/+/18981) are a good example,
45 In SPDK there is a script automating above process to some degree. It is located in
55 SPDK uses forks of other repositories as submodules. This is done for two reasons:
57 * to disable components that are unnecessary for SPDK to work,
63 ### 1. Enter SPDK directory and update master branch
78 git branch -c spdk-23.07 spdk-23.07-copy; git checkout spdk-23.07-copy
[all …]
H A Dblobfs.md7 Clone and build the SPDK repository as per https://github.com/spdk/spdk
10 git clone https://github.com/spdk/spdk.git
11 cd spdk
16 Clone the RocksDB repository from the SPDK GitHub fork into a separate directory.
21 git clone -b 6.15.fb https://github.com/spdk/rocksdb.git
28 make db_bench SPDK_DIR=relative_path/to/spdk
34 export USE_RTTI=1 && make db_bench DEBUG_LEVEL=0 SPDK_DIR=relative_path/to/spdk
37 Create an NVMe section in the configuration file using SPDK's `gen_nvme.sh` script.
40 scripts/gen_nvme.sh --json-with-subsystems > /usr/local/etc/spdk/rocksdb.json
44 If there are any NVMe SSDs you do not wish to use for RocksDB/SPDK testing, remove them from the co…
[all …]
H A Doverview.md1 # SPDK Structural Overview {#overview}
5 SPDK is composed of a set of C libraries residing in `lib` with public interface
6 header files in `include/spdk`, plus a set of applications built out of those
8 the full SPDK applications.
10 SPDK is designed around message passing instead of locking, and most of the SPDK
12 application they are embedded into. However, SPDK goes to great lengths to remain
14 threading framework actually in use. To accomplish this, all SPDK libraries
16 `include/spdk/thread.h`). Any framework can initialize the threading abstraction
17 and provide callbacks to implement the functionality that the SPDK libraries
20 SPDK is built on top of POSIX for most operations. To make porting to non-POSIX
[all …]
H A Dusdt.md12 against a running SPDK application. Here is a typical usage:
19 probe description. SPDK bpftrace scripts can be written with an __EXE__
24 based on the PID of the SPDK application. SPDK bpftrace scripts can be
28 ## Configuring SPDK Build
34 ## Start SPDK application and bpftrace script
56 nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001 -m 10
57 nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t tcp -a 127.0.0.1 -s 4420
59 nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 null0
80 2189.921492: nqn.2016-06.io.spdk:cnode1 change state from INACTIVE to ACTIVE start
81 2189.952508: nqn.2016-06.io.spdk:cnode1 on thread 2 state to ACTIVE start
[all …]
H A Dcontainers.md1 # SPDK and Containers {#containers}
4 SPDK. As new usages are identified and tested, they will be documented
13 ## Containerizing an SPDK Application for Docker {#spdk_in_docker}
15 There are no SPDK specific changes needed to run an SPDK based application in
17 containerize your SPDK based application.
59 - If you are using the SPDK app framework: `-v /dev/shm:/dev/shm`
67 Starting SPDK v20.01-pre git sha1 80da95481 // DPDK 19.11.0 initialization...
81 ## SPDK Docker suite {#spdk_docker_suite}
83 When considering how to generate SPDK docker container images formally,
84 deploy SPDK containers correctly, interact with SPDK container instances,
[all …]
H A Dlibraries.md1 # SPDK Libraries {#libraries}
3 The SPDK repository is, first and foremost, a collection of high-performance
7 (`lib` and `module`) inside of the SPDK repository in a deliberate way to prevent
8 mixing of SPDK event framework dependent code and lower level libraries. This document
14 The SPDK libraries are divided into two directories. The `lib` directory contains the base librarie…
15 compose SPDK. Some of these base libraries define plug-in systems. Instances of those plug-ins are …
41 care has been taken to keep the SPDK libraries independent from this framework. The libraries in `l…
82 The SPDK libraries follow strict conventions for naming functions, logging, versioning, and header …
86 All public SPDK header files exist in the `include` directory of the SPDK repository. These headers
89 `include/spdk` contains headers intended to be used by consumers of the SPDK libraries. All of the
[all …]
H A Dnvmf_multipath_howto.md3 This HOWTO provides step-by-step instructions for setting-up a simple SPDK deployment and testing m…
7 ## Build SPDK on both the initiator and target servers
11 git clone https://github.com/spdk/spdk --recursive
14 Configure and build SPDK:
16 cd spdk/
25 cd spdk/
29 ## On target: start and configure SPDK
33 cd spdk/
40 ./scripts/rpc.py nvmf_create_subsystem nqn.2022-02.io.spdk:cnode0 -a -s SPDK00000000000001 -r
46 ./scripts/rpc.py nvmf_subsystem_add_ns nqn.2022-02.io.spdk:cnode0 Malloc0
[all …]
H A Dgdb_macros.md5 When debugging an spdk application using gdb we may need to view data structures
40 SPDK object of type struct spdk_bdev at 0x7f7dcc1642a8
46 SPDK object of type struct spdk_bdev at 0x7f7dcc216008
52 SPDK object of type struct spdk_bdev at 0x7f7dcc2c7c08
65 SPDK object of type struct spdk_bdev at 0x7f7dcc1642a8
70 Printing spdk threads:
75 SPDK object of type struct spdk_thread at 0x7fffd0008b50
79 SPDK object of type struct spdk_io_channel at 0x7fffd0052610
86 SPDK object of type struct spdk_io_channel at 0x7fffd0056cd0
93 SPDK object of type struct spdk_io_channel at 0x7fffd00582e0
[all …]
H A Drpm.md8 ## Building SPDK RPMs {#building_rpms}
10 To build basic set of RPM packages out of the SPDK repo simply run:
29 - SPDK_VERSION - SPDK version. Default: currently checked out tag
47 /root/rpmbuild/RPMS/x86_64/spdk-devel-v21.01-1.x86_64.rpm
48 /root/rpmbuild/RPMS/x86_64/spdk-dpdk-libs-v21.01-1.x86_64.rpm
49 /root/rpmbuild/RPMS/x86_64/spdk-libs-v21.01-1.x86_64.rpm
50 /root/rpmbuild/RPMS/x86_64/spdk-v21.01-1.x86_64.rpm
54 - spdk - provides all the binaries, common tooling, etc.
55 - spdk-devel - provides development files
56 - spdk-libs - provides target lib, .pc files (--with-shared)
[all …]
H A Dsystem_configuration.md3 This system configuration guide describes how to configure a system for use with SPDK.
8 recommended that SPDK applications are deployed with the `vfio-pci` kernel driver. SPDK's
20 …ug where `uio_pci_generic` [fails to bind to NVMe drives](https://github.com/spdk/spdk/issues/399).
24 ## Running SPDK as non-privileged user {#system_configuration_nonroot}
35 A good idea is to create a new mount specifically for SPDK:
39 # mount -t hugetlbfs -o uid=spdk,size=<value> none /mnt/spdk_hugetlbfs
42 Then start SPDK applications with an additional parameter `--huge-dir /mnt/spdk_hugetlbfs`
82 To give the user `spdk` full access to the VFIO IOMMU group 5 and all its
86 # chown spdk /dev/vfio/5
91 As soon as the first device is attached to SPDK, all of SPDK memory will be
[all …]
/spdk/test/nvmf/target/
H A Drpc.sh52 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s $NVMF_SERIAL
53 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 Malloc1
54 $rpc_py nvmf_subsystem_allow_any_host -d nqn.2016-06.io.spdk:cnode1
55 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TA…
58 NOT $NVME_CONNECT "${NVME_HOST[@]}" -t $TEST_TRANSPORT -n nqn.2016-06.io.spdk:cnode1 -q "$NVME_HOST…
61 $rpc_py nvmf_subsystem_add_host nqn.2016-06.io.spdk:cnode1 "$NVME_HOSTNQN"
62 $NVME_CONNECT "${NVME_HOST[@]}" -t $TEST_TRANSPORT -n nqn.2016-06.io.spdk:cnode1 -a "$NVMF_FIRST_TA…
64 nvme disconnect -n nqn.2016-06.io.spdk:cnode1
68 $rpc_py nvmf_subsystem_remove_host nqn.2016-06.io.spdk:cnode1 "$NVME_HOSTNQN"
69 NOT $NVME_CONNECT "${NVME_HOST[@]}" -t $TEST_TRANSPORT -n nqn.2016-06.io.spdk:cnode1 -a "$NVMF_FIRS…
[all …]
H A Dtls.sh53 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -s SPDK00000000000001 -m 10
54 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT \
57 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 malloc0 -n 1
59 $rpc_py nvmf_subsystem_add_host nqn.2016-06.io.spdk:cnode1 nqn.2016-06.io.spdk:host1 \
140 subnqn:nqn.2016-06.io.spdk:cnode1 hostnqn:nqn.2016-06.io.spdk:host1" \
144 run_bdevperf nqn.2016-06.io.spdk:cnode1 nqn.2016-06.io.spdk:host1 "$key_path"
147 NOT run_bdevperf nqn.2016-06.io.spdk
[all...]
/spdk/scripts/vagrant/
H A DREADME.md1 # SPDK Vagrant and VirtualBox
3 The following guide explains how to use the scripts in the `spdk/scripts/vagrant`. Mac, Windows, an…
78 ## Download SPDK from GitHub
80 Use git to clone a new spdk repository. GerritHub can also be used. See the instructions at
81 [spdk.io](http://www.spdk.io/development/#gerrithub) to setup your GerritHub account. Note that thi…
86 Use the `spdk/scripts/vagrant/create_vbox.sh` script to create a VM of your choice. Supported VM p…
97 $ spdk/scripts/vagrant/create_vbox.sh -h
110 -l use a local copy of spdk, don't try to rsync from the host.
111 -d deploy a test vm by provisioning all prerequisites for spdk autotest
123 It is recommended that you call the `create_vbox.sh` script from outside of the spdk repository.
[all …]
H A Dlocal.conf10 TEMPEST_VOLUME_DRIVER=spdk
27 default_volume_type = SPDK
28 enabled_backends = spdk
29 target_helper = spdk-nvmeof
32 [spdk]
40 target_helper = spdk-nvmeof
41 target_prefix = nqn.2014-08.org.spdk
42 volume_driver = cinder.volume.drivers.spdk.SPDKDriver
43 volume_backend_name = SPDK
/spdk/test/sma/
H A Dvfiouser_qemu.sh68 vm_exec $1 "grep -sl SPDK /sys/class/nvme/*/model || true" | wc -l
120 -device pci-bridge,chassis_nr=1,id=pci.spdk.0 \
121 -device pci-bridge,chassis_nr=2,id=pci.spdk.1"
127 # Start SPDK
150 - name: 'pci.spdk.0'
152 - name: 'pci.spdk.1'
173 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:vfiouser-0
174 vm_check_subsys_nqn $vm_no nqn.2016-06.io.spdk:vfiouser-0
180 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:vfiouser-0
181 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:vfiouser-1
[all …]
H A Dnvmf_tcp.sh95 devid0=$(create_device nqn.2016-06.io.spdk:cnode0 | jq -r '.handle')
96 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:cnode0
98 devid1=$(create_device nqn.2016-06.io.spdk:cnode1 | jq -r '.handle')
99 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:cnode0
100 rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:cnode1
108 tmp0=$(create_device nqn.2016-06.io.spdk:cnode0 | jq -r '.handle')
109 tmp1=$(create_device nqn.2016-06.io.spdk:cnode1 | jq -r '.handle')
117 NOT rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:cnode0
121 NOT rpc_cmd nvmf_get_subsystems nqn.2016-06.io.spdk:cnode1
129 devid0=$(create_device nqn.2016-06.io.spdk:cnode0 | jq -r '.handle')
[all …]
/spdk/rpmbuild/
H A Dspdk.spec15 Name: spdk
20 # This is a minimal set of requirements needed for SPDK apps to run when built with
45 URL: https://spdk.io
46 Source: spdk-%{version}.tar.gz
50 The Storage Performance Development Kit (SPDK) provides a set of tools and libraries for
92 # SPDK always builds static, so remove it if we want shared.
118 # And some useful setup scripts SPDK uses
119 mkdir -p %{buildroot}/usr/libexec/spdk
125 cat <<-EOF > %{buildroot}/etc/ld.so.conf.d/spdk.conf
133 PATH=$PATH:/usr/libexec/spdk/scripts
[all …]
/spdk/docker/
H A Ddocker-compose.yaml8 image: spdk
13 image: spdk-app
15 context: spdk-app
20 spdk:
24 - ./spdk-app/storage-target.conf:/config
29 image: spdk-app
31 context: spdk-app
36 spdk:
40 - ./spdk-app/proxy-container.conf:/config
53 spdk:
[all …]
H A DREADME.md1 # SPDK Docker suite
3 This suite is meant to serve as an example of how SPDK can be encapsulated
4 into docker container images. The example containers consist of SPDK NVMe-oF
5 target sharing devices to another SPDK NVMe-oF application. Which serves
35 `docker-compose.yaml` shows an example deployment of the storage containers based on SPDK.
44 The `build_base` image provides the core components required to containerize SPDK
45 …he Fedora Container Registry is used and then SPDK is installed. SPDK is installed out of `build_b…
50 - storage-target: Contains SPDK NVMe-oF target exposing single subsystem to `proxy-container` based…
52 - traffic-generator-nvme: Contains FIO using SPDK plugin to connect to `proxy-container` and runs a…
53 - traffic-generator-virtio: Contains FIO using SPDK plugin to connect to `proxy-container` and runs…
[all …]
/spdk/include/spdk_internal/
H A Dusdt.h9 #include "spdk/config.h"
10 #include "spdk/env.h"
20 #define SPDK_DTRACE_PROBE(name) DTRACE_PROBE1(spdk,name,0)
21 #define SPDK_DTRACE_PROBE1(name,a1) DTRACE_PROBE2(spdk,name,0,a1)
22 #define SPDK_DTRACE_PROBE2(name,a1,a2) DTRACE_PROBE3(spdk,name,0,a1,a2)
23 #define SPDK_DTRACE_PROBE3(name,a1,a2,a3) DTRACE_PROBE4(spdk,name,0,a1,a2,a3)
24 #define SPDK_DTRACE_PROBE4(name,a1,a2,a3,a4) DTRACE_PROBE5(spdk,name,0,a1,a2,a3,a4)
28 * USDT events with those captured by the lower-overhead SPDK tracing framework.
30 #define SPDK_DTRACE_PROBE_TICKS(name) DTRACE_PROBE1(spdk,name,spdk_get_ticks())
31 #define SPDK_DTRACE_PROBE1_TICKS(name,a1) DTRACE_PROBE2(spdk,name,spdk_get_ticks(),a1)
[all …]
/spdk/test/nvmf/host/
H A Dfailover.sh24 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001
25 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 Malloc0
26 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
27 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_SECOND_PORT
28 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_THIRD_PORT
35 $rpc_py -s $bdevperf_rpc_sock bdev_nvme_attach_controller -b NVMe0 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT -f ipv4 -n nqn.2016-06.io.spdk:cnode1 -x failover
36 $rpc_py -s $bdevperf_rpc_sock bdev_nvme_attach_controller -b NVMe0 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_SECOND_PORT -f ipv4 -n nqn.2016-06.io.spdk:cnode1 -x failover
43 $rpc_py nvmf_subsystem_remove_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
47 $rpc_py -s $bdevperf_rpc_sock bdev_nvme_attach_controller -b NVMe0 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_THIRD_PORT -f ipv4 -n nqn.2016-06.io.spdk:cnode1 -x failover
48 $rpc_py nvmf_subsystem_remove_listener nqn.2016-06.io.spdk
[all...]
H A Dmulticontroller.sh30 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001
31 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 Malloc0
33 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
34 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_SECOND_PORT
37 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode2 -a -s SPDK00000000000002
38 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode2 Malloc1
40 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode2 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
41 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode2 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_SECOND_PORT
51 -s $NVMF_PORT -f ipv4 -n nqn.2016-06.io.spdk:cnode1 -i $NVMF_FIRST_INITIATOR_IP
61 -s $NVMF_PORT -f ipv4 -n nqn.2016-06.io.spdk
[all...]
/spdk/test/external_code/
H A DREADME.md2 module to the SPDK libraries. The makefiles contain six examples of linking against spdk
4 these categories, they also demonstrate linking against the spdk combined shared library,
7 This directory also contains a convenient test script, test_make.sh, which automates making SPDK
8 and testing all six of these linker options. It takes a single argument, the path to an SPDK
12 sudo ./test_make.sh /path/to/spdk
16 in the top level [SPDK github repository](https://github.com/spdk/spdk) and don't have any special

12345678910>>...54