|
Revision tags: v25.01-rc1, v24.09, v25.01-pre, v24.09-rc1 |
|
| #
63e0c25d |
| 12-Sep-2024 |
Vasilii Ivanov <iwanovvvasilij@gmail.com> |
bdev: add reset_mode to bdev_get_iostat
In current implementation of resetting stats explicit bdev_reset_iostat call is needed. It is not optimal for usecases when stat is obtained periodically and
bdev: add reset_mode to bdev_get_iostat
In current implementation of resetting stats explicit bdev_reset_iostat call is needed. It is not optimal for usecases when stat is obtained periodically and then resetted, because some stats may be lost in between of get and reset. Introduce new option for bdev_get_iostat that allows to reset stat right after obtaining it.
Fixes #3525
Change-Id: I77a5ea9310718c25e678336e2450a04fb582c050 Signed-off-by: Vasilii Ivanov <iwanovvvasilij@gmail.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24900 Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
| #
f3cef5e1 |
| 12-Jun-2024 |
Atul Malakar <a.malakar@samsung.com> |
bdev: Add bdev_enable_histogram filter
Added new --opc parameter to bdev_enable_histogram RPC. It facilitates user to capture histogram data points for the specified IO type.
Refer to bdev_get_bde
bdev: Add bdev_enable_histogram filter
Added new --opc parameter to bdev_enable_histogram RPC. It facilitates user to capture histogram data points for the specified IO type.
Refer to bdev_get_bdevs RPC for list of io types.
Change-Id: I3b70296ae32adc80f894e19426af22da0ac70802 Signed-off-by: Atul Malakar <a.malakar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23488 Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
| #
db8a9711 |
| 12-Jun-2024 |
Atul Malakar <a.malakar@samsung.com> |
bdev: Add helper function to get IO type strings
A helper function spdk_bdev_get_io_type_name and string array g_io_type_strings is added to translate spdk_bdev_io_type enum to string value.
Change
bdev: Add helper function to get IO type strings
A helper function spdk_bdev_get_io_type_name and string array g_io_type_strings is added to translate spdk_bdev_io_type enum to string value.
Change-Id: Ie787eb2c7c170ba2e3ba01d492ca8628a0d4f976 Signed-off-by: Atul Malakar <a.malakar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23660 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
show more ...
|
|
Revision tags: v24.05, v24.09-pre, v24.05-rc1, LTS, v24.01 |
|
| #
61623c5c |
| 25-Jan-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
bdev: add spdk_bdev_io padding in place of io_submit_ch
Commit 055de83ac ("bdev: multiple QoS queues with atomic-based QoS quota") changed the way bdev layer handles IOs with QoS enabled. It should
bdev: add spdk_bdev_io padding in place of io_submit_ch
Commit 055de83ac ("bdev: multiple QoS queues with atomic-based QoS quota") changed the way bdev layer handles IOs with QoS enabled. It shouldn't affect IOs when QoS is disabled. However, apparently, this change *has* shown performance drop on some workloads. Specifically, single core bdepverf performance running on 7 Kioxia KCM61VUL3T20 drives with qd=192 went down from ~5.9M to ~5.4M.
As part of that commit, the layout of struct spdk_bdev_io has been changed due to removing io_submit_ch. Re-adding the padding in place of that field has proven to improve IOPS in the case mentioned above from ~5.3M (current master) to ~5.7M. This patch does exactly that, but we should look into the layout of this structure more thoroughly in the future.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I35a04b93bec54620a6a2c8f1133870f5f101eda9 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21576 Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
|
Revision tags: v24.05-pre, v24.01-rc1 |
|
| #
b2a154ea |
| 08-Dec-2023 |
Michal Berger <michal.berger@intel.com> |
mk: Shuffle compiler opts for VTune
Change-Id: I841cf2e055b744020c641f496936a6a9c022a2c1 Signed-off-by: Alexey Kireev <alexey.kireev@intel.com> Signed-off-by: Michal Berger <michal.berger@intel.com>
mk: Shuffle compiler opts for VTune
Change-Id: I841cf2e055b744020c641f496936a6a9c022a2c1 Signed-off-by: Alexey Kireev <alexey.kireev@intel.com> Signed-off-by: Michal Berger <michal.berger@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/20967 Reviewed-by: Ben Walker <ben@nvidia.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: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
|
Revision tags: v23.09, v24.01-pre, v23.09-rc1, v23.05, v23.09-pre, v23.01.1 |
|
| #
055de83a |
| 02-Mar-2023 |
Anton Nayshtut <anayshtut@nvidia.com> |
bdev: multiple QoS queues with atomic-based QoS quota
Here's a comparison of the legacy and the atomic-based QoS.
Tested with bdevperf + 1 null or malloc bdev. When the Qos is enabled the limit set
bdev: multiple QoS queues with atomic-based QoS quota
Here's a comparison of the legacy and the atomic-based QoS.
Tested with bdevperf + 1 null or malloc bdev. When the Qos is enabled the limit set to the value higher than the setup is capable of achieving (900.000.000 IOPs).
| bdev | CPU | No QoS | Legacy QoS | Atomic QoS | LP | AP | | | Mask | | (IOPS) | (IOPS) | (%) | (%) | |--------|------|--------------|------------|-------------|-----|-----| | null | 1 | 10807210.39 | 8720802.93 | 8883633.79 | 19 | 18 | | null | 3 | 21065293.41 | 7798114.51 | 8605514.14 | 63 | 59 | | null | 7 | 31941220.35 | 8026022.82 | 11057120.85 | 75 | 65 | | null | F | 42510017.40 | 7655892.00 | 11832259.16 | 82 | 72 | | null | FF | 80864836.44 | 7598421.52 | 13096449.71 | 91 | 84 | | null | FFF | 121780455.70 | 7609117.22 | 11030412.77 | 94 | 91 | | null | FFFF | 162071300.70 | 7558077.12 | 10826030.57 | 95 | 93 | | malloc | 1 | 1948096.14 | 1863817.94 | 1881245.75 | 4 | 3 | | malloc | 3 | 3803549.11 | 2068897.67 | 3155528.57 | 46 | 17 | | malloc | 7 | 5593798.24 | 2227017.22 | 4387343.78 | 60 | 22 | | malloc | F | 7231720.95 | 2281762.70 | 5797832.38 | 68 | 20 | | malloc | FF | 12070891.12 | 2614674.11 | 9690367.72 | 78 | 20 | | malloc | FFF | 13989626.48 | 2630881.18 | 12840411.99 | 81 | 8 | | malloc | FFFF | 14405443.97 | 2600775.13 | 9992956.98 | 82 | 31 |
Change-Id: Ia91706b761e085b4231a2fb9a08565c305735b7d Signed-off-by: Anton Nayshtut <anayshtut@nvidia.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18914 Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
| #
01ccef6e |
| 15-Nov-2023 |
Konrad Sztyber <konrad.sztyber@intel.com> |
bdev: allow bdevs to specify max size of IOs
There are cases when a bdev module needs to limit the maximum size of an IO to a certain value (e.g. large iobuf if it needs to allocate a bounce buffer)
bdev: allow bdevs to specify max size of IOs
There are cases when a bdev module needs to limit the maximum size of an IO to a certain value (e.g. large iobuf if it needs to allocate a bounce buffer).
Previously, this was covered by specifying optimal_io_boundary and setting the split_on_optimal_io_boundary flag. However, this can be inefficient, as it'll also split smaller requests that do not exceed the maximum size, but cross the boundary. For instance, with optimal_io_boundary=4, an IO with offset_blocks=3, num_blocks=2 will be split.
To avoid that, a new field, max_rw_size, is introduced to allow for specifying the maximum size of an IO without taking into account offset_blocks. It only affects READ and WRITE requests, as other IO types are already controlled by other values (e.g. max_unmap, max_copy, max_write_zeroes).
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: Idcafdeaf22a34f25aa599f03726caa9307949e1f Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/20584 Community-CI: Mellanox Build Bot 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 ...
|
| #
09fe539b |
| 05-Jun-2023 |
Konrad Sztyber <konrad.sztyber@intel.com> |
bdev: track IOs with accel sequence with an extra flag
We already have u.bdev.accel_sequence and internal.accel_sequence, but both of them can be cleared in different cases. The former is cleared w
bdev: track IOs with accel sequence with an extra flag
We already have u.bdev.accel_sequence and internal.accel_sequence, but both of them can be cleared in different cases. The former is cleared when a bdev doesn't support accel or by the module itself to notify bdev layer that it executed the sequence. The latter is cleared before submitting a request to a module supporting accel, so that bdev layer won't touch it again.
However, there are cases where it's necessary to know whether an IO was associated with an accel sequence and a module has executed it (e.g. to allow modules support accel without supporting memory domains), so an extra flag is required.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I58ec789cce84b63151d02e28a0bb3d3bbf85f7bf Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18771 Community-CI: Mellanox Build Bot Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
show more ...
|
|
Revision tags: v23.01 |
|
| #
3359bf34 |
| 23-Jan-2023 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where two versions exists with matching versions, but conflicting ABI. Ex. Next SPDK release adds an API call increasing the minor version, then LTS needs just a subset of those additions.
Increasing major so version after LTS, allows the future releases to update versions as needed. Yet allowing LTS to increase minor version separately.
Disabled test for increasing SO version without ABI change, as that is goal of this patch. This check shall be removed with SPDK 23.05 release. Looks like this was left over from prior LTS, to avoid that make sure it is only skipped when running against v23.01.x as latest release.
This patch: - increases SO_VER by 1 for all components - resets SO_MINOR to 0 for all components - removes suppressions for ABI tests
Short reference to how the versions were changed: MAX=$(git grep "SO_VER := " | cut -d" " -f 3 | sort -ubnr | head -1) for((i=$MAX;i>0;i-=1)); do find . -name "Makefile" -exec \ sed -i -e "s/SO_VER := $i\$/SO_VER := $(($i+1))/g" {} +; done find . -name "Makefile" -exec \ sed -i -e "s/SO_MINOR := .*/SO_MINOR := 0/g" {} +
Change-Id: I3e5681802c0a5ac6d7d652a18896997cd07cc8bf Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16419 Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
|
Revision tags: v23.05-pre, v23.01-rc1, v22.01.2 |
|
| #
a6dbe372 |
| 01-Nov-2022 |
paul luse <paul.e.luse@intel.com> |
update Intel copyright notices
per Intel policy to include file commit date using git cmd below. The policy does not apply to non-Intel (C) notices.
git log --follow -C90% --format=%ad --date defa
update Intel copyright notices
per Intel policy to include file commit date using git cmd below. The policy does not apply to non-Intel (C) notices.
git log --follow -C90% --format=%ad --date default <file> | tail -1
and then pull just the 4 digit year from the result.
Intel copyrights were not added to files where Intel either had no contribution ot the contribution lacked substance (ie license header updates, formatting changes, etc). Contribution date used "--follow -C95%" to get the most accurate date.
Note that several files in this patch didn't end the license/(c) block with a blank comment line so these were added as the vast majority of files do have this last blank line. Simply there for consistency.
Signed-off-by: paul luse <paul.e.luse@intel.com> Change-Id: Id5b7ce4f658fe87132f14139ead58d6e285c04d4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15192 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> Community-CI: Mellanox Build Bot
show more ...
|
|
Revision tags: v22.09, v23.01-pre, v22.09-rc1 |
|
| #
d14afd50 |
| 22-Aug-2022 |
Evgeniy Kochetov <evgeniik@nvidia.com> |
bdev: Add copy IO type
Copy operation is defined by source and destination LBAs and LBA count to copy. For destiantion LBA and LBA count we reuse exiting fields `offset_blocks` and `num_blocks` in `
bdev: Add copy IO type
Copy operation is defined by source and destination LBAs and LBA count to copy. For destiantion LBA and LBA count we reuse exiting fields `offset_blocks` and `num_blocks` in `struct spdk_bdev_io`. For source LBA new field `src_offset_blocks` was added.
`spdk_bdev_get_max_copy()` function can be used to retrieve maximum possible unsplit copy size. Zero values means unlimited. It is allowed to submit larger copy size but it will be split into several bdev IOs.
Signed-off-by: Evgeniy Kochetov <evgeniik@nvidia.com> Change-Id: I2ad56294b6c062595c026ffcf9b435f0100d3d7e Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14344 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
| #
f0494649 |
| 22-Sep-2022 |
GangCao <gang.cao@intel.com> |
Lib/Bdev: add the new API spdk_bdev_for_each_channel
And also related function pointers and APIs: spdk_bdev_for_each_channel_msg; spdk_bdev_for_each_channel_done; spdk_bdev_for_each_channel_conti
Lib/Bdev: add the new API spdk_bdev_for_each_channel
And also related function pointers and APIs: spdk_bdev_for_each_channel_msg; spdk_bdev_for_each_channel_done; spdk_bdev_for_each_channel_continue;
Change-Id: I52f0f6f27717d53c238faf2f998810c9c5ee45d4 Signed-off-by: GangCao <gang.cao@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14614 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
| #
48ce2c97 |
| 11-Jun-2022 |
GangCao <gang.cao@intel.com> |
Bdev: remove the QD poller at the time of Bdev unregister
Fix issue: #2561
The issue here is that in the bdev_set_qd_sampling_period RPC command, the QD sampling period has been set. Then later the
Bdev: remove the QD poller at the time of Bdev unregister
Fix issue: #2561
The issue here is that in the bdev_set_qd_sampling_period RPC command, the QD sampling period has been set. Then later the related Desc is closed and in the bdev_close() function the QD sampling period is reset to 0.
A new QD desc is added as the QD sampling period update could be handled properly.
Meanwhile, a new QD Poll In Progress flag is also added so as to indicate there are ongoing events of QD sampling and the Bdev unregister will be handled in the proper way.
Related test case and unit test also updated for this change.
Change-Id: Iac86c2c6447fe338c7480cf468897fc8f41f8741 Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Signed-off-by: GangCao <gang.cao@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13016 Tested-by: SPDK CI Jenkins <sys_sgci@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
show more ...
|
| #
488570eb |
| 03-Jun-2022 |
Jim Harris <james.r.harris@intel.com> |
Replace most BSD 3-clause license text with SPDX identifier.
Many open source projects have moved to using SPDX identifiers to specify license information, reducing the amount of boilerplate code in
Replace most BSD 3-clause license text with SPDX identifier.
Many open source projects have moved to using SPDX identifiers to specify license information, reducing the amount of boilerplate code in every source file. This patch replaces the bulk of SPDK .c, .cpp and Makefiles with the BSD-3-Clause identifier.
Almost all of these files share the exact same license text, and this patch only modifies the files that contain the most common license text. There can be slight variations because the third clause contains company names - most say "Intel Corporation", but there are instances for Nvidia, Samsung, Eideticom and even "the copyright holder".
Used a bash script to automate replacement of the license text with SPDX identifier which is checked into scripts/spdx.sh.
Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: Iaa88ab5e92ea471691dc298cfe41ebfb5d169780 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12904 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: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Dong Yi <dongx.yi@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: <qun.wan@intel.com>
show more ...
|
|
Revision tags: v22.05, v22.09-pre, v22.05-rc1, v22.01.1 |
|
| #
047c067c |
| 31-Jan-2022 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where two versions exists with matching versions, but conflicting ABI. Ex. Next SPDK release adds an API call increasing the minor version, then LTS needs just a subset of those additions.
Increasing major so version after LTS, allows the future releases to update versions as needed. Yet allowing LTS to increase minor version separately.
Disabled test for increasing SO version without ABI change, as that is goal of this patch. This check shall be removed with SPDK 22.05 release.
This patch: - increases SO_VER by 1 for all components - resets SO_MINOR to 0 for all components - removes suppressions for ABI tests
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: Id1a5358882dc496faa5b0b5c9a63b326c378c551 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11361 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
show more ...
|
|
Revision tags: v22.01, v22.01-rc1 |
|
| #
b7ad5b0b |
| 11-Nov-2021 |
Niklas Cassel <niklas.cassel@wdc.com> |
bdev/zone: add support for get zone id
In the bdev-zone API, there are a few functions that takes a zone_id: spdk_bdev_get_zone_info(), spdk_bdev_zone_management(), and the spdk_bdev_zone_append() f
bdev/zone: add support for get zone id
In the bdev-zone API, there are a few functions that takes a zone_id: spdk_bdev_get_zone_info(), spdk_bdev_zone_management(), and the spdk_bdev_zone_append() functions.
The way a zoned application is usually written is that it starts off by getting the zone report for all zones (zone_id will be sent in as 0), and then the application will keep the whole zone report in memory.
Therefore, an application usually have access to the zone_id/zslba for all zones. However, there are cases, e.g. when getting an error on write, where the completion callback will only have the lba of the write that failed.
Add a helper function that can be used to get the zone_id/slba for a given lba. Having this helper in bdev-zone will avoid SPDK applications needing to provide their own implementation for this.
Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com> Change-Id: I978335f87f7d49bc33aed81afcaa6d9f0af8a1e4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10180 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>
show more ...
|
|
Revision tags: v21.10, v21.10-rc1 |
|
| #
c3a58489 |
| 06-Aug-2021 |
Alexey Marchuk <alexeymar@mellanox.com> |
bdev: Add API to get SPDK memory domains used by bdev
Change-Id: Ic9f42eff59bdc4c8c6e73deb76b3eecfc04f80a8 Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com> Reviewed-on: https://review.spdk.io/
bdev: Add API to get SPDK memory domains used by bdev
Change-Id: Ic9f42eff59bdc4c8c6e73deb76b3eecfc04f80a8 Signed-off-by: Alexey Marchuk <alexeymar@mellanox.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6268 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: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ziye Yang <ziye.yang@intel.com>
show more ...
|
|
Revision tags: v21.07, v21.07-rc1, v21.04, v21.04-rc1 |
|
| #
6cebe9d0 |
| 09-Apr-2021 |
Swapnil Ingle <swapnil.ingle@nutanix.com> |
nvmf: Support physical block size if exposed by bdev
(Note: this patch was previously applied as b32cfc46 and then reverted as 63642bef.)
Today the in-guest nvme device shows physical_block_size=51
nvmf: Support physical block size if exposed by bdev
(Note: this patch was previously applied as b32cfc46 and then reverted as 63642bef.)
Today the in-guest nvme device shows physical_block_size=512 even though the backend iSCSI bdev supports physical_block_size=4K
iSCSI targets exposes physical block size using logical_block_per_physical_block_exponent in READ_CAPACITY_16
NPWG is one of the way to let Linux nvme driver set physical_block_size of the nvme block device.
This patch adds spdk_bdev.phys_blocklen which is updated if the iSCSI backend exposes physical_block_size. Later phys_blocklen is used in nvmf to set NPWG and NAWUPF to report back during NS identity. Linux driver uses min(nawupf, npwg) to set physical_block_size.
Similarly in scsi_bdev fill lbppbe in READ_CAP16 response based on spdk_bdev.phys_blocklen.
Fixes #1884
Signed-off-by: Swapnil Ingle <swapnil.ingle@nutanix.com> Change-Id: I0b6c81f1937e346d448f49c927eda8c79d2d75c0 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7739 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
show more ...
|
|
Revision tags: v21.01.1, v21.01 |
|
| #
e4070ee0 |
| 29-Jan-2021 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where
so_ver: increase all major versions
To allow SO_MINOR updates on LTS for the whole year it is supported, the major version for all components needs to be increased. This is to prevent scenario where two versions exists with matching versions, but conflicting ABI. Ex. Next SPDK release adds an API call increasing the minor version, then LTS needs just a subset of those additions.
Increasing major so version after LTS, allows the quarterly releases to update versions as needed. Yet allowing LTS to increase minor version separately.
Disabled test for increasing SO version without ABI change, as that is goal of this patch. This check shall be removed with SPDK 21.04 release.
This patch: - increases SO_VER by 1 for all components - resets SO_MINOR to 0 for all components - removes suppressions for ABI tests
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: I44d01154430a074103bd21c7084f44932e81fe72 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6167 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|
|
Revision tags: v21.01-rc1, v20.10, v20.10-rc1 |
|
| #
da625683 |
| 12-Oct-2020 |
Jin Yu <jin.yu@intel.com> |
bdev: virtio blk read max size and segs
The backend device such as virtio-blk or virtio-scsi may support the SIZE_MAX and SEG_MAX. Then SPDK needs to split the big IO. Add this feature in bdev.
Cha
bdev: virtio blk read max size and segs
The backend device such as virtio-blk or virtio-scsi may support the SIZE_MAX and SEG_MAX. Then SPDK needs to split the big IO. Add this feature in bdev.
Change-Id: I2442e14121ccf141682964425e96382fec482af3 Signed-off-by: Jin Yu <jin.yu@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4600 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
show more ...
|
| #
0119b36b |
| 01-Dec-2020 |
Karol Latecki <karol.latecki@intel.com> |
lib/bdev: increase SO_MINOR to 1
This was omitted in 296a6d98389b7cbf95f57fc05c3565c2d65229e5 and is currently causing ABI inconsistencies.
Signed-off-by: Karol Latecki <karol.latecki@intel.com> Ch
lib/bdev: increase SO_MINOR to 1
This was omitted in 296a6d98389b7cbf95f57fc05c3565c2d65229e5 and is currently causing ABI inconsistencies.
Signed-off-by: Karol Latecki <karol.latecki@intel.com> Change-Id: Ifb5b2360ff1ffbaffdc3b5d057047d035b98d909 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5368 Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Community-CI: Broadcom CI Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
| #
28ebb8cc |
| 15-Oct-2020 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
bdev_module: remove config_text
This patch removes function for bdev modules to present options of the bdevs.
blob_bdev.h refers to the spdk_bdev_module, so would need to be bumped too. At this tim
bdev_module: remove config_text
This patch removes function for bdev modules to present options of the bdevs.
blob_bdev.h refers to the spdk_bdev_module, so would need to be bumped too. At this time spdk_bdev_module is left unchanged to prevent that.
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: I3cacb087c998d928c5d8c2722b7f041d82bb43f1 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4748 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> Community-CI: Broadcom CI
show more ...
|
|
Revision tags: v20.07, v20.07-rc1 |
|
| #
2d30df9b |
| 06-Jul-2020 |
yupeng <yupeng0921@gmail.com> |
bdev: add bdev_examine_bdev API
The bdev_examine_bdev api will examine a bdev explicitly. After disabling the auto_examine feature, a user could call bdev_examine_bdev to examine a specific bdev he/
bdev: add bdev_examine_bdev API
The bdev_examine_bdev api will examine a bdev explicitly. After disabling the auto_examine feature, a user could call bdev_examine_bdev to examine a specific bdev he/she wants.
Signed-off-by: Peng Yu <yupeng0921@gmail.com> Change-Id: Ifbbfb6f667287669ddf6175b8208efee39762933 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3219 Community-CI: Mellanox Build Bot Community-CI: Broadcom CI Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Michael Haeuptle <michaelhaeuptle@gmail.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
|
Revision tags: v20.04.1, v20.01.2 |
|
| #
6f97efb7 |
| 27-May-2020 |
Seth Howell <seth.howell@intel.com> |
test/make: add leaf type changes check to check_so_deps.
This is an important aspect of ABI versioning.
There was a change to the spdk_bdev_opts struct which is accessible from the public API that
test/make: add leaf type changes check to check_so_deps.
This is an important aspect of ABI versioning.
There was a change to the spdk_bdev_opts struct which is accessible from the public API that results in an ABI change.
There was also a change in the spdk_accel_module_if struct that will affect new modules so its major version needs to be revved.
There was also a change in the publically accessible rmda_hooks structure which forced an ABI change in the NVMe library.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: I5cc6886fe01b4adc2836b6e15995471f0361dc29 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2663 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
| #
d18e6320 |
| 10-May-2020 |
Seth Howell <seth.howell@intel.com> |
mk/lib: add a check that major and minor version is set for libs.
Also, while we are here, consolidate setting SO_SUFFIX to one spot.
Previously, it was possible for a library to slip through witho
mk/lib: add a check that major and minor version is set for libs.
Also, while we are here, consolidate setting SO_SUFFIX to one spot.
Previously, it was possible for a library to slip through without an SO version.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: I4db5fa5839502d266c6259892e5719b05134518c Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2361 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|