Commit Graph

555 Commits

Author SHA1 Message Date
Ben Walker
bbd36d0dd8 test: Wait for 'nvme disconnect' operations to remove disks
Use waitforserial_disconnect to wait for all nvme disconnect operations
to actually finish.

Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Change-Id: I91f410d9a84db33cf5d8e9d7ecdd4e7a7003aae0
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9314
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Dong Yi <yidong0635@126.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-09-09 12:57:55 +00:00
Krzysztof Karas
eaebf84102 autotest_common.sh: change rpc_py to rpc_cmd
Change rpc_py to use rpc_cmd function.
The former needs to be defined explicitly in the scripts
that uses function, while the latter is a function
already available in autotest_common.sh.
Additionally delete unnecessary rpc_py declarations
and override rpc_cmd where additional arguments are
needed (like -s sock_name.sock).

Change-Id: I835f7eb308cd77658a2a425e153ab7ca460b5b61
Signed-off-by: Krzysztof Karas <krzysztof.karas@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12872
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-09-01 11:15:03 +00:00
Jun Wen
03402efd43 test/nvmf: Adaption for nvmf-llvm-fuzz test to per-patch CI pipeline job
Signed-off-by: Jun Wen <junx.wen@intel.com>
Change-Id: If76f5c8259b0e96b34cbb99fe8953660c6d5d520
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13440
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: <qun.wan@intel.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: GangCao <gang.cao@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
2022-08-30 14:09:37 +00:00
yidong0635
60e1beb77f test: Add concat to fio.sh.
Add a raid_bdev with raid_level=concat to fio tests.

Signed-off-by: yidong0635 <dongx.yi@intel.com>
Change-Id: Ia8bf05aa2426beb1cdcd258dcb154b4f6198ab8d
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13774
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: GangCao <gang.cao@intel.com>
Reviewed-by: <qun.wan@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-08-25 07:31:20 +00:00
Jim Harris
a100b4a4a4 test: remove nvme deallocated_value test
This test was originally written to validate
assumptions around the QEMU deallocate implementation.
It's not really very useful anymore, so rather than
continuing to maintain it (including adding
support for interleaved and separate metadata),
let's just remove it.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I4588cf7bc5f4b339674afc0e09f386784ab874e2
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14096
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-08-18 08:35:02 +00:00
Boris Glimcher
6212597bda sock/ssl: Add psk_key and psk_identity options to spdk_sock_impl_opts
Note, this change only sets defaults for the ID/KEY,
more specific use cases like NVMe/TCP may set the ID and KEY on a per connection basis.

Also simplify PSK identity string, that isn't NVMe focused.
NVMe libraries using this will need to construct more complicated
identity strings and pass them to the sock layer.

Example:
  rpc.py sock_impl_set_options -i ssl --psk-key 4321DEADBEEF1234
  rpc.py sock_impl_set_options -i ssl --psk-identity psk.spdk.io

  ./build/examples/perf --psk-key 4321DEADBEEF1234 --psk-identity psk.spdk.io

  ./build/examples/hello_sock --psk-key 4321DEADBEEF1234 --psk-identity psk.spdk.io

Change-Id: I1cb5b0b706bdeafbccbc71f8320bc8e2961cbb55
Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13759
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
2022-08-15 16:52:28 +00:00
Ben Walker
bc7f73996e test/adq: Remove unnecessary sleeps
These sleeps should not be required. The steps before them properly
wait.

Change-Id: Ifc278c582dbf8fd837ca7f1f02873789a4e616d6
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13835
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2022-08-12 09:00:26 +00:00
Ben Walker
9a9c9d3303 test/adq: Move nvmfappstart outside of adq_start_nvmf_target
Also rename adq_start_nvmf_target to adq_configure_nvmf_target.

Change-Id: I92bf4b7743061543a4d5fcbeaa59d0ff387e1395
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13834
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2022-08-12 09:00:26 +00:00
Ben Walker
8ebb8e65e7 test/adq: Simplify connection counting strategy
We can use the nvmf_get_stats RPC to directly count the number of
connections on each poll group.

Also, we cannot rely on knowing the exact algorithm that the driver will
use to assign connections to NAPI values. We can only know that the
number of unique NAPI values is AT MOST equal to the number of traffic
classes.

Fixes #2577

Change-Id: I6758fdcda752ff5372b1bc59984257b804ad0ea7
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13833
Reviewed-by: wanghailiang <hailiangx.e.wang@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-08-12 09:00:26 +00:00
Jim Harris
3403be99bb test: disable reconnect test
This is causing too many intermittent failures, let's
disable for now while we continue to debug it.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I8f1f1824b1aa57fe242a77f5d96c9301a2921824
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14001
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: GangCao <gang.cao@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-08-12 02:55:56 +00:00
Shuhei Matsumoto
1bfe8f98a1 test/nvmf_timeout: Reduce TCP Ack timeout
By the default value, timeout might be too long to detect connection
failure by the end of the test. 512 milliseconds is too small to use
in production but is not so small for this case.

Fixes #2595

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I9f1248b2812eb7625aa943878b022f0a151d4cbb
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13908
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Michal Berger <michal.berger@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-08-09 11:51:46 +00:00
Michal Berger
5ba8b04fb9 test/nvmf: Don't redeclare trap inside nvmf_timeout test
It's not needed. $bdevperf_pid is expanded when the trap is signalled,
hence it will always hold PID of the last value it got assigned to.

Signed-off-by: Michal Berger <michal.berger@intel.com>
Change-Id: I89083667e0be5f3f0b0fd1745bfbfb38cb340c42
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13922
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-08-09 11:49:06 +00:00
Michal Berger
2eb37d32cd test/nvmf: Remove try.txt from nvmf_timeout test
The contents of this file is not evaluated in any way, the test only
reads it back to stdout at different stages. Instead, just keep
bdevperf writing to std{out,err}.

Signed-off-by: Michal Berger <michal.berger@intel.com>
Change-Id: Ibd0caa101e895661224f8a969395eb018ece19dc
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13921
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-08-09 11:49:06 +00:00
Changpeng Liu
df38292ec3 test/nvmf/timeout.sh: use randread as the test case
The reconnect timeout test case expects a socket READ error
to trigger the reconnect poller in bdev_nvme module, but
we use the `verify` IO workload to send IO requests which
may cause the client doesn't receive any error, because
it will send WRITE commands first.

Fix issue #2595.

Change-Id: Ibc6b534d157552cdb2b55a03c869e254ec4c462e
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13840
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: Michal Berger <michal.berger@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-08-05 08:29:11 +00:00
Ben Walker
72285fa540 test/adq: Remove interrupt checks
SPDK has no control over how the interrupts work in the network stack.
SPDK can only group connections together based on their NAPI ID. So
remove this check from our tests. It's only going to result in
intermittent CI failures.

Change-Id: If8e6214b7d6c5aa4df99101612b98aa43d45b459
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13832
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-08-03 07:52:45 +00:00
Ben Walker
33f0321083 test/adq: Combine adq_configure_driver and adq_configure_traffic_classes
These are only called back-to-back and they're both configuring the
driver.

Change-Id: Icc07df1cf23d67954ac3621647b050d4c8c74e64
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13831
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-08-03 07:52:45 +00:00
Ben Walker
5063e7f810 test/adq: Rename some functions to make it clear they're in the adq test
scope

Some of these names were hard to tell if they were common utilities or
ADQ test functions. Clarify the names.

Change-Id: If6998c3ea996ad6fef0a87a33c90d665c9accaa8
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13830
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-08-03 07:52:45 +00:00
Changpeng Liu
3314f12bfd test/nvmf: use a more relax test condition
Also display the log when error happens.

Change-Id: I09040a2fee2379e7506701c7cb558f0d26a5de65
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13805
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-08-03 01:26:10 +00:00
Boris Glimcher
806744b7c8 sock: Add ktls and tls_version to spdk_sock_impl_opts
Since `sock_impl_opts` was added to `sock_opts`
Can remove `ktls` and `tls_version` from spdk_sock_opts

Example:
  rpc.py sock_impl_set_options -i ssl --enable-ktls
  rpc.py sock_impl_set_options -i ssl --disable-ktls
  rpc.py sock_impl_set_options -i ssl --tls-version=12

  ./build/examples/perf --enable-ktls
  ./build/examples/perf --disable-ktls
  ./build/examples/perf --tls-version=12

Check kTLS statistics here: /proc/net/tls_stat

Change-Id: Icf7ee822bad92fda149710be77feb77fc8d4f163
Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13510
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2022-07-22 06:41:39 +00:00
John Levon
6066e62ee6 nvmf/vfio-user: allow multiple reactors
Update libvfio-user such that the SGL access APIs can be used
concurrently. We are guaranteed that the guest memory remains mappable
now that the vfio-user transport has implemented quiescence.

This is currently only really useful (for a single controller) in poll
mode, but shouldn't break interrupt mode, as we still ensure all a
controller's queues are on the same poll group in that case.

Signed-off-by: John Levon <john.levon@nutanix.com>
Change-Id: I0988e731558e9bf63992026afc53abc66ec2a706
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12349
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2022-06-28 07:05:27 +00:00
Kamil Godzwon
14c0f94c88 test/fio: supress fio output files
verify.state files are not very useful because
we fail the tests at any first failure.
If there was something wrong with IO verification
then autotest.sh would fail.

Fio files with metrics output (IOPS, BW, latency, etc)
are also not very useful as per-patch tests are not
focused on benchmarking.

Fixes #2546

Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Change-Id: I33fbe2fb0749d840f08ffe0d606d206268140991
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13019
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-06-23 07:43:36 +00:00
Boris Glimcher
3781c0ea85 test/nvmf: TLS test
This new test uses new ssl socket implementation
to create and test NVMe/TCP with TLS.

Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
Change-Id: I8c8f81fbc20d5811ecbc94d849a364e4f3f3945c
Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12379
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2022-06-20 14:59:47 +00:00
wanghailiangx
0c106d2b84 test/multipath: Use variable instead of fixed IP value
Change-Id: Ia52fe6a3a9a7be9cd9b27e543cc57a3f13e18c3b
Signed-off-by: wanghailiangx <hailiangx.e.wang@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12837
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-06-15 11:19:20 +00:00
Karol Latecki
bc0c0bd009 test/nvmf: remove create_tranport test
Transport layer creation is covered by basically any
test in test/nvmf. Similarly "nvme discover" and
subsystem deletion performed later in the script are
also already covered by other test scripts.

Let's remove this script and save about 10 seconds
of run time.

Change-Id: Id37d217972246b6cb1dfaaaf0443016931809dbc
Signed-off-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12921
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Michal Berger <michallinuxstuff@gmail.com>
2022-06-15 08:09:45 +00:00
Monica Kenguva
95e057210e test/nvmf: test reconnect_delay_sec parameter
Signed-off-by: Monica Kenguva <monica.kenguva@intel.com>
Change-Id: I45dc2b2fe660e5a53c8976dea2640ea53ec00a3d
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12184
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-06-06 07:51:54 +00:00
wanghailiangx
617a7303f5 perf_adq: Increase number of io queues per namespace.
Increase this -P(num-qpairs) value a bit to make the test run more stable.

Fixes #2539

Change-Id: If38281ab490a53387fd97d7a63d0413d5bd4c191
Signed-off-by: wanghailiangx <hailiangx.e.wang@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12859
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2022-06-06 07:35:33 +00:00
Monica Kenguva
38012f56d4 test/nvmf: Test bdev nvme connection and reconnect timeout parameters
ctrlr_loss_timeout_sec and fast_io_fail_timeout_sec are
tested with bdev_nvme_attach_controller RPC parameters

Signed-off-by: Monica Kenguva <monica.kenguva@intel.com>
Change-Id: Ia89a7998732abc9974427e86cf64ad17dd8fdf58
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12016
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-06-01 08:57:28 +00:00
wanghailiangx
c930efda28 test/adq: a functional perf test for tcp with ADQ enabled
We apply ADQ on target, then run perf, so that we can verify
SPDK implementation interacting with ADQ.
Although the functional test cases here are relatively simplified,
and in the CI, we have to add -debug compilation option,
so the perf performance with ADQ may not be ideal. We will give
another performance test reference cases of ADQ later.

Change-Id: I5341a7fcd61334ef78084302a4ae70f8ec9b9e46
Signed-off-by: wanghailiangx <hailiangx.e.wang@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7476
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Xiaodong Liu <xiaodong.liu@intel.com>
2022-05-24 09:17:00 +00:00
Konrad Sztyber
e5f9e82291 bdev/nvme: add timeout option to start_discovery
It's now possible to specify a time to wait until a connection to the
discovery controller and the NVM controllers it exposes is made.

Whenever that time is exceeded, a callback is immediately executed.
However, depending on the stage of the discovery process, we might need
to wait a while before actually stopping it (e.g. because a controller
attach is in progress).  That means that a discovery service might be
visible for a while after it timed out.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I2d01837b581e0fa24c8e777730d88d990c94b1d8
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12684
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-05-18 07:24:06 +00:00
Konrad Sztyber
ef675d38c1 bdev/nvme: check discovery service trids during start
Check that we're not already connected to a discovery service that has
the same address (or has a referall to) as the service we're trying to
start.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I84863fd959f62b30e9a348f69d10c7f1edffda7a
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12627
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-05-16 10:20:49 +00:00
Konrad Sztyber
33c14a1445 bdev/nvme: don't allow duplicate discovery service names
Otherwise, we'll try to use the same name to create the bdevs.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I38cfb9073f343a7bf3966754008065c7ab89e609
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12626
Community-CI: Mellanox Build Bot
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-05-16 10:20:49 +00:00
Alexey Marchuk
b0262063d3 vbdev_lvol: Report memory domains
Update functional test to verify that lvol supports
memory domains

Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Change-Id: I5e91eedc8879359c3add45d417b6f3eaad4d75b9
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11375
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-05-16 10:14:26 +00:00
Alexey Marchuk
381aa0e105 test/dma: Add option to check specific operation
Add a CLI param "-x" to specify which memory
domain operation must be executed during test

Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Change-Id: I0dbee8d5d186da1e177e24beadc4e71909e4057f
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12344
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-05-16 10:14:26 +00:00
Karol Latecki
3bdb1a2f55 test/nvmf: reduce number of iterations in connect_disconnect test
Reduce the number of iterations by half. Currently this
test often leads to time-outs in CI nightly testing because
of how long it takes.

Signed-off-by: Karol Latecki <karol.latecki@intel.com>
Change-Id: I3ccf9663706e5f79da609d6b9ffa08bb89dc31dd
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12658
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-05-13 07:02:17 +00:00
Monica Kenguva
91751e1e40 test/nvmf: Multipath testing with ANA states support
Signed-off-by: Monica Kenguva <monica.kenguva@intel.com>
Change-Id: Ide3af4fd027450eeac523e7078ba41ab0572ed80
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10197
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-05-12 07:22:23 +00:00
Jaroslaw Chachulski
dc43293241 test/vhost: Fix test exit when there are NICs without RDMA support
We have separated the process_shm function in order to avoid its call-out in "nvmftestinit" when there are no rdma cards

Signed-off-by: Jaroslaw Chachulski <jaroslawx.chachulski@intel.com>
Change-Id: I42d2d3426b71199a248bbfb238ab3811457c68bd
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12394
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-05-09 09:35:42 +00:00
Kamil Godzwon
3c2d18ce58 test/filesystem: nvme device storage size verifying
Added a check before any of the parted calls to
confirm the size is what is expected.

Fixes #2388

Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Change-Id: I18720c66d70da82b8943d3231348a4015108a598
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11820
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Reviewed-by: Michal Berger <michallinuxstuff@gmail.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-05-04 08:02:52 +00:00
Alexey Marchuk
b0f4249c59 nvme/rdma: Add async set/get registers
Now controller initialization with RDMA
transport is fully async

Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Change-Id: I26e857740d3137d0b0e987facc81fc5f6ef81f2b
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10756
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-04-22 09:44:57 +00:00
Konrad Sztyber
6e8e184bca scripts: fix PYTHONPATH references to scripts/ directory
After 7610bc38d, python modules are now located in the python/
directory.  That patch also updated PYTHONPATH assignment in most of the
scripts, but one of the perf script and some docs/messages were missed.

Change-Id: Iff3588526f2a382e599f5734d38fc32c15a7bf56
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12223
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-04-18 17:22:09 +00:00
Konrad Sztyber
7610bc38dc scripts: move python modules to python directory
Up until now, importing an SPDK RPC python module was just a matter of
`import rpc`.  It's fine until there's another module called `rpc`
installed on the system, in which case it's impossible to import both of
them.  Therefore, to avoid this problem, all of the modules were moved
to a separate directory under the "spdk" namespace.

The decision to move to a location under a separate directory was
motivated by the fact that a directory called scripts/spdk would look
pretty confusing.  Moreover, it should make it also easier to package
these scripts as a python package.

Other than moving the packages, all of the imports were updated to
reflect these changes.  Files under python now use relative imports,
while those under scripts/ use the "spdk" namespace and have their
PYTHONPATH extended with python directory.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: Ib43dee73921d590a551dd83885e22870e72451cf
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9692
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-04-05 14:40:47 +00:00
Jim Harris
74cd76db68 test/nvme, test/nvmf: add fused_ordering test
This test reproduced issue #2428. It does the following:

1) submit some large writes (requiring R2T or RDMA READ)
2) submit fused compare (first fused)
3) variable number of qpair polls
4) submit fused write (second fused)

The RDMA and TCP transports were not accounting for the
fused bits, and would send a non-fused command down to
the target layer between the two fused commands.

By adding the variable amount of delay between the fused
command submissions, it creates a window where a large
write's payload is fetched from the host and submitted
to the target between submission of the two fused commands.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I1abd5a6bca08386279c09f8135387826149d30ef
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11963
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-04-05 08:32:06 +00:00
Alexey Marchuk
1299439f3d bdev: pull/push data if bdev doesn't support
memory domains

If bdev doesn't support any memory domain then allocate
internal bounce buffer, pull data for write operation before
IO submission, push data to memory domain once IO completes
for read operation.

Update test tool, add simple pull/push functions
implementation.

Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Change-Id: Ie9b94463e6a818bcd606fbb898fb0d6e0b5d5027
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10069
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-04-04 09:57:56 +00:00
Kamil Godzwon
dd57432742 test/filesystem: Changed msdos type partition creation to the GPT
Scripts are modified to create easily recognizable partition
label so that we know autotest.sh can safely remove them.
It is possible to achieve by creating the GPT partition with
'SPDK_TEST' label.

Fixes #2345

Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Change-Id: Ibfcebc5bb68e1b4e1d93e0359a39d3e34748d21d
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11821
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
2022-04-01 08:31:14 +00:00
Jun Wen
59a0d2c60d test/nvmf: Add llvm-nvmf-fuzz test
Add flag "SPDK_TEST_FUZZER" to control building of llvm lib using
CC=clang-$clang_complier
CXX=clang++-$clang_complier

config_params with --with-fuzzer=/usr/lib64/clang/$clangV/lib/linux/libclang_rt.fuzzer_no_main-x86_64.a

Signed-off-by: Jun Wen <junx.wen@intel.com>
Change-Id: Icf3dfe13989d083d22be69b964a54830324a657e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11153
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: <qun.wan@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-04-01 08:28:15 +00:00
MengjinWu
a8e0dc8333 test/nvmf: No request available for FABRICS/CONNECT
Test for github issue 2371:
No request available for FABRICS/CONNECT when
running bdevperf w/ ultra high queue depth.

Signed-off-by: MengjinWu <mengjin.wu@intel.com>
Change-Id: Idb125dd29c0e6ac4e8c2c67cb68e010e128fd947
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11598
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2022-03-31 22:53:31 +00:00
Alexey Marchuk
94a10ad2ea test/dma: Add option to fail test if memory domains
are not supported

That will be used to test memory domains with logical
volumes, we need to make sure that lvol correctly
reports memory domains. Also add a counter for the
number of translation_cb calls and verify that
it is not smaller than the total number of
completed IO requests

Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com>
Change-Id: I42f0cb14fd24c95de830146a603de64f1a8848be
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11374
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-03-23 09:01:40 +00:00
Michal Berger
cbda5664f5 test/nvmf: Remove support for soft-RoCE setups
Motivation: https://github.com/spdk/spdk/issues/2277

Signed-off-by: Michal Berger <michalx.berger@intel.com>
Change-Id: I6a85816c65ebecf63c2f454e4b97484542faef9e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10929
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2022-03-22 16:01:54 +00:00
Jun Wen
d740599bde test/nvmf: add aer test for vfio-user
Signed-off-by: Jun Wen <junx.wen@intel.com>
Change-Id: Ia650f91c21ce5495eaf49027cca0e10f71be1f6f
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11724
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: GangCao <gang.cao@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Dong Yi <dongx.yi@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-03-22 09:29:47 +00:00
Michal Berger
3289b8f59b test/nvmf: Fix logic in setting $is_hw
Signed-off-by: Michal Berger <michallinuxstuff@gmail.com>
Change-Id: I30acbe690646ffe771445d1f4fcc944cf34704c6
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11846
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-03-15 20:27:53 +00:00
Jim Harris
713333fdc9 test/nvmf: add some delays in discovery.sh
The test script does sequences like the following:

1) Add a host to an existing subsystem on target A
2) Check application B to see if it has received a
   discovery AEN and attached to that subsystem

But we have to account for some delay between 1 and 2.
Application B has to receive the discovery AEN, get
the discovery log page, parse the new log page entry
and then connect to the NVM subsystem.

Fixes issue #2420.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I160ed117ccd92bfb848f0075494a0d516b341191
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11934
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-03-14 08:44:21 +00:00