91 Commits

Author SHA1 Message Date
Ben Walker
d59f28c28a rocksdb: Add the RocksDB Env to the SPDK repository
This code was previously in our fork of RocksDB. Move it here
so that API breaking changes can update it.

Change-Id: Icae3e22380b9bd3de8c1ec5b6f82909f812d204b
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/364531
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2017-06-13 11:38:06 -04:00
GangCao
aadd38fd8e doc/bdev: update the AIO configuration example
Change-Id: Icfbf27c73e9deabbce76129dc9f28b7dfbcda2a9
Signed-off-by: GangCao <gang.cao@intel.com>
Reviewed-on: https://review.gerrithub.io/364335
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-06-07 14:02:46 -04:00
Ben Walker
d969ac445a io_channel: Remove per-channel priority
This wasn't used anywhere and we currently believe there
are superior software-only techniques for controlling
quality of service.

Change-Id: Icdadd5870ed0629b338c307d2619bbc242c3e7a3
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/362065
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2017-05-26 13:42:19 -04:00
Daniel Verkamp
f50ea14403 rocksdb: stop passing $DPDK_DIR to db_bench build
The RocksDB SPDK environment no longer depends directly on DPDK.

Change-Id: Ifcabcd137292f86724a1e3fed93abb94fa5a2344
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-01 11:11:03 -07:00
Daniel Verkamp
2ba947380f doc: generate PDF version of Doxygen output
Change-Id: Id21c369a7c6a6e73894b8458dfefd3c8c411211e
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-30 07:58:26 -07:00
Daniel Verkamp
1a787169b2 doc: flatten Markdown docs into chapter-per-file
Doxygen interprets each Markdown input file as a separate section
(chapter).  Concatenate all of the .md files in directories into a
single file per section to get a correctly-nested table of contents.

In particular, this matters for the navigation in the PDF output.

Change-Id: I778849d89da9a308136e43ac6cb630c4c2bbb3a5
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-30 07:58:26 -07:00
Daniel Verkamp
33c81b8bce doc: simplify HTML header and stylesheet
Drop the header and footer that matched spdk.io; the official website
doc generation will drop in the correct header when the docs are
generated.  Also restore the Doxygen header bar to allow navigation on
locally-built docs.

Change-Id: I711d109dc34866917cbaf2cb0045375b0ceb11b0
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-28 13:13:48 -07:00
Daniel Verkamp
1b627af8fd doc: update Doxyfile for Doxygen 1.8.13
Automatically updated with 'doxygen -u'.

Change-Id: I22316a5298d691a288104ca1cab9d589bc0ae177
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-28 11:05:40 -07:00
John Kariuki
e2d0d9799c doc/nvmf: add description of virtual mode
Added a section that describes the steps to configure a virtual controller.
Also update the CPU core affinity section to remove the section numbers.

Change-Id: Ide519c31d8653477ea9d9b65b03fe3ea37f78e61
Signed-off-by: John Kariuki <John.K.Kariuki@intel.com>
2017-04-26 06:41:28 -07:00
Pawel Wodkowski
9aaccfe3d7 vhost: enable VFIO
Vhost needs to register memory given by guest in VFIO container to be
able to do any DMA using this memory.

Currently DPDK doesn't provide any interface to handle guest memory, so
for now lets find container fd in /proc/self/fd/ directory and provide
some VFIO internal API that finally should extend DPDK API.

Change-Id: Iee9d496367ccd61219068fc0eadc17e786ff0731
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
2017-04-24 12:20:04 -07:00
Piotr Pelplinski
dfdb6edd3f vhost: Getting Started for SPDK vhost
This patch adds getting started guide for SPDK vhost.
This document describes how to build and run vhost application.

Signed-off-by: Piotr Pelplinski <piotr.pelplinski@intel.com>
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Icab3ad75f1ebf4d53153fb7070151a7244f1dfa9
2017-03-29 13:09:57 -07:00
Ben Walker
fcb333e5b5 blob: Add a design document
This outlines the basic concepts in the blobstore.

Change-Id: Ib44c3bd5c04ddb0cc06eeb0e50ae6ff1bdf94dd5
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-03-27 15:35:51 -07:00
Daniel Verkamp
42eade49cc doc: update CSS layout to match spdk.io
Change-Id: I2c42fd3d626854fcdb0e70fdcc7d1b4ccb257c8c
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-24 16:12:22 -07:00
Jim Harris
1edd9bf3e4 blobfs: Add a lightweight filesystem built on the blobstore
This is the initial commit for "blobfs", a lightweight
filesystem built on top of the SPDK blobstore.

Also included in this patch:

1) a shim for using SPDK bdevs as the backing store for
   SPDK blobstore/blobfs
2) documentation for using blobfs as the storage engine
   with RocksDB
3) scripts for running a set of workloads and collecting
   profiling data with RocksDB and blobfs

See doc/blobfs/getting_started.md included in this commit
for more details on blobfs, including some of the current
limitations.


Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I2a6d3d4b87236730051228ed62c0c04e04c42c73
2017-03-24 14:15:45 -07:00
Ben Walker
6d7b6e882c bdev/aio: The user now provides the names of AIO bdevs
The user now must choose the name for each AIO bdev. This
provides consistency for names across restarts.

Change-Id: I13ced1d02bb28c51d314512d60f739499b0c7d8d
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-03-20 15:18:03 -07:00
Cunyin Chang
1054432d06 doc: Add initial documentation for iscsi hotplug.
Change-Id: I432b83c9bf4a39cd061579d0318b91903299e080
Signed-off-by: Cunyin Chang <cunyin.chang@intel.com>
2017-03-17 16:06:26 -07:00
Cunyin Chang
3979c15f66 doc: Add initial documentation for nvme hotplug.
Change-Id: I67303d07aee931d19b3a9ae1e618d22fc6de9f58
Signed-off-by: Cunyin Chang <cunyin.chang@intel.com>
2017-03-17 16:06:20 -07:00
GangCao
7f819108bd doc: add the documentation for NVMe Multi-Process feature
Change-Id: Iace3e4f1804be19f46044ee3b2530e49c8adf4d8
Signed-off-by: GangCao <gang.cao@intel.com>
2017-03-17 14:44:03 -07:00
Jim Harris
4a74580112 bdev: add a getting started guide
For now, this contains the documentation for configuring
block devices in configuration files.  This file can then
be used a common reference for other getting started guides -
iscsi, vhost and nvmf targets.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: Ie6f6c0b3f36dd3fdf418b904462c81a1696b9694
2017-03-16 05:43:28 -07:00
Ben Walker
d326998ce7 bdev/nvme: Names are now explicitly assigned by the user
Names for the NVMe bdevs are now assigned by the user.
This means the same name will always be assigned to the
same device, even across restarts.

Change-Id: If9825ec9abcb5236b4671bc44a825e4f0d704fe3
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-03-15 17:42:45 -07:00
Ben Walker
0829424e19 conf: No longer allow wildcard claiming of NVMe devices
All devices must be specified by BDF. Add support for scripts
to use lspci to grab the available NVMe device BDFs for the
current machine.

Change-Id: I4a53b335e3d516629f050ae1b2ab7aff8dd7f568
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-03-14 08:38:04 -07:00
John Kariuki
8e632c0722 nvmf: Added infiniband/RDMA prerequisites and core assignment configuration
Update the NVMe-oF getting started guide.
Added the infiniband/RDMA verbs and RDMA NIC configuration.
Also added a configuration section for Core Assignment.

Change-Id: I6f98a2156ca5c6050fecfbfb9afa797492fbf16d
Signed-off-by: John Kariuki <John.K.Kariuki@intel.com>
2017-03-06 15:51:58 -07:00
Daniel Verkamp
eeb08505d9 doc: add a page about NVMe library NVMe-oF support
Change-Id: I64afae66273a487c7232bb22f380e324e725d4e2
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-02-23 17:49:17 -07:00
Daniel Verkamp
956ff9b255 doc: add Roadmap link to header
Update to match spdk.io.

Change-Id: I05ef119d9756a5af77d22c5ca0db438b549dbbf8
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-02-17 15:18:30 -07:00
Daniel Verkamp
888c105bd9 doc: update footer to match spdk.io
The footer is just a duplicate of the links in the header, so it has
been removed.

Change-Id: I9c25669fe8429d84b5f48d037a4e6848599fb7bf
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-02-17 15:18:30 -07:00
Ziye Yang
86f80d2d70 doc, nvmf: change discovery to discover
Change-Id: If545f24d4737c190bc90e4a82155cbddbfef5bb0
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
2017-02-09 09:56:36 -07:00
Daniel Verkamp
b71c31335d event: move component descriptions to doc/ and rewrite
Change-Id: I53b061933319204f9153423fa18532712676287a
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-31 14:50:29 -07:00
Daniel Verkamp
72ad2c0173 doc: cut out whitespace between header and content
Change-Id: Ic839ac1466f3f16c1a2c6b2066209b580ced8058
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-30 14:08:06 -07:00
Daniel Verkamp
efccac8c7e bdev/nvme: remove NvmeLunsPerNs and LunSizeInMB
These were only intended for testing and should be replaced by a virtual
blockdev that can be layered on top of any kind of bdev.

Change-Id: I3ba2cc94630a6c6748d96e3401fee05aaabe20e0
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-30 13:51:18 -07:00
Changpeng Liu
919c4b540e doc/nvmf: add NVMeoF kernel based initiator usage
Change-Id: Icea0d7fbf1801cc4df66392ece5ac67e0d9584c0
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
2017-01-25 16:31:43 -07:00
Daniel Verkamp
b23409854c doc: point Documentation link at index page
Rather than hard-coding the spdk.io/doc link, change the Doxygen header
to output a link to index.html (the main Doxygen page) so that it will
always point within the current doc tree.

This is important for archived release versions of the documentation,
since their documentation link should point at their own main page, not
the current master doc.

Change-Id: I788eee995543e425c24ff787f3f13956c5b813b7
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-18 16:07:31 -07:00
Daniel Verkamp
997582bf2c doc: delete Doxygen header bar
It doesn't provide any useful functionality, and it clashes with the
spdk.io site theme.

Change-Id: I2a8019956312b8726e0d959fd944a6664b9e6887
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-18 10:06:40 -07:00
Daniel Verkamp
0f6baa967e doc: link to Doxygen's file list from main page
Change-Id: I703732d28b73d03fd0d43017cd262af4a2d666c2
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-17 17:39:01 -07:00
Daniel Verkamp
ac89a03cab doc: mark Documentation tab as active in header
Change-Id: I2610d74e4b45da4d36a9557434c970b194046085
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-17 17:34:18 -07:00
Daniel Verkamp
bafb1441d7 doc: remove Doxygen footer
This cleans up the output HTML and stylistically matches the main
spdk.io layout better.

Change-Id: I630e895e5cae917985081fc53d8d809b8b6c2844
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-17 16:54:31 -07:00
Daniel Verkamp
93ab7c31e4 doc: move porting guide into doc/ and add to index
This moves all the documentation under the doc/ tree for consistency.

Replace the link to include/spdk/env.h to raw text - the Doxygen
Markdown parser will automatically turn it into a link since it is a
Doxygen input file.

Change-Id: If6bde1cfc965cada2c741acd5505026545ad4cf7
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-17 16:25:04 -07:00
Daniel Verkamp
efa8a3ebde doc: update header to match current spdk.io
Change-Id: I39b63ee9ab823a7b9f287d71cb14b036943a00f2
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-17 13:41:03 -07:00
Daniel Verkamp
360a3da3d7 doc/nvme: add admin functions to Key Functions
Columns needed to be adjusted to fix the longer function names.

Change-Id: Id5336a2e9b0ba5f9bcaa90228ea641cfd4a7581c
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-01-13 12:37:41 -07:00
Ben Walker
6644241f7e docs: Match doxygen output to spdk.io
Change-Id: Ic042024915bfbee1028154ad5bad11cd14956e51
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-09 15:52:51 -07:00
Ben Walker
0c01cc5664 doc: Convert iscsi doc to markdown
Change-Id: I70da378361bd82da7b42f4ad5a5560baf70361f2
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 16:21:28 -07:00
Ben Walker
4aba7b498d doc: Convert nvmf doc to markdown
Change-Id: I1a1c8570f4b2b2cd6074a4bdd6102751f6239715
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 16:21:27 -07:00
Ben Walker
58ca5c52ff doc: Convert ioat doc to markdown
Change-Id: Ic0f8fa4aa57d6fc58813fcbb6d72ff5477ab293f
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 08:33:59 -07:00
Ben Walker
0be12ad7da doc: Convert nvme docs to markdown
Change-Id: Ifc9c79886f05c6a3abd1553021a65724e53dd5c0
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 08:33:59 -07:00
Ben Walker
55ca1581d6 doc: Convert directory structure to markdown
Change-Id: I3af62591658ccd2ae664d73ab5a680a9725469e7
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 08:33:59 -07:00
Ben Walker
98149ec0a7 doc: Convert mainpage to Markdown
Convert to markdown. Our other GitHub files are in markdown
and doxygen natively supports it, so begin converting the
documentation entirely to markdown to minimize the number
of formats we have to comprehend.

Also rename it to index.md to match the other top level
files. Index and mainpage are interchangeable terms in
Doxygen.

Change-Id: I0f7274b47de6411f8d2d09d987fd1344e01a3986
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-01-05 08:33:59 -07:00
Daniel Verkamp
025f20fbdd doc: tweak some Doxygen configuration parameters
- Show undocumented members so that they at least show up in the
output, even if they don't have any associated doc string.  Everything
in the public headers should be public API.

- Disable include graph generation.  This is fairly useless for our
purposes, since only public API headers are included in the Doxygen
input list, and we don't need to see how they include each other.

Change-Id: Ie1e2d5a93c1ae526d5867e0707faf40e32d1c969
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2016-12-19 15:58:00 -07:00
Daniel Verkamp
a3658ab042 Change doc link to new spdk.io/doc location
Also make sure all links point to the canonical www.spdk.io, not
spdk.io, to avoid extra redirects.

Change-Id: I5696abf8569c36f9be741bc932e320d8b7156875
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2016-12-19 15:57:12 -07:00
Daniel Verkamp
6db4f2b072 doc: update link to renamed deallocate function
Change-Id: Ifc93a761635a2c0922813d0f8bb3efbc1ab6136b
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2016-12-08 10:01:08 -07:00
Ben Walker
4c0b0ddbda doc: Begin documenting the directory structure
This adds a document that begins to describe the SPDK
repository directory structure. Much of the document
still needs to be written.

Change-Id: I8bb6659e5e3e9a22e6bc2d3374d41b16a51614f8
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2016-12-07 16:03:16 -07:00
Daniel Verkamp
c01291b215 doc: remove link to nvme_driver_integration page
The NVMe-specific driver integration docs were removed as part of commit
bfdc02ab486b00fcabc636e60e0e6b00311945ee (nvme: Eliminate nvme_impl.h
and use the swappable env lib.), so the link is dead now.

Change-Id: I4210abb6d1ab4bdc2be42cb4f28ccbabafa69176
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2016-11-01 09:43:32 -07:00