819 Commits

Author SHA1 Message Date
Daniel Verkamp
dc9e11163e bdev: add API to translate to SCSI status
Move the scsi_nvme translation code from the SCSI library into bdev, and
provide a generic way to translate any bdev_io status into a SCSI
status.

Change-Id: Ib61a6209387c24543e31574e2b5ca249e2ac8b74
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-04 09:11:42 -07:00
Daniel Verkamp
2990f869a1 scsi: make spdk_scsi_port definition private
Change-Id: Ib2c17a4dd4ce680161be92f76b831df792f9ff4d
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-04 09:05:53 -07:00
wenzhong wu
c233e455bb Add Cunit test function at subsystem_ut.c
Change-Id: I75ee85e318fdc83122245d486d6a63b3e452a965
Signed-off-by: wenzhong wu <wenzhongx.wu@intel.com>
2017-05-03 17:12:45 -07:00
Fan Lu
7e961dd6e0 Add test function at spdk nvme_ctrlr_c
Change-Id: I4b13414224a95ce391aecf0a3f009e65758522fe
Signed-off-by: Fan Lu <lux.fan@intel.com>
2017-05-03 16:52:43 -07:00
Changpeng Liu
21b08e13ae test/bdevperf: remove unnecessary DPDK log function call
Change-Id: I525bb326d944fc333ba6cd2a95b26326d7ac16d5
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
2017-05-03 15:34:14 -07:00
Daniel Verkamp
a3738d9031 scsi: make spdk_scsi_dev definition private
Change-Id: I62b36a22e11e845045f190886ae00aa644f96ec6
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-03 12:34:57 -07:00
Daniel Verkamp
a6e713d8a1 test/json_util: add unit test for spdk_json_decode_bool()
Change-Id: I18bb8135ef6dda065a57e771894285128c242cba
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-03 10:57:51 -07:00
Daniel Verkamp
bf2795c65d test/blobfs/rocksdb: clean before building
RocksDB's build system does not correctly generate dependencies - if
headers have been removed in the SPDK repository since the previous
build, the .d files will prevent the build from continuing.

Avoid this by cleaning up any left-over build outputs from the previous
run.

Change-Id: Ib8669273eb38c241f83e14714683693430469462
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-02 16:49:50 -07:00
xiajingx
8af7a3a44b Add test cases to blobfs_ut.c
Change-Id: I9c5e9d415465ffbd61d19c27e74121082b1d7fd6
Signed-off-by: xiajingx <jingx.y.xia@intel.com>
2017-05-02 15:17:59 -07:00
Pawel Wodkowski
6999fc24cc test/vhost: simplify autotest.config
Convert autotest.config to a sourceable file. This enables direct or
indirect usage of variables and a chance to remove error prone
statements like '$(cat | grep | awk')'

Change-Id: I3ae4152fd7548e4b2bfd01c00b614155871b2db3
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
2017-05-02 15:16:51 -07:00
Daniel Verkamp
12965bb6ce scsi: make spdk_scsi_lun definition private
The contents of struct spdk_scsi_lun don't need to be part of the public
API.

Change-Id: I101b77871054557380610fd901ab38bada463202
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-02 09:41:43 -07: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
8375124f24 test/blobfs/rocksdb: check for errors
Change-Id: I8ab76beff22b803ac1ff22f1c91826870dbe9e7b
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-05-01 11:11:03 -07:00
Daniel Verkamp
388ca48336 test/iscsi_tgt/nvme_remote: kill both processess on failure
Fix the incorrect iSCSI PID ($pid) and also terminate nvmf_tgt on
failure.

Change-Id: I92457591c98c12f101a1713763ed9dc1feb32cb9
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-28 15:06:27 -07:00
Daniel Verkamp
6b7ea8f032 test: clean up redundant process_core invocations
Similar to commit 378fc7787c5117201038670fb654cbfdaca34fba, remove
unnecessary process_core calls.

Change-Id: I2fb55e39770ca57274c177fce3161f46a94d4efe
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-28 14:50:31 -07:00
Pawel Wodkowski
01af49aa04 test/vhost: limiting max_sectors_kb is no longer needed
Setting max_sectors_kb to 4k was workaround and is no longer needed.
Vhost must work with arbitrary guest settings.

Change-Id: I9ff9d752916e200e79cdd2b4b3d64afdecae11bc
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
2017-04-27 18:18:50 -07:00
Daniel Verkamp
6c17247560 test/nvme/aer: fix inaccurate error message
Change-Id: I5b45db29727e60e4053d3a507e0dbc44211ebb9c
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-26 21:54:14 -07:00
Fan Lu
18f855b138 Add test function at nvme_ut.c
Change-Id: Ib2bb3a219b6853bf0bd45191be80487decdd9144
Signed-off-by: Fan Lu <lux.fan@intel.com>
2017-04-26 21:54:00 -07:00
Daniel Verkamp
e2bf067577 Fix comma spacing errors spotted by astyle 3.0
Change-Id: Ie0543b220367c68c15bc9c4668e39b5336880021
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-25 10:01:18 -07:00
John Meneghini
decea46f59 test: remove unneeded rte includes from overhead.c 2017-04-24 17:09:24 -07:00
Daniel Verkamp
30c849c1a5 test/nvmf/host/fio: skip test if FIO is unavailable
Change-Id: I7a0e2d433a995d7815634fb60a970b722aa41dcd
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-24 15:03:31 -07:00
Changpeng Liu
2e9cd69f52 test/nvme: don't run sgl tests when NS is extended LBA format
Change-Id: I7c60b347c787fa271ab385389ddbbc286366f8e9
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
2017-04-24 13:56:59 -07:00
Daniel Verkamp
6b91943209 scripts/check_format.sh: check spaces in comments
Fix up all existing spacing errors in comments and add an automated
check for patterns like /*comment*/.

Change-Id: I28f61c93612dc0f8aed66bd509da78e91ea9737e
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-24 13:37:41 -07:00
Ziye Yang
13fc774bf4 fio_plugin: add NVMe-oF host support in fio_plugin.
Also adds the automation test case for using remote
NVMe devices exported by NVMe-oF target.

Change-Id: I2b839a4eeec33d5b0c30d654e6013ad8c7949e23
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
2017-04-21 09:38:45 -07:00
Ziye Yang
e15bd00711 nvme: support new format in spdk_pci_addr_parse
The new format is: domain.bus.device.function

For this format, since we use '.' as separator,
to avoid misusing, we only support the following:

1 domain.bus.device.function ( 4 values provided)
2 bus.device.function  (3 values provoided with domain = 0)
3 bus.device  (2 values provided with domain = 0, function = 0)

Change-Id: Ide03db38b4ac7802cf36f0e536e8b997101d6cd3
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
2017-04-21 09:38:45 -07:00
GangCao
b3cc183a53 nvme/example: add shm_id in identify tool under multi-proc case
Change-Id: Ia5427dda190d984edc79603c4b41e74ce49a7a5a
Signed-off-by: GangCao <gang.cao@intel.com>
2017-04-17 13:09:45 -07:00
Jim Harris
b5b9410da3 nvme: remove DELAY_BEFORE_ENABLE quirk and always wait 100us
A 100us is so small that applying the quirk to the specific
SSDs that require the delay is more trouble than it is worth.
So remove the quirk and always wait 100us before re-enabling
the NVMe SSD during initialization.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: Id6a8cc6e35d103fffdf135580301fc3e5b27e722
2017-04-17 11:56:36 -07:00
Daniel Verkamp
0911aa83fb test/bdev: temporarily disable bdevperf reset test
The bdevperf reset test only executes in the nightly test run, so this
problem wasn't caught during review.

It gets stuck in an infinite loop and produces lots of log output; turn
it off to avoid filling up the disk with logs until we determine what
broke it.

Change-Id: I7601ba324a0531de3733cf5784ccd46da5618082
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-14 15:42:08 -07:00
Daniel Verkamp
5742e9b9e7 nvme: allocate requests on a per-queue basis
Change-Id: I7bec816e518a0a6f2e9fb719128c83d4b908d46c
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-12 21:05:24 -07:00
Daniel Verkamp
cd13f280f4 nvme: track qpair within nvme_request
Change-Id: Ia40a1e79db6327c4693731e9bb7a57810795429d
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-12 21:05:23 -07:00
Ben Walker
193f4f8392 nvme: Queue aborts beyond the abort command limit
Queue aborts that would exceed the abort command limit
in software as a convenience for the user.

Change-Id: I8c1f0380984cc6c0cdb453db961939a7f571b336
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-04-12 13:11:01 -07:00
xiajingx
a005708d7d blobfs: Add code to create results folder.
Change-Id: I28a4a1bcce3de6df62a1d4ee2171447c7e26dc9e
Signed-off-by: xiajingx <jingx.y.xia@intel.com>
2017-04-11 09:51:26 -07:00
Ben Walker
10f9391a22 test: Shorten some relative paths using readlink
Core dumps stop working if the path is longer than 64 bytes.
Use readlink to shorten some of the very long relative paths.

Change-Id: I5e7eb6580ca581c5ac3a71afb7b62953836e2660
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-04-07 08:14:34 -07:00
Ben Walker
7f7c03a935 env: Remove all use of RTE_LCORE_FOREACH
Replace with an env abstraction.

Change-Id: I706374d265a270890e1f3ca920a10a0dc09624b0
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-04-05 11:16:37 -07:00
Ben Walker
16ae587966 env: Move lcore functions into env layer.
They were previously in the event library.

Change-Id: I24ffd8f771e895ccf5395c8120423cd114893139
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-04-04 09:19:01 -07:00
Prashanth Nayak
1e4920b261 nvme: remove unused rte_* includes
Change-Id: I9a1e6fab58af3a4b7ba5d408c393a00fc177d3a6
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-03 12:31:12 -07:00
Ben Walker
36a793ad63 nvme: Add a quirk to delay before enabling
It has been discovered that some devices require
a very small delay before writing CC.EN to 1 after
CSTS.RDY goes to 0.

Change-Id: I73d31726d17ebf5bbec7ee528e2f98fcd05234dd
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
2017-04-03 11:18:15 -07:00
Daniel Verkamp
edbca2a676 conf: add Boolean value helper function
Change-Id: Ie86745fe397167416aee356dc773a1bf8387b492
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-04-03 11:17:47 -07:00
Tomasz Zawadzki
7254f2b639 test: removed superflous comments in test config files
This patch removes comments within configuration files for tests
that are not relevant to the test itself.
It reduces the need to update comments in test config files with each update.
As well it makes those same as other test configuration files.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I48116613435fadf0738b5a948d32f458c7ce06be
2017-04-03 11:05:49 -07:00
Jim Harris
5490f17328 test/blobfs: fix a couple of unit test memory leaks
In the cache_append_no_cache test case, we need to
sync the file first, before calling cache_free_buffers().
Otherwise the buffers do not really get freed since they
contain dirty data.

This fixes a couple of memory leak bugs detected with
CONFIG_ASAN=y.

Reported-by: John Meneghini <john.meneghini@netapp.com>
Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: If1ff6ed7d9e7a6dc67af0a2baf3b2555ace610ee
2017-04-03 10:10:12 -07:00
Jim Harris
cc9b53ec25 test/scsi: initialize blocklen parameter for bdev
This parameter is not actually used by the unit
tests using the bdev, but setting it to a non-zero
value silences a couple of static analysis errors.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: Id53a17bcd1f4ec51f35a954ec0f6e6ea9803086e
2017-03-30 10:05:13 -07:00
Piotr Pelplinski
425b902bc0 scsi: use SOFT reset when reseting bdev
This fixes multiple SCSI reset issue.
This patch does not remove sleep in iSCSI tests.

Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Signed-off-by: Piotr Pelplinski <piotr.pelplinski@intel.com>
Change-Id: I5e9f3705e5dc34004b9d1b9e40fbdcb04a3bee4e
2017-03-30 16:09:33 +02:00
Jim Harris
913257cba5 Revert "scsi: use SOFT reset when reseting bdev"
Some intermittent issues still observed with multiple
resets in quick succession.  Reverting for now while the
issue is more fully root caused.

This reverts commit 7fa7f91ee34996144b272f9d2a02988cc35b49d6.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I493b564e8a110bbfb7a6cc47107d53d6eca40053
2017-03-29 15:42:11 -07:00
Daniel Verkamp
f00d22bb29 test/iscsi: fix conf leak in target_node_ut
Change-Id: Iac2ba5dd033682e62d2e32a84e77bbf9585c5235
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-29 15:27:50 -07:00
Daniel Verkamp
df009d7323 test/iscsi: move iSCSI unit tests to unittest.sh
Change-Id: I19f3f5485bfbf3dec275acddbc45786f76cd4198
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-29 15:27:50 -07:00
Daniel Verkamp
14cc383fb0 test/iscsi: build iSCSI unit tests on FreeBSD
Change-Id: Ie640069b831eba4eada9ff0955dca41af852d3a5
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-29 15:27:50 -07:00
Jim Harris
6b1046f780 test/blobfs: use default cache size
Automated test scripts now set up 4096 huge pages by default,
so we can now safely allocate the default 4GB for blobfs cache.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I8aea322068a5df79ca75737c43a4e0e80e7d2be4
2017-03-29 14:13:22 -07:00
Daniel Verkamp
f5f1f24a1f test/scsi_bdev_ut: zero-initialize bdev structures
The bdev product_name field is used in the Inquiry command translation
and was previously uninitialized.

Change-Id: Ie9d056ddaddfbb60ce5c3444ed87f852c00a296d
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-29 11:56:54 -07:00
Daniel Verkamp
70c41f75b5 test/vhost: override NRHUGE to avoid extra setup
Rather than re-running setup.sh during the vhost tests, just
pre-configure NRHUGE to the necessary value for all setup.sh invocations
during autotest.

Change-Id: I1a4d9a7f7ab52082a8f626c3c64807417a493b5f
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
2017-03-29 10:43:11 -07:00
Pawel Wodkowski
7fa7f91ee3 scsi: use SOFT reset when reseting bdev
This fixes multiple SCSI reset issue.

Change-Id: Ie62e0c1850faff17d383bcea00071d63d6bfa7f4
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
2017-03-29 09:17:26 -07:00