Revision tags: v25.01-rc1 |
|
#
2a91567e |
| 21-Oct-2024 |
Marcin Spiewak <marcin.spiewak@intel.com> |
CHANGELOG.md: corrected typo
Corrected typo in CHANGELOG.md: pramater->parameter
Change-Id: Ida7bf677740885d0a3b4e5a44bca3a364c0d0295 Signed-off-by: Marcin Spiewak <marcin.spiewak@intel.com> Review
CHANGELOG.md: corrected typo
Corrected typo in CHANGELOG.md: pramater->parameter
Change-Id: Ida7bf677740885d0a3b4e5a44bca3a364c0d0295 Signed-off-by: Marcin Spiewak <marcin.spiewak@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25286 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: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: Changpeng Liu <changpeliu@tencent.com>
show more ...
|
#
a0c12854 |
| 04-Nov-2024 |
Yash Raj Singh <yash.rajsingh@nutanix.com> |
bdev/nvme: Make bdev nvme get and set opts APIs public
This patch exposes bdev_nvme_get_opts and bdev_nvme_set_opts APIs. No changes have been done to the implementation of these functions.
Change-
bdev/nvme: Make bdev nvme get and set opts APIs public
This patch exposes bdev_nvme_get_opts and bdev_nvme_set_opts APIs. No changes have been done to the implementation of these functions.
Change-Id: I8498ed81e14abb66283a1608f17bb6bba8e38975 Signed-off-by: Yash Raj Singh <yash.rajsingh@nutanix.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25406 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.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 Reviewed-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
Revision tags: v24.09 |
|
#
6de68644 |
| 23-Sep-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
nvme/poll_group: create and manage fd_group for nvme poll group
Create spdk_fd_group within spdk_nvme_poll_group, which manages interrupt events for all the file descriptors of spdk_nvme_qpair that
nvme/poll_group: create and manage fd_group for nvme poll group
Create spdk_fd_group within spdk_nvme_poll_group, which manages interrupt events for all the file descriptors of spdk_nvme_qpair that are part of this poll group.
Two new APIs have been introduced to manage this fd_group
1). spdk_nvme_poll_group_get_fd() Fetches the internal epoll file descriptor of the poll group.
2). spdk_nvme_poll_group_wait() Collectively waits for interrupt events on all the I/O queue pair file descriptors managed by the poll group. When an interrupt event gets generated, it processes any outstanding completions on the I/O queue pair with interrupts. These interrupt events are registered at the the time of I/O queue pair creation.
The nvme_poll_group_connect_qpair() has been modified. Based on the poll group interrupt support, this now registers an event source for the file descriptor of queue pair to the internal epoll file descriptor of the poll group. Similarly, the nvme_poll_group_disconnect_qpair() unregisters the event source for file descriptor of the queue pair from the internal epoll file descriptor of the poll group.
Additional checks are in place to prevent mixing of interrupts enabled and interrupts disabled I/O queue pairs. The poll group interrupt support capability is set by the first I/O queue pair added to it.
Change-Id: If40f1ea82051ae598590f5a23ab9ed58bcb4af09 Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25080 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
f43b7650 |
| 16-Oct-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
lib/nvme: add opts_size to spdk_nvme_io_qpair_opts
Add opts_size to spdk_nvme_io_qpair_opts to align it with other opts structures. Cleanup spdk_nvme_ctrlr_get_default_io_qpair_opts() a bit.
Use nv
lib/nvme: add opts_size to spdk_nvme_io_qpair_opts
Add opts_size to spdk_nvme_io_qpair_opts to align it with other opts structures. Cleanup spdk_nvme_ctrlr_get_default_io_qpair_opts() a bit.
Use nvme_ctrlr_io_qpair_opts_copy() instead of memcpy.
Change-Id: I6d2f7d16a2f4f6cfb68e3fe5ac0515050e8c36ee Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25246 Reviewed-by: Jim Harris <jim.harris@samsung.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>
show more ...
|
#
3f50defd |
| 25-Sep-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
thread: Extended options for spdk_interrupt_register
Added a new API spdk_interrupt_register_ext(), which is an extension of spdk_interrupt_register() and accepts an extended options for event handl
thread: Extended options for spdk_interrupt_register
Added a new API spdk_interrupt_register_ext(), which is an extension of spdk_interrupt_register() and accepts an extended options for event handler i.e. spdk_event_handler_opts.
Change-Id: Ic20e5e9647127546eb8299a411e6181131c6f128 Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25079 Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
Revision tags: v25.01-pre, v24.09-rc1 |
|
#
28b353a5 |
| 12-Aug-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
nvme: interface to retrieve fd for a queue
Applications that enable interrupts for completion notification will register and unregister queue pair file descriptor with event source. These applicatio
nvme: interface to retrieve fd for a queue
Applications that enable interrupts for completion notification will register and unregister queue pair file descriptor with event source. These application also require other necessary details such as event source and file descriptor type during interrupt registration phase.
Added APIs spdk_nvme_qpair_get_fd() and spdk_nvme_ctrlr_get_admin_qp_fd() to retrieve the file descriptor of an I/O and the admin queue pair of a given controller respectively. These APIs accept spdk_event_handler_opts which if specified, allows the transport layer to fill out event source and fd type.
Change-Id: I5c24ae15ffc01afea879d0219e8721728cce592e Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24906 Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.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 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
show more ...
|
#
91e7a24c |
| 08-Oct-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
util: Extended options for spdk_fd_group_add
Added a new API spdk_fd_group_add_ext(), which accepts extended options for event handler i.e. spdk_event_handler_opts. The spdk_event_handler_opts has e
util: Extended options for spdk_fd_group_add
Added a new API spdk_fd_group_add_ext(), which accepts extended options for event handler i.e. spdk_event_handler_opts. The spdk_event_handler_opts has events and fd_type. This provides flexibility in handling different types of fds, which may require specific operations to be performed when an event is generated.
Change-Id: I8ce36e5ed72e9ca616c9bdb38e45df6541873b1a Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25170 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 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
3ab7a1f6 |
| 12-Sep-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
nvme: enable interrupts for pcie nvme devices
Add an option enable_interrupts to the spdk_nvme_ctrlr_opts structure. If this is set to true for pcie controllers interrupts may be enabled during init
nvme: enable interrupts for pcie nvme devices
Add an option enable_interrupts to the spdk_nvme_ctrlr_opts structure. If this is set to true for pcie controllers interrupts may be enabled during initialization. Applications are required to check the resulting value after the attach step to check for success. Maximum of 256 eventfds can be reserved for I/O queues, but the actual number can be lower and is based on the minimum requested I/O queues and number of available I/O queues. The nvme_pcie_ctrlr_cmd_create_io_cq() interface has been modified to create I/O completion queues with interrupts. The interrupt vector field corresponds to the queue identifier in this case.
This is only supported within a primary SPDK process, and if enabled SPDK will not support any secondary processes.
Change-Id: Iff4e2348a0b77199cabb30c0bf93e0eed920cc93 Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24905 Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot 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>
show more ...
|
#
f8259c91 |
| 12-Sep-2024 |
Ankit Kumar <ankit.kumar@samsung.com> |
env_dpdk: new interfaces for pci device multi interrupt
To handle multiple interrupts 3 new interfaces have been added
spdk_pci_device_enable_interrupts() It first checks if the device has multiple
env_dpdk: new interfaces for pci device multi interrupt
To handle multiple interrupts 3 new interfaces have been added
spdk_pci_device_enable_interrupts() It first checks if the device has multiple interrupt vector capability, and based on that it creates a bunch of eventfds. Finally interrupt is enabled by mapping those eventfds to interrupt vector. The interrupt vector offset 0 is used for device fd, Interrupt vector offset 1 onwards is mapped to eventfd at index 0 onwards.
spdk_pci_device_disable_interrupts() disables the interrupts and closes all the eventfds.
spdk_pci_device_get_interrupt_efd_by_index() returns the device fd for index 0, and returns the eventfd for any index > 0.
Change-Id: Ifef38ce89ce7c0e58652a30a61e0df448858398d Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com> Signed-off-by: Liu, Xiaodong <xiaodong.liu@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24903 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com>
show more ...
|
#
11f129ee |
| 14-Oct-2024 |
Yankun Li <yankun@staff.sina.com> |
reduce: Get the information of compress vol
Add public API spdk_reduce_vol_get_info to get information, Add new spdk_reduce_vol_info structure, Currently it contains only one attribute allocated_io_
reduce: Get the information of compress vol
Add public API spdk_reduce_vol_get_info to get information, Add new spdk_reduce_vol_info structure, Currently it contains only one attribute allocated_io_units.
allocated_io_units track the allocated_backing_io_units array, collects statistics on allocated I/O units.
Change-Id: Id59d0e73263c52cf5118d86e1f0ed620efa63361 Signed-off-by: Yankun Li <yankun@staff.sina.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25207 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Changpeng Liu <changpeliu@tencent.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: GangCao <gang.cao@intel.com>
show more ...
|
#
5a8c76d9 |
| 10-Oct-2024 |
Abhineet Pandey <abhineet.pandey@nutanix.com> |
lib/nvmf: Add spdk_nvmf_send_discovery_log_notice API
Added spdk_nvmf_send_discovery_log_notice API to send discovery log page change notice to hosts.
This may be use cases where the host may have
lib/nvmf: Add spdk_nvmf_send_discovery_log_notice API
Added spdk_nvmf_send_discovery_log_notice API to send discovery log page change notice to hosts.
This may be use cases where the host may have a low controller loss timeout, any maintenance operations can cause hosts to lose connection to one of the controllers. Once we send AEN, host can add the controlller back again.
Change-Id: I82e294ec226b5402c29f9ce6fce2c29ce9eaaa40 Signed-off-by: Abhineet Pandey <abhineet.pandey@nutanix.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25188 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 <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
95d9d27f |
| 25-Sep-2024 |
Marcin Spiewak <marcin.spiewak@intel.com> |
bdev/nvme: controller failover/multipath doc change
Added information about implemented change of the default controller mode, now multipath is a new default. The consistency of configuration of con
bdev/nvme: controller failover/multipath doc change
Added information about implemented change of the default controller mode, now multipath is a new default. The consistency of configuration of controllers with the same name is now verified - all must be configured either for multipath or failover, it is not possible to configure e.g one for multipath and second for failover mode. Added information about spdk_bdev_nvme_create() API function parameter list change.
Change-Id: I76e95c19a5b97eb5dd74485964d00d6705c0c559 Signed-off-by: Marcin Spiewak <marcin.spiewak@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25030 Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
99a675b4 |
| 24-Sep-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
CHANGELOG: add missing entries for v24.09
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I7c0da9f10b4a8b18e0a6c1107122f96c58275f76 Reviewed-on: https://review.spdk.io/gerrit/c/s
CHANGELOG: add missing entries for v24.09
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I7c0da9f10b4a8b18e0a6c1107122f96c58275f76 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25005 Reviewed-by: Jim Harris <jim.harris@samsung.com> 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>
show more ...
|
#
18301495 |
| 24-Sep-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
CHANGELOG: reorder and format entries for v24.09 release
Removed and merged duplicated entries, reordered them alphabetically, and fixed a few formatting errors. No new entries have been added in t
CHANGELOG: reorder and format entries for v24.09 release
Removed and merged duplicated entries, reordered them alphabetically, and fixed a few formatting errors. No new entries have been added in this patch.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I6ffcec6e5abe8a0c0e3c016a391849cc67fdb400 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25004 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
ec7092bc |
| 20-Sep-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
version: v25.01-pre
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I21598c575c308ce88020a7d1ad4ca6160bd2f5d2 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24977 Revie
version: v25.01-pre
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I21598c575c308ce88020a7d1ad4ca6160bd2f5d2 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24977 Reviewed-by: Tomasz Zawadzki <tomasz@tzawadzki.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@samsung.com>
show more ...
|
Revision tags: v24.05, v24.09-pre, v24.05-rc1 |
|
#
5b2687ba |
| 12-Mar-2024 |
Ben Walker <ben@nvidia.com> |
bdev: Deprecate spdk_bdev_io_get_aux_buf
I do not believe anything is using this.
Change-Id: I9e09a07df8c1e9af67de4ddffb46f74f8189b1d6 Signed-off-by: Ben Walker <ben@nvidia.com> Reviewed-on: https:
bdev: Deprecate spdk_bdev_io_get_aux_buf
I do not believe anything is using this.
Change-Id: I9e09a07df8c1e9af67de4ddffb46f74f8189b1d6 Signed-off-by: Ben Walker <ben@nvidia.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22310 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
#
53be3bd8 |
| 07-May-2024 |
Alexey Marchuk <alexeymar@nvidia.com> |
lib/util: Make md5 API public
Make md5 realted functions in iscsi lib public. Interface remained unchaged except of spdk_ prefix added to func names. Implementation slightly updated with unlikely()
lib/util: Make md5 API public
Make md5 realted functions in iscsi lib public. Interface remained unchaged except of spdk_ prefix added to func names. Implementation slightly updated with unlikely() hints.
Signed-off-by: Alexey Marchuk <alexeymar@nvidia.com> Change-Id: I8bff008aad0c44b639b9249e1b48f3a6f9421f74 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23133 Community-CI: Mellanox Build Bot Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Ben Walker <ben@nvidia.com>
show more ...
|
#
81fc34df |
| 11-Apr-2024 |
Krzysztof Goreczny <krzysztof.goreczny@dell.com> |
nvmf/tcp: Add support for the interrupt mode in NVMe-of TCP
Add one dedicated test interrupt.sh that checks if all pollers are indeed working in the interrupt mode. Also, run entire nvmf_target_core
nvmf/tcp: Add support for the interrupt mode in NVMe-of TCP
Add one dedicated test interrupt.sh that checks if all pollers are indeed working in the interrupt mode. Also, run entire nvmf_target_core.sh scope in both polling and interrupt mode to check if from functional perspective everything works in both cases. Most tests will (for now) still have busy pollers for the backend storage as only aio supports the interrupt mode but that's ok.
Change-Id: I0a61e82cd6372fe1bf97ae4c912f6f3266207f99 Signed-off-by: Krzysztof Goreczny <krzysztof.goreczny@dell.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22746 Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
dd98a248 |
| 30-Jul-2024 |
Mehakjot Singh Sidhu <mehakjot.sidhu@nutanix.com> |
bdev_nvme: Make bdev nvme create and set multipath policy APIs public
Introduced new header file /module/bdev/nvme.h and added public APIs `spdk_bdev_nvme_create`, `spdk_bdev_nvme_set_multipath_poli
bdev_nvme: Make bdev nvme create and set multipath policy APIs public
Introduced new header file /module/bdev/nvme.h and added public APIs `spdk_bdev_nvme_create`, `spdk_bdev_nvme_set_multipath_policy` and `spdk_bdev_nvme_get_default_ctrlr_opts`, replacing internal functions `bdev_nvme_create`, `bdev_nvme_set_multipath_policy` and `bdev_nvme_get_default_ctrlr_opts`.
No changes have been done to the implementation of the above functions.
Change-Id: I610cfca65fbc43c32b1cf2288c8208fa5c6e567b Signed-off-by: Mehakjot Singh Sidhu <mehakjot.sidhu@nutanix.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24370 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@samsung.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
show more ...
|
#
18ede8d3 |
| 16-May-2024 |
Krzysztof Goreczny <krzysztof.goreczny@dell.com> |
nvmf: enable iobuf based queuing for nvmf requests
iobuf can internally queue requests that awaits free buffers. Currently all nvmf transports are handling pending buffers internally.
With this cha
nvmf: enable iobuf based queuing for nvmf requests
iobuf can internally queue requests that awaits free buffers. Currently all nvmf transports are handling pending buffers internally.
With this change spdk_nvmf_request_get_buffers() API works as follows: - Whenever all iovecs are allocated immediately then nothing changes compared to the previous implementation. - If iobuf does not have enough buffers then there are two flows: - if req_get_buffers_done is not set in the spdk_nvmf_transport_ops then again, nothing changes. All (if there were any) ioves are released and caller must try again later. - if callback was set then caller will be notified once all iovecs are allocated.
To use iobuf queueing following changes are needed: - spdk_nvmf_transport_ops has now a callback function pointer used to notify that previously interrupted buffer allocation is now complete. - spdk_nvmf_request has fields to store spdk_iobuf_entry and remaining buffer length. Both are not in use when buffer allocation succeeds immediately so there is no impact on the number of hot cache lines within spdk_nvmf_request struct. - transport.c contains all the logic to track buffers allocation progress and notifies requester when it is done.
As requests waiting for the buffer might get aborted, another API to remove such request from the iobuf queue is also added.
This patch brings only API change. Usage in transport implementations will come in next patches.
Also, there is no support yet for the stripped buffers.
Change-Id: I95e30750dd83c27bb3be2f77b7635168a2b63e19 Signed-off-by: Krzysztof Goreczny <krzysztof.goreczny@dell.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23214 Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
#
34edd9f1 |
| 10-Jul-2024 |
Kamil Godzwon <kamilx.godzwon@intel.com> |
general: fix misspells and typos
Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com> Change-Id: Iab206ef526eb7032c6681a3145450010c91705a4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+
general: fix misspells and typos
Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com> Change-Id: Iab206ef526eb7032c6681a3145450010c91705a4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24120 Community-CI: Mellanox Build Bot Reviewed-by: Karol Latecki <karol.latecki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
172d5791 |
| 09-Jul-2024 |
Shuhei Matsumoto <smatsumoto@nvidia.com> |
dif: Match enum spdk_dif_pi_format with NVMe spec
In enum spdk_dif_pi_format, 16b guard PI = 1, 32b guard PI = 2, and 64b guard PI = 3.
However, in the NVMe specification, 16b guard PI = 0, 32b gua
dif: Match enum spdk_dif_pi_format with NVMe spec
In enum spdk_dif_pi_format, 16b guard PI = 1, 32b guard PI = 2, and 64b guard PI = 3.
However, in the NVMe specification, 16b guard PI = 0, 32b guard PI = 1, and 64b guard PI = 2.
These do not match.
Furthermore, if there is no metadata or PI is disabled, enum spdk_dif_pi_format will not be initialized. In the current enum spdk_dif_pi_format, 0 is undefined. This is not desirable.
Hence, subtract -1 from each of enum spdk_dif_pi_format.
The last patch bumped SO_VER of lib/util forcefully. Hence, users will be able to detect this change and recompile their applications.
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I103330e50363afa9a154fe72f1c0bd4c82d74e24 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23624 Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
#
f838343c |
| 24-May-2024 |
Jim Harris <jim.harris@samsung.com> |
env: add spdk_env_core_get_smt_cpuset
This create a cpuset with core bits set for the specified core and any of its SMT siblings.
If the core has siblings, then all of its siblings will be set, eve
env: add spdk_env_core_get_smt_cpuset
This create a cpuset with core bits set for the specified core and any of its SMT siblings.
If the core has siblings, then all of its siblings will be set, even those that are not part of the application's core mask.
If the specified core is UINT32_MAX, then bits will be set for all SMT siblings of all cores in the application's core mask.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I6e9677414fd3039089c4faec3464cf135a70a6ce Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23406 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>
show more ...
|
#
29f02008 |
| 11-Apr-2024 |
Krzysztof Goreczny <krzysztof.goreczny@dell.com> |
sock: Add interrupt APIs for socket groups
Add spdk_sock_group_register_interrupt() API for setting interrupts on the socket groups. Only POSIX and SSL sockets are supported.
Change-Id: I4201de7650
sock: Add interrupt APIs for socket groups
Add spdk_sock_group_register_interrupt() API for setting interrupts on the socket groups. Only POSIX and SSL sockets are supported.
Change-Id: I4201de7650cff8f97e0cb7d4ad4d2c31a7e9a79f Signed-off-by: Krzysztof Goreczny <krzysztof.goreczny@dell.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22744 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Boris Glimcher <Boris.Glimcher@emc.com> Community-CI: Mellanox Build Bot
show more ...
|
#
dde60dba |
| 11-Jun-2024 |
Krishna Kanth Reddy <krish.reddy@samsung.com> |
lib/event: add framework_get_governor RPC
Implemented a new RPC 'framework_get_governor' to fetch the details of Power Governor, env and the frequencies available, frequency set to the CPU cores.
C
lib/event: add framework_get_governor RPC
Implemented a new RPC 'framework_get_governor' to fetch the details of Power Governor, env and the frequencies available, frequency set to the CPU cores.
Change-Id: I2fa7f884f1253188c002ea4816dd80f88b623098 Signed-off-by: Krishna Kanth Reddy <krish.reddy@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23640 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|