Commit 02614b0d authored by Krzysztof Karas's avatar Krzysztof Karas Committed by Tomasz Zawadzki
Browse files

CHANGELOG: refactor initial changelog entries



Fix typos, add highlighting, sort entries alphabetically,
merge two nvme entries into one, improve document spacing.

Signed-off-by: default avatarKrzysztof Karas <krzysztof.karas@intel.com>
Change-Id: I18261326fcdb6f82f8e52e29d123c19136bbb9e3
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7530


Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
parent 03a3a5c0
Loading
Loading
Loading
Loading
+59 −62
Original line number Diff line number Diff line
@@ -2,26 +2,11 @@

## v21.04: (Upcoming Release)

### accel

### virtio

Add the bdev_virtio_blk_set_hotplug rpc for the virtio blk pci device.

### ocf

Updated OCF submodule to v20.12.2

### nvme

Added an accelerated table pointer in spdk_nvme_poll_group
which can be used provide the accelerated functions by users with
hardware engine, such as crc32c accelerated function.

Added `spdk_nvme_map_cmd` API to map the NVMe command with SGL cases.

### raid

For `bdev_raid_create` RPC, the deprecated parameter `strip_size` was removed.
Two new accelerated crc32 functions `spdk_accel_submit_crc32cv` and
`spdk_accel_batch_prep_crc32cv` are added in order to provide the
chained accelerated CRC32 computation support.

### bdev

@@ -38,7 +23,7 @@ Removed the `spdk_bdev_create_bs_dev_from_desc` and `spdk_bdev_create_bs_dev` AP

### env

Added spdk_pci_device_allow API to allow applications to add PCI addresses to
Added `spdk_pci_device_allow` API to allow applications to add PCI addresses to
the allowed list after the application has started.

Removed the `pci_whitelist`, `pci_blacklist` and `master_core` members of struct `spdk_env_opts`.
@@ -48,15 +33,20 @@ Removed the `pci_whitelist`, `pci_blacklist` and `master_core` members of struct
Removed the `config_file`, `max_delay_us`, `pci_whitelist`
and `pci_blacklist` members of struct `spdk_app_opts`.

### thread
### idxd

Added `spdk_thread_set_interrupt_mode` function in order to set present spdk_thead into
interrupt mode or back to poll mode. It is valid only when thread interrupt facility is
enabled by spdk_interrupt_mode_enable().
A new API `spdk_idxd_get_rebalance` was added so that users of the library
can know whether they need to rebalance the flow control for the channel
that was just added/removed.  This is based on how the low level library
shares devices amongst channels.

Added `spdk_poller_register_interrupt` function to mark that the poller is capable of
entering interrupt mode. Callback function will be called when the poller must transition
into or out of interrupt mode.
The API `spdk_idxd_reconfigure_chan` had the `num_channels` removed as this
is now tracked in the library.  The app makes use the new API above to
determine whether to rebalance or not. This applies to `spdk_idxd_configure_chan`
as well.

The API `spdk_idxd_put_channel` now returns the rebalance state for the
underlying device.

### iscsi

@@ -65,18 +55,18 @@ A TEXT PDU with no data, but CONTINUE flag set, would result in a NULL pointer d
and crash the SPDK iSCSI target process. All users of the SPDK iSCSI target
are recommended to update. All SPDK versions <= v21.01 are affected.

### accel

Two new accelerated crc32 functions 'spdk_accel_submit_crc32cv' and
'spdk_accel_batch_prep_crc32cv' are added in order to provide the
chained accelerated CRC32 computation support.

### net

The net library is deprecated and will be removed in the 21.07 release.

### nvme

Added a new function `spdk_nvme_ctrlr_get_regs_pmrcap` to get the PMR capabilities.

Added an accelerated table pointer in `spdk_nvme_poll_group`
which can be used to provide the accelerated functions by users with
hardware engine, such as crc32c accelerated function.

Added new functions `spdk_nvme_ctrlr_get_pmrsz`, `spdk_nvme_ctrlr_enable_pmr`,
`spdk_nvme_ctrlr_disable_pmr`, `spdk_nvme_ctrlr_map_pmr` and `spdk_nvme_ctrlr_unmap_pmr`.

@@ -86,26 +76,30 @@ Added `spdk_nvme_qpair_get_optimal_poll_group` function and `qpair_get_optimal_p
function pointer in spdk_nvmf_transport_ops structure in order to add the qpair to the most
suitable polling group.

Add OPTPERF and namespace optimal performance fields to nvme_spec.h.
Added OPTPERF and namespace optimal performance fields to nvme_spec.h.

Added spdk_nvme_set_hotplug_filter API to allow applications to choose which
Added `spdk_nvme_set_hotplug_filter` API to allow applications to choose which
hot-inserted SSDs should be probed. This is useful for use cases where multiple
independent SPDK processes are running on one node. The filter function can
then be implemented in these processes to decide which SSDs to probe based on
the new SSD's PCI address.

New functions `spdk_nvme_poll_group_get_stats` and `spdk_nvme_poll_group_free_stats`
added. These functions allow to get transport statistics per NVME poll group.
were added. These functions allow to get transport statistics per NVME poll group.

Added `spdk_nvme_map_cmd` API to map the NVMe command with SGL cases.

### nvmf

Removed the `spdk_nvmf_tgt_listen` and `spdk_nvmf_subsystem_add_ns` API.

Added new APIs:

- `spdk_nvmf_poll_group_dump_stat` (function in `nvmf.h`).
- `poll_group_dump_stat` (transport op in `nvmf_transport.h`).

The following APIs have been deprecated and will be removed in a future release:

- `spdk_nvmf_poll_group_get_stat` (function in `nvmf.h`),
- `spdk_nvmf_transport_poll_group_get_stat` (function in `nvmf.h`),
- `spdk_nvmf_transport_poll_group_free_stat`(function in `nvmf.h`),
@@ -119,21 +113,17 @@ See header files for details.
The `trtype` field in JSON returned by `nvmf_get_stats` RPC contains now the name of the transport,
which is the same as the type for defined transports and more informative for a custom transport.

### opal
### ocf

Removed the `spdk_opal_supported` API.
Updated OCF submodule to v20.12.2

### sock
### opal

The type of enable_placement_id in struct spdk_sock_impl_opts is changed from
bool to int. We can use RPC to configure different value of enable_placement_id.
Then we can leverage SO_INCOMING_CPU to get placement_id, which aims to utilize
CPU cache locality, enabled by setting enable_placement_id=2.
Removed the `spdk_opal_supported` API.

### thread
### raid

A new API `spdk_io_channel_get_io_device` was added to get the io_device for the specified
I/O channel.
For `bdev_raid_create` RPC, the deprecated parameter `strip_size` was removed.

### rpc

@@ -146,22 +136,31 @@ Added support for new RPM spec, rpmbuild/spdk.spec, which can be used for packag
SPDK. The pkg/spdk.spec is considered to be deprecated and scheduled for removal. See
[RPM documentation](https://spdk.io/doc/rpm.html) for more details.

## v21.01:
### sock

### idxd
The type of `enable_placement_id` in struct `spdk_sock_impl_opts` is changed from
bool to int. We can use RPC to configure different value of `enable_placement_id`.
Then we can leverage SO_INCOMING_CPU to get placement_id, which aims to utilize
CPU cache locality, enabled by setting enable_placement_id=2.

A new API `spdk_idxd_get_rebalance` was added so that users of the library
can know whether they need to rebalance the flow control for the channel
that was just added/removed.  This is based on how the low level library
shares devices amongst channels.
### thread

The API `spdk_idxd_reconfigure_chan` had the `num_channels` removed as this
is now tracked in the library.  The app makes use the new API above to
determine whether to rebalance or not. This applies to `spdk_idxd_configure_chan`
as well.
A new API `spdk_io_channel_get_io_device` was added to get the io_device for the specified
I/O channel.

The API `spdk_idxd_put_channel` now returns the rebalance state for the
underlying device.
Added `spdk_thread_set_interrupt_mode` function in order to set present spdk_thread into
interrupt mode or back to poll mode. It is valid only when thread interrupt facility is
enabled by `spdk_interrupt_mode_enable`.

Added `spdk_poller_register_interrupt` function to mark that the poller is capable of
entering interrupt mode. Callback function will be called when the poller must transition
into or out of interrupt mode.

### virtio

Added the `bdev_virtio_blk_set_hotplug` RPC for the virtio blk pci device.

## v21.01:

### bdev

@@ -264,8 +263,6 @@ Change the return type of function `spdk_nbd_stop` from void to int. And update

### nvme

Added a new function `spdk_nvme_ctrlr_get_regs_pmrcap` to get the PMR capabilities.

Directives support was added to the NVMe driver.

Two async APIs `spdk_nvme_ctrlr_cmd_directive_receive` and `spdk_nvme_ctrlr_cmd_directive_send`