History log of /spdk/lib/nvmf/ (Results 1 – 25 of 2470)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
c2471e4524-Sep-2024 Alexey Marchuk <alexeymar@nvidia.com>

nvmf: Clean unassociated_qpairs on connect error

When spdk_nvmf_poll_group_add returns an error,
qpair is in uninitialized state and spdk_nvmf_qpair_disconnect
handles this state in a special way, i

nvmf: Clean unassociated_qpairs on connect error

When spdk_nvmf_poll_group_add returns an error,
qpair is in uninitialized state and spdk_nvmf_qpair_disconnect
handles this state in a special way, i.e. we don't decrement
the `group->current_unassociated_qpairs` counter. That is not
a critical error but may lead to uneven qpairs distribution.

Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com>
Change-Id: If68c4c4c8f3a99a690ba15694b5568940a7e0c21
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25012
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

5469bd2d24-Sep-2024 Alexey Marchuk <alexeymar@nvidia.com>

nvmf/rdma: Fix destroy of uninitialized qpair

When rdma_accept fails we destoy a qpair immediately,
however if SRQ is disabled, qpair already posted RECV
WRs to the shared CQ. Later when we poll the

nvmf/rdma: Fix destroy of uninitialized qpair

When rdma_accept fails we destoy a qpair immediately,
however if SRQ is disabled, qpair already posted RECV
WRs to the shared CQ. Later when we poll the CQ, we can
reap these RECV WRs while the qpair is already destroyed.
That may lead to the app crash. To fix this issue, destroy
qpair in the uninitilized state in regular way - wait for
all resources to be released

Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com>
Change-Id: Iec2c0d712de981a531b3696cf43b49ef92ff6f6e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25011
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Alex Michon <amichon@kalrayinc.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Community-CI: Mellanox Build Bot

show more ...

b43c260513-Nov-2024 Ankit Kumar <ankit.kumar@samsung.com>

nvmf: discovery log page updation change

If the subsystem's allow any host state is same as the requested one,
then there is no need to update the discovery log page.

Change-Id: Ie94e7261a25e3aa407

nvmf: discovery log page updation change

If the subsystem's allow any host state is same as the requested one,
then there is no need to update the discovery log page.

Change-Id: Ie94e7261a25e3aa407daf0a63c1ca5313f199f27
Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25423
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Ben Walker <ben@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

6e1d0b5025-Nov-2024 John Levon <john.levon@nutanix.com>

nvmf/vfio-user: sq flow control isn't working properly

Our attempt to do flow control of an SQ wasn't working properly, as it
did not account for previous (outstanding) requests. Include those in
th

nvmf/vfio-user: sq flow control isn't working properly

Our attempt to do flow control of an SQ wasn't working properly, as it
did not account for previous (outstanding) requests. Include those in
the calculation of our CQ slot headroom.

There was also a bug in vfio_user_sq_rearm() we must fix here: when flow
control is applied, it's perfectly possible for the "lost the race" case
to not process any requests.

In either of the two cases (lost the event index race; applied flow
control), we need to make sure that we will wake back up and process the
SQ again; introduce ->need_kick on the poll group for this purpose.

Change-Id: Ib737364691a62461c059a98b2d171cb9976032d7
Signed-off-by: John Levon <john.levon@nutanix.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25473
Community-CI: Mellanox Build Bot
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

b37db06903-Dec-2024 XuQi <1530865185@qq.com>

replace strtok with strtok_r

The strtok function is not reentrant. To address this issue in a
multithreaded environment, the strtok_r function should be used,
which is the reentrant version of strto

replace strtok with strtok_r

The strtok function is not reentrant. To address this issue in a
multithreaded environment, the strtok_r function should be used,
which is the reentrant version of strtok.

Signed-off-by: XuQi <1530865185@qq.com>
Change-Id: I35c07c7cf4e20bacb7b1e7c7adaedfcd1a81f86e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25492
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Community-CI: Mellanox Build Bot

show more ...

aac967c009-Oct-2024 Jim Harris <jim.harris@samsung.com>

lib/nvmf: create pollers for each transport poll group

Having more granular pollers makes it easier to detect and report
whether any given poller has pending work in progress.

Signed-off-by: Jim Ha

lib/nvmf: create pollers for each transport poll group

Having more granular pollers makes it easier to detect and report
whether any given poller has pending work in progress.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I640eca2c702ac07eec1b84e3f541564fd0d44a12
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25184
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Ben Walker <ben@nvidia.com>

show more ...

b8c964e208-Oct-2024 Jim Harris <jim.harris@samsung.com>

nvmf/tcp: remove await_req TAILQ

This was previously attempted in 0bcaf050, but was reverted in
bf102998 because it missed kicking the tqpair to process again when
in AWAIT_REQ state and a req is re

nvmf/tcp: remove await_req TAILQ

This was previously attempted in 0bcaf050, but was reverted in
bf102998 because it missed kicking the tqpair to process again when
in AWAIT_REQ state and a req is released.

So when a req is released and the tqpair is in AWAIT_REQ state,
send a deferred message to process the tqpair. We also set a flag
keeping track of whether a message is already in flight, to avoid
sending extra unneeded messages if a bunch of requests are released
all at once.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: Icbdf02129761b08abdccfd48e969e5e4d729fcca
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25175
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>

show more ...

1159530008-Oct-2024 Jim Harris <jim.harris@samsung.com>

nvmf/tcp: add nvmf_tcp_qpair_process() helper function

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I25e6a0c57ae07510e6ad036e8689f15adbdf82af
Reviewed-on: https://review.spdk.io/ger

nvmf/tcp: add nvmf_tcp_qpair_process() helper function

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I25e6a0c57ae07510e6ad036e8689f15adbdf82af
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25174
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

ea7fd2a508-Oct-2024 Jim Harris <jim.harris@samsung.com>

nvmf/tcp: simplify nvmf_tcp_poll_group_poll event counting

Upcoming patches will remove the await_req TAILQ, so simplify the
code here for now to just always count processing a tqpair on this
TAILQ

nvmf/tcp: simplify nvmf_tcp_poll_group_poll event counting

Upcoming patches will remove the await_req TAILQ, so simplify the
code here for now to just always count processing a tqpair on this
TAILQ as an event, and don't return error status if one of the tqpairs
fails processing.

This technically is more correct anyways. The upper layer aggregates
the return value from all of the transports, so returning a negative
value on error could mess up accounting (i.e. TCP returns -1, RDMA
returns 1, they cancel each other out...)

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: I0bad2be71edf7c046b6543a05efd0165f5166136
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25173
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot

show more ...

2e10c84c15-Nov-2024 Shuhei Matsumoto <smatsumoto@nvidia.com>

nvmf: Expose DIF type of namespace to host again

We disabled exposing DIF type of namespaces to host because nvmf library
did not support PRACT.
https://github.com/spdk/spdk/commit/a438718fc25a5298f

nvmf: Expose DIF type of namespace to host again

We disabled exposing DIF type of namespaces to host because nvmf library
did not support PRACT.
https://github.com/spdk/spdk/commit/a438718fc25a5298f0bfc9daf2be0abc885b54be

nvmf library support PRACT now.

Let's expose DIF type of namespaces to host again.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I9c30c3c50791ade18fb46c2be807984c934d3788
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25438
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>

show more ...

38b931b215-Nov-2024 Shuhei Matsumoto <smatsumoto@nvidia.com>

nvmf: Set bdev_ext_io_opts::dif_check_flags_exclude_mask for read/write

Fill opts->dif_check_flags_exclude_mask when nvmf submits read or write
I/O to bdev layer. Furthremore, get CDW12 value for re

nvmf: Set bdev_ext_io_opts::dif_check_flags_exclude_mask for read/write

Fill opts->dif_check_flags_exclude_mask when nvmf submits read or write
I/O to bdev layer. Furthremore, get CDW12 value for read I/O because it
has PRACT bit.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: Icfa5b9c9b3ca8a0d6d9b08ba447e06ebe0986443
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23629
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

afdec00e06-Nov-2024 Shuhei Matsumoto <smatsumoto@nvidia.com>

nvmf: Add hide_metadata option to nvmf_subsystem_add_ns

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I518c3cc5fdcb16b41f1e3bda1debf5cb3cc9c47b
Reviewed-on: https://review.spdk.

nvmf: Add hide_metadata option to nvmf_subsystem_add_ns

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I518c3cc5fdcb16b41f1e3bda1debf5cb3cc9c47b
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25413
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>

show more ...

b09de01306-Nov-2024 Shuhei Matsumoto <smatsumoto@nvidia.com>

nvmf: Get metadata config by not bdev but bdev_desc

This is a preparation to enable no_metadata option to each bdev for DIF
insert/strip.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Cha

nvmf: Get metadata config by not bdev but bdev_desc

This is a preparation to enable no_metadata option to each bdev for DIF
insert/strip.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I018ccbdba662fa71489ae9664fc9d41bf79cf7d7
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25412
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

414f91a020-Nov-2024 Alex Michon <amichon@kalrayinc.com>

lib/nvmf: Fix double free of connect request

When a duplicated qid is detected, we store the connect request to retry
the connect later (in case the other queue with the same qid was in a
disconnect

lib/nvmf: Fix double free of connect request

When a duplicated qid is detected, we store the connect request to retry
the connect later (in case the other queue with the same qid was in a
disconnection process).
If we successfully create the qpair on second try, we should clear the
connect_req, otherwise it may be confused with a first_fused_req
(because of the union).
When we receive an IO later, we think that there was a previous fused
command, so we abort the fused command (i.e. the connect request). So
this command is freed twice.

Change-Id: I66d0e6c813c2b4378bf03ebac68914340737632c
Signed-off-by: Alex Michon <amichon@kalrayinc.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25460
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>

show more ...

8bbc7b6902-Oct-2024 Pawel Baldysiak <pawel.baldysiak@dell.com>

nvmf: Block ctrlr-only admin cmds if NSID is set

According to NVMe spec rev1.3d, Section4, Figure12:
If admin cmd is not using NSID field - host should set it to 0h.
Otherwise - such command should

nvmf: Block ctrlr-only admin cmds if NSID is set

According to NVMe spec rev1.3d, Section4, Figure12:
If admin cmd is not using NSID field - host should set it to 0h.
Otherwise - such command should be returned with
INVALID FIELD IN COMMAND error.

With recent change that added passthrough command caps
to nvmf - SPDK engine is forwarding all admin commands
with NSID set to the bdev - even the incorrectly formed ones.
For example - commit firmware with NSID set to 1.

Validate if requested command's opcode is using NSID,
Return appropriate error if not - for request with NSID set.

Fixes issue #3564.

Change-Id: Id2fce050eeaf96ff039073f439d6444ecd55c0b3
Signed-off-by: Pawel Baldysiak <pawel.baldysiak@dell.com>
Signed-off-by: Marcin Galecki <marcin.galecki@dell.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25151
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Jim Harris <jim.harris@nvidia.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>

show more ...


/spdk/CHANGELOG.md
/spdk/doc/jsonrpc.md
/spdk/dpdkbuild/Makefile
/spdk/examples/blob/cli/blobcli.c
/spdk/include/spdk/bdev_module.h
/spdk/include/spdk/blob.h
/spdk/include/spdk/dif.h
/spdk/include/spdk/lvol.h
/spdk/include/spdk/module/bdev/nvme.h
/spdk/lib/bdev/bdev.c
/spdk/lib/blob/Makefile
/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/Makefile
/spdk/lib/env_dpdk/env.mk
/spdk/lib/lvol/Makefile
/spdk/lib/lvol/lvol.c
ctrlr.c
/spdk/lib/reduce/reduce.c
/spdk/lib/util/dif.c
/spdk/lib/vhost/vhost_blk.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/nvme/spdk_bdev_nvme.map
/spdk/module/bdev/xnvme/bdev_xnvme.c
/spdk/module/blob/bdev/Makefile
/spdk/module/blob/bdev/blob_bdev.c
/spdk/module/scheduler/dpdk_governor/dpdk_governor.c
/spdk/python/spdk/rpc/bdev.py
/spdk/python/spdk/rpc/lvol.py
/spdk/scripts/bash-completion/spdk
/spdk/scripts/rpc.py
/spdk/test/bdev/blockdev.sh
/spdk/test/blobstore/btest.out.match
/spdk/test/common/autobuild_common.sh
/spdk/test/common/nvme/functions.sh
/spdk/test/nvme/interrupt.sh
/spdk/test/nvme/xnvme/common.sh
/spdk/test/nvme/xnvme/xnvme.sh
/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/blob/blob.c/blob_ut.c
/spdk/test/unit/lib/blob/blob_bdev.c/blob_bdev_ut.c
/spdk/test/unit/lib/blob/bs_dev_common.c
/spdk/test/unit/lib/lvol/lvol.c/lvol_ut.c
/spdk/test/unit/lib/nvmf/ctrlr.c/ctrlr_ut.c
/spdk/test/unit/lib/util/dif.c/dif_ut.c
83e8405e07-Oct-2024 Kalyan Kadiyala <kalyan.kadiyala@broadcom.com>

nvmf/fc: Qpair disconnect callback: Serialize FC delete connection & close qpair process

An invalid pointer access can happen with KATO and FC delete
connection running parallelly. This is a

nvmf/fc: Qpair disconnect callback: Serialize FC delete connection & close qpair process

An invalid pointer access can happen with KATO and FC delete
connection running parallelly. This is a regression that got
introduced when the qpair disconnect callback was removed.

Change-Id: I8cf4ca3c3d91797e44c501e09222f503e00db4be
Signed-off-by: Kalyan Kadiyala <kalyan.kadiyala@broadcom.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25421
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>

show more ...

0eab4c6f07-Oct-2024 Kalyan Kadiyala <kalyan.kadiyala@broadcom.com>

nvmf/fc: Validate the ctrlr pointer inside nvmf_fc_req_bdev_abort()

An abort request can come in for a fabric connect command before
the ctrlr is initialized. In such a case, accessing the c

nvmf/fc: Validate the ctrlr pointer inside nvmf_fc_req_bdev_abort()

An abort request can come in for a fabric connect command before
the ctrlr is initialized. In such a case, accessing the ctrlr
pointer without validating it can lead to app crash.

Change-Id: I61b79147330e566d4393a72c6a07d0dd6e032e80
Signed-off-by: Kalyan Kadiyala <kalyan.kadiyala@broadcom.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25420
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>

show more ...

4bcab9fb01-Nov-2024 John Levon <john.levon@nutanix.com>

correct kick for CQ full case

We implement basic flow control by not processing any submissions while
the CQ is full. However, in interrupt mode, the code was mistakenly
attempting to kick ctrlr->in

correct kick for CQ full case

We implement basic flow control by not processing any submissions while
the CQ is full. However, in interrupt mode, the code was mistakenly
attempting to kick ctrlr->intr_fd - this will not go well, as this is
the vfio-user socket fd, not an eventfd. It should be kicking the SQ
group's eventfd.

Fixes: 23b518a0 ("nvmf/vfio_user: mitigate cq full race")
Signed-off-by: John Levon <john.levon@nutanix.com>
Change-Id: Ia3b5ad8ffe4118a620fc3894e40fc95c251cd009
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25401
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Community-CI: Mellanox Build Bot
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>

show more ...

5abbade724-Oct-2024 John Levon <john.levon@nutanix.com>

lib/nvmf: clean up MSI-X BAR defines

Use the standard prefix, and add defines for the MSI-X BIR registers.

Signed-off-by: John Levon <john.levon@nutanix.com>
Change-Id: Ifb671259eb023cf9d606e03ce8b

lib/nvmf: clean up MSI-X BAR defines

Use the standard prefix, and add defines for the MSI-X BIR registers.

Signed-off-by: John Levon <john.levon@nutanix.com>
Change-Id: Ifb671259eb023cf9d606e03ce8b99d282d1bccf6
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25365
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>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>

show more ...

f220d59030-Oct-2024 Konrad Sztyber <konrad.sztyber@intel.com>

nvmf: rename passthrough_nsid -> passthru_nsid

This is the spelling we typically use.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I40ad23301fd5be6d02b50abb4209ae1c7aeacc96
R

nvmf: rename passthrough_nsid -> passthru_nsid

This is the spelling we typically use.

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

show more ...

1a15864024-Oct-2024 Konrad Sztyber <konrad.sztyber@intel.com>

nvmf: use bdev's nsid for admin command passthru

The ID of a namespace exposed by an NVMe-oF subsystem can differ from
the nsid of the underlying namespace that backs a given bdev. For
instance, th

nvmf: use bdev's nsid for admin command passthru

The ID of a namespace exposed by an NVMe-oF subsystem can differ from
the nsid of the underlying namespace that backs a given bdev. For
instance, the following:

$ scripts/rpc.py bdev_nvme_attach_controller -b nvme0 ...
nvme0n1
nvme0n2
$ scripts/rpc.py nvmf_subsystem_add_ns -n 2 nqn nvme0n1
$ scripts/rpc.py nvmf_subsystem_add_ns -n 1 nqn nvme0n2

results in nvme0n1 being exposed with nsid=2, while nvme0n2 with nsid=1.
In this scenario, admin commands targeting a namespace (e.g. identify
namespace) would get sent to the wrong namespace.

Fixes: 05632afd77dd ("nvmf: large IU and atomic write unit reporting")
Reported-by: Maciej Szulik <maciej.szulik@intel.com>
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: Ib4f7071afb10691c88def880fadc5f4d7e134b07
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25364
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Maciej Szulik <maciej.szulik@intel.com>
Reviewed-by: Jim Harris <jim.harris@samsung.com>
Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Community-CI: Mellanox Build Bot

show more ...

892c29f424-Oct-2024 Konrad Sztyber <konrad.sztyber@intel.com>

nvmf: pass nsid to nvmf_ctrlr_identify_ns()

It's prep for the next patch, which will make it so that we don't
always take it from cmd->nsid.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>

nvmf: pass nsid to nvmf_ctrlr_identify_ns()

It's prep for the next patch, which will make it so that we don't
always take it from cmd->nsid.

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

show more ...

fb6c49f224-Oct-2024 Konrad Sztyber <konrad.sztyber@intel.com>

bdev: add spdk_bdev_get_nvme_nsid()

The id of a namespace is required to be sent in some, but not all, admin
commands. So, without it, it's impossible to send an admin command that
does require it.

bdev: add spdk_bdev_get_nvme_nsid()

The id of a namespace is required to be sent in some, but not all, admin
commands. So, without it, it's impossible to send an admin command that
does require it.

This is not a problem for IO commands, as bdev_nvme always fills in nsid
for IO command passthru. However, we can't do that for admin commands,
as some admin commands require nsid to be cleared or behave differently
when it's set to the broadcast value (0xffffffff).

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

show more ...


/spdk/CHANGELOG.md
/spdk/CONFIG
/spdk/app/fio/bdev/README.md
/spdk/autorun.sh
/spdk/configure
/spdk/doc/jsonrpc.md
/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/nvme.h
/spdk/include/spdk/stdinc.h
/spdk/include/spdk/thread.h
/spdk/lib/bdev/bdev.c
/spdk/lib/bdev/spdk_bdev.map
/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/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
subsystem.c
/spdk/lib/reduce/reduce.c
/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/mk/spdk.lib_deps.mk
/spdk/module/bdev/aio/bdev_aio.c
/spdk/module/bdev/compress/vbdev_compress.c
/spdk/module/bdev/error/vbdev_error.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/raid/bdev_raid.c
/spdk/module/event/subsystems/iobuf/iobuf.c
/spdk/module/event/subsystems/iobuf/iobuf_rpc.c
/spdk/module/sock/posix/posix.c
/spdk/module/sock/uring/uring.c
/spdk/python/spdk/rpc/iobuf.py
/spdk/scripts/rpc.py
/spdk/test/common/autotest_common.sh
/spdk/test/common/lib/test_env.c
/spdk/test/common/lib/test_iobuf.c
/spdk/test/env/memory/memory_ut.c
/spdk/test/nvmf/common.sh
/spdk/test/unit/lib/accel/accel.c/accel_ut.c
/spdk/test/unit/lib/bdev/nvme/bdev_nvme.c/bdev_nvme_ut.c
/spdk/test/unit/lib/nvme/nvme_ctrlr.c/nvme_ctrlr_ut.c
/spdk/test/unit/lib/nvme/nvme_pcie.c/nvme_pcie_ut.c
/spdk/test/unit/lib/nvme/nvme_poll_group.c/nvme_poll_group_ut.c
/spdk/test/unit/lib/nvmf/subsystem.c/subsystem_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/unittest.sh
eba178bf19-Jul-2024 Jim Harris <jim.harris@samsung.com>

thread: add spdk_iobuf_node_cache

We also rename spdk_iobuf_pool to spdk_iobuf_pool_cache.

This makes it more clear that the iobuf_channel has a cache of
buffers per NUMA node. Currently there is o

thread: add spdk_iobuf_node_cache

We also rename spdk_iobuf_pool to spdk_iobuf_pool_cache.

This makes it more clear that the iobuf_channel has a cache of
buffers per NUMA node. Currently there is only one node, but
future changes will extend this to support multiple NUMA nodes
when configured.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: Id403a089a0de943bd3717e40aba156cbb2368cab
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24517
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>

show more ...

b82fd48a19-Jul-2024 Jim Harris <jim.harris@samsung.com>

thread: remove pool parameter from spdk_iobuf_for_each_entry

We always want to iterate across the entire iobuf_channel, so just
make the iterator do exactly that, rather than requiring the caller
to

thread: remove pool parameter from spdk_iobuf_for_each_entry

We always want to iterate across the entire iobuf_channel, so just
make the iterator do exactly that, rather than requiring the caller
to have to iterate both of the pools itself.

This both simplifies the calling logic, and prepares for upcoming
changes which will support multiple NUMA node caches in one channel.

Signed-off-by: Jim Harris <jim.harris@samsung.com>
Change-Id: Ieed144671e7ee7cb4d7b7b28e803ea3cae641fee
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24515
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <ben@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>

show more ...

12345678910>>...99