e01cb43b | 11-Dec-2024 |
Michal Berger <michal.berger@intel.com> |
mk/spdk.common.mk sed the minor version
Older versions of make can't handle shell's param expansion nicely as in case of something like ${v#0}, the '#' is not treated as part of the $(shell ...) cmd
mk/spdk.common.mk sed the minor version
Older versions of make can't handle shell's param expansion nicely as in case of something like ${v#0}, the '#' is not treated as part of the $(shell ...) cmd. This leads to:
spdk/mk/spdk.common.mk:584: *** unterminated call to function 'shell': missing ')'. Stop.
Escaping \# won't work for newer make builds and some shells that make may use are still limitted when it comes to other param expansion variants.
So to make sure it works in all places, just delegate the main work to sed.
Change-Id: Iaac6fb66ea1addb139e53b1f4cf966e7d5a4745d Signed-off-by: Michal Berger <michal.berger@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25528 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
d58eef2a | 11-Dec-2024 |
Alex Michon <amichon@kalrayinc.com> |
nvme/rdma: Fix reinserting qpair in connecting list after stale state
When a qpair is first created, we add it to a list of connecting qpairs. If the connection fails, we move the qpair to a stale s
nvme/rdma: Fix reinserting qpair in connecting list after stale state
When a qpair is first created, we add it to a list of connecting qpairs. If the connection fails, we move the qpair to a stale state and we retry later. At this point, we should not add the qpair again to the connecting qpairs list.
Change-Id: If38a8a51d3cb86f4d52d926d1acc349af21a6947 Signed-off-by: Alex Michon <amichon@kalrayinc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25526 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@nvidia.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
2104eacf | 06-Dec-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
test/check_so_deps: use VERSION to look for prior tags
The check_so_deps script compares the ABI of the current commit from the ABI of the previous release. It used to find the previous release by
test/check_so_deps: use VERSION to look for prior tags
The check_so_deps script compares the ABI of the current commit from the ABI of the previous release. It used to find the previous release by looking at the first non-LTS, non-*pre tag and extracting the version from that tag. This means that after any other tag is placed, it'll be used to figure out the release to test against.
Instead, use VERSION to find the release tag to compare against. That way, as long as VERSION points to a -pre tag, we can place any number of -rc tags without breaking the ABI tests. And, once a release branch is created, VERSION would get updated to the -rc tag that points to the first commit on that branch, so the subsequent commits would be compared to the ABI of that release.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I1b4f9118e6d3749e0c43da3fa917c08868796eb9 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25524 Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
66289a6d | 06-Dec-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
build: use VERSION file for storing version
This reduces the number of places to update whenever a version is bumped and also gives us an easy way to check the current version from scripts.
Signed-
build: use VERSION file for storing version
This reduces the number of places to update whenever a version is bumped and also gives us an easy way to check the current version from scripts.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I01d7240b6e07467548c211f1e505c1e1a34360af Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25523 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: Ben Walker <ben@nvidia.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
62638991 | 23-Aug-2024 |
Alexey Marchuk <alexeymar@nvidia.com> |
nvme/rdma: Don't limit max_sge if UMR is used
Since UMR creates a vurtually contig memory buffer, we can always support up to 16 SGEs regardless of MSDBD reported by target
Signed-off-by: Alexey Ma
nvme/rdma: Don't limit max_sge if UMR is used
Since UMR creates a vurtually contig memory buffer, we can always support up to 16 SGEs regardless of MSDBD reported by target
Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com> Change-Id: Ibd339f71ad35d355783993f777fcf8009ea68466 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24710 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.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 ...
|
cec5ba28 | 23-Aug-2024 |
Alexey Marchuk <alexeymar@nvidia.com> |
nvme/rdma: Register UMR per IO request
If accel sequence is supported, append a copy task even if there is no accel sequence. NVME RDMA driver expects that accel framework registers UMR for the data
nvme/rdma: Register UMR per IO request
If accel sequence is supported, append a copy task even if there is no accel sequence. NVME RDMA driver expects that accel framework registers UMR for the data buffer. This UMR allows to represent fragmented payload as a virtually contig one.
Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com> Change-Id: I410f991959b08eab033105a7dbb4a9aaba491567 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24709 Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
7219bd1a | 14-Nov-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
thread: use extended version of fd group add
As the message file descriptor of thread is of type eventfd, we can set fd type in the event handler opts and use SPDK_FD_GROUP_ADD_EXT. This way we don'
thread: use extended version of fd group add
As the message file descriptor of thread is of type eventfd, we can set fd type in the event handler opts and use SPDK_FD_GROUP_ADD_EXT. This way we don't need to read the msg fd, which will be done during the fd group wait.
Set msg_fd to -1 if fd group creation fails, to prevent wrong cleaup during thread_interrupt_destroy call.
Change-Id: I2b64ad09bb368484a81781e4805ecbf8fc8cb02c Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25432 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <jim.harris@nvidia.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 ...
|
1a5bdab3 | 14-Nov-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
event: use extended version of fd group add
Since both the reactor file descriptors are of type eventfd we can set fd type in the event handler opts and use SPDK_FD_GROUP_ADD_EXT. This way we don't
event: use extended version of fd group add
Since both the reactor file descriptors are of type eventfd we can set fd type in the event handler opts and use SPDK_FD_GROUP_ADD_EXT. This way we don't need to explicitly read those fds, which will be done during the fd group wait.
Change-Id: Ic966919a9b2ce83395f98e7c6c6a883b1ffd9a0d Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25431 Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
92d1e663 | 05-Dec-2024 |
Alex Michon <amichon@kalrayinc.com> |
bdev/nvme: Fix depopulating a namespace twice
If we receive 2 AENs in a row, we may attempt to delete the same namespace twice, which would result in a use-after-free.
Change-Id: I4d9cb4a1ada5d6c94
bdev/nvme: Fix depopulating a namespace twice
If we receive 2 AENs in a row, we may attempt to delete the same namespace twice, which would result in a use-after-free.
Change-Id: I4d9cb4a1ada5d6c945cad10a963f218c70d5c8f8 Signed-off-by: Alex Michon <amichon@kalrayinc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25511 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
show more ...
|
52a41348 | 02-Dec-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
bdev: do not retry nomem I/Os during aborting them
If bdev module reports ENOMEM for the first I/O in an I/O channel, all subsequent I/Os would be queued in the nomem list. In this case, io_outstand
bdev: do not retry nomem I/Os during aborting them
If bdev module reports ENOMEM for the first I/O in an I/O channel, all subsequent I/Os would be queued in the nomem list. In this case, io_outstanding and nomem_threshold would remain 0, allowing nomem I/Os to be resubmitted unconditionally.
Now, a coming reset could trigger nomem I/O resubmission when aborting nomem I/Os in the following path:
``` bdev_reset_freeze_channel -> bdev_abort_all_queued_io -> spdk_bdev_io_complete -> _bdev_io_handle_no_mem -> bdev_ch_retry_io ```
Both bdev_abort_all_queued_io and bdev_ch_retry_io modifies nomem_io list in this path. Thus, there might be I/Os that are firstly submitted to the underlying device by bdev_ch_retry_io, and then get aborted by bdev_abort_all_queued_io, resulting in double-completion of these I/Os later.
To fix this, just do not resubmit nomem I/Os when aborting is in progress.
Change-Id: I1f66262216885779d1a883ec9250d58a13d8c228 Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25522 Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
show more ...
|
d1394291 | 02-Dec-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
bdev: simplify bdev_reset_freeze_channel
Commit 055de83a "bdev: multiple QoS queues with atomic-based QoS quota" removed locking around swapping qos_queued_io, but forgot to remove the swapping. Let
bdev: simplify bdev_reset_freeze_channel
Commit 055de83a "bdev: multiple QoS queues with atomic-based QoS quota" removed locking around swapping qos_queued_io, but forgot to remove the swapping. Let's remove it to simplify bdev_reset_freeze_channel.
Change-Id: I48c1b7e09e7d92450bc2d91a2adefa26d072af52 Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25521 Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: GangCao <gang.cao@intel.com>
show more ...
|
0edc184e | 23-Aug-2024 |
Alexey Marchuk <alexeymar@nvidia.com> |
accel/mlx5: Support mkey registration
Register scatter/gather mkey if accel_mlx5 driver is enabled and a copy task with RDMA memory domain as a destination is set. The UMR can be sent in NVMF capsul
accel/mlx5: Support mkey registration
Register scatter/gather mkey if accel_mlx5 driver is enabled and a copy task with RDMA memory domain as a destination is set. The UMR can be sent in NVMF capsule to represent scattered memory as virtually contiguous.
Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com> Change-Id: I92e8c417bbf8c4018ac77e7fc074ac7ae9a68b55 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24708 Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
06358c25 | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
bdev/nvme: use poll_group's fd_group to register interrupts
This eliminates the need for nesting epoll instances in the kernel and allows us to skip one epoll_wait() call. It shows an around 5-10%
bdev/nvme: use poll_group's fd_group to register interrupts
This eliminates the need for nesting epoll instances in the kernel and allows us to skip one epoll_wait() call. It shows an around 5-10% latency improvement.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: Idd6ed70d41760566b82246c8af59016fa80a0610 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25469 Reviewed-by: Ben Walker <ben@nvidia.com> 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@nvidia.com> Community-CI: Mellanox Build Bot Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com>
show more ...
|
1ae735a5 | 05-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
nvme: add poll_group interrupt callback
In interrupt mode, IO completions are processed when waiting on poll_group's fd_group. But there are some events (qpair disconnection) that require extra han
nvme: add poll_group interrupt callback
In interrupt mode, IO completions are processed when waiting on poll_group's fd_group. But there are some events (qpair disconnection) that require extra handling. Normally, this happens in spdk_nvme_poll_group_wait(), but when manually doing a spdk_fd_group_wait() on poll_group's fd_group, we need a notification to get this done.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I08979e42ff57b53f0c97670e9996b0ce6dad713e Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25468 Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
f8047163 | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
nvme: add spdk_nvme_poll_group_get_fd_group()
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I0eb30622baf8d1d0ba0af632482570aaaeef52af Reviewed-on: https://review.spdk.io/gerrit
nvme: add spdk_nvme_poll_group_get_fd_group()
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I0eb30622baf8d1d0ba0af632482570aaaeef52af Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25467 Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> 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: Ben Walker <ben@nvidia.com>
show more ...
|
969b360d | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
thread: fd_group-based interrupts
It's now possible to register an interrupt for a whole fd_group. The advantage of doing this over registering an interrupt using fd_group's fd is that the fd_group
thread: fd_group-based interrupts
It's now possible to register an interrupt for a whole fd_group. The advantage of doing this over registering an interrupt using fd_group's fd is that the fd_group is nested in thread's fd_group, so spdk_fd_group_wait() on thread's fd_group will trigger events of the registered fd_group.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I1b2e4e9ea0b5dc2a8ba5e7ab7366fe1c412167f5 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25466 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com>
show more ...
|
851f166e | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
thread: move interrupt allocation to a function
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I71cd8fbfb0e7dfb6836d716ab420b3af45b3d2d3 Reviewed-on: https://review.spdk.io/gerr
thread: move interrupt allocation to a function
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I71cd8fbfb0e7dfb6836d716ab420b3af45b3d2d3 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25465 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: Jim Harris <jim.harris@nvidia.com> Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-by: Ben Walker <ben@nvidia.com>
show more ...
|
c12cb8fe | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
util: add method for setting fd_group's wrapper
A wrapper is a function that is executed when an event is triggered prior to executing the callback associated with that event. It can be used to per
util: add method for setting fd_group's wrapper
A wrapper is a function that is executed when an event is triggered prior to executing the callback associated with that event. It can be used to perform tasks common to all fds in an fd_group, without having to control the code that adds the fds.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: Ia6e29d430dad220497aa2858529662a3934c6c52 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25464 Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Community-CI: Mellanox Build Bot 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>
show more ...
|
43c35d80 | 01-Nov-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
util: multi-level fd_group nesting
This patch adds the ability to nest multiple fd_groups into one another. This builds a tree with fds from all fd_groups being registered at root fd_group's epfd. F
util: multi-level fd_group nesting
This patch adds the ability to nest multiple fd_groups into one another. This builds a tree with fds from all fd_groups being registered at root fd_group's epfd. For instance, in the following configuration:
fgrp0 | fgrp1----+----fgrp2 | fgrp3
fds from all fd_groups will be registered to epfd of fgrp0. After unnesting fgrp1, fgrp1 and fgrp3 fds will be removed from frgp0's epfd and added to fgrp1 epfd.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I4f586c21fe3db1739bf2010578b20606c53e5e84 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25463 Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-by: Ben Walker <ben@nvidia.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@nvidia.com>
show more ...
|
6336b7c5 | 31-Oct-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
util: keep track of nested child fd_groups
We'll need this information in the next patch, which will allow for multi level nesting.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-I
util: keep track of nested child fd_groups
We'll need this information in the next patch, which will allow for multi level nesting.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I1c11b35d96d7926ff176ffd577db6b08aec2323a Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25462 Reviewed-by: Changpeng Liu <changpeliu@tencent.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
2e1d23f4 | 06-Dec-2024 |
Jim Harris <jim.harris@nvidia.com> |
fuse_dispatcher: make header internal
The fuse_dispatcher is not intended to be a public API, it's for internal use only.
Signed-off-by: Jim Harris <jim.harris@nvidia.com> Change-Id: I23e839a8f7155
fuse_dispatcher: make header internal
The fuse_dispatcher is not intended to be a public API, it's for internal use only.
Signed-off-by: Jim Harris <jim.harris@nvidia.com> Change-Id: I23e839a8f71557960fe27f83c2eb9e51c57c8ea8 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25516 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Ben Walker <ben@nvidia.com>
show more ...
|
3318278a | 07-Dec-2024 |
Haoqian He <haoqian.he@smartx.com> |
vhost: check if vsession exists before remove scsi vdev
Before remove the vhost scsi target when deleting controller, we can return EBUSY if still exist vsession, which means the inflight IO has not
vhost: check if vsession exists before remove scsi vdev
Before remove the vhost scsi target when deleting controller, we can return EBUSY if still exist vsession, which means the inflight IO has not finished yet. Otherwise the guest may get I/O error.
Change-Id: Ib76b276efe1e9c6fa324bedc3cb5d9d4622c753f Signed-off-by: Haoqian He <haoqian.he@smartx.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25517 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: Changpeng Liu <changpeliu@tencent.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
a2f5e1c2 | 08-Nov-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
blob: don't free bs when spdk_bs_destroy/spdk_bs_unload fails
Error handling of spdk_bs_destroy and spdk_bs_unload is confusing. They may or may not free the spdk_blob_store structure on error, depe
blob: don't free bs when spdk_bs_destroy/spdk_bs_unload fails
Error handling of spdk_bs_destroy and spdk_bs_unload is confusing. They may or may not free the spdk_blob_store structure on error, depending on when the error happens. And users can not know if the structure has been freed after the processes finished, thus unable to handle it correctly.
To fix this problem, we only free the structure when there are no errors happended. In this way, users can be sure that the structure pointer is still valid after the failed opertation. They can then retry the operation or debug the failure.
Fixes #3560.
Change-Id: I4f7194ab8fce4f1a408ce3e6500514fd214427d4 Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25472 Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: GangCao <gang.cao@intel.com> Reviewed-by: Yankun Li <845245370@qq.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
0f59982b | 08-Nov-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
blob: don't use bs_load_ctx_fail in bs_write_used_* functions
bs_write_used_* functions are used both in blobstore loading and unloading processes. However, the two processes actually need different
blob: don't use bs_load_ctx_fail in bs_write_used_* functions
bs_write_used_* functions are used both in blobstore loading and unloading processes. However, the two processes actually need different error handling logics.
Let the functions call their callbacks direclty instead of calling bs_load_ctx_fail for error cases, so that we can use different error handling logics for loading and unloading.
Change-Id: I4865eb91f1d8aa36e3ca64779c08a252433a7b34 Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25471 Reviewed-by: Jim Harris <jim.harris@nvidia.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> Reviewed-by: Ben Walker <ben@nvidia.com>
show more ...
|
0354bb8e | 05-Dec-2024 |
Alexey Marchuk <alexeymar@nvidia.com> |
nvme/rdma: Force qp disconnect on pg remove
If a qpair is removed from a poll group and it still has a poller, we must force qpair disconnect because otherwise group reference is removed an we wont'
nvme/rdma: Force qp disconnect on pg remove
If a qpair is removed from a poll group and it still has a poller, we must force qpair disconnect because otherwise group reference is removed an we wont' be able to release the poller
Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com> Change-Id: I42699e4a692e6b878a828812328737a729e0295e Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25513 Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot
show more ...
|