diff --git a/CHANGELOG.md b/CHANGELOG.md index f7667a84fc..f227ad3244 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -161,6 +161,11 @@ For `bdev_raid_create` RPC, the deprecated parameter `strip_size` was removed. New RPC `bdev_nvme_get_transport_statistics` was added, it allows to get transport statistics of nvme poll groups. +Parameter `enable-zerocopy-send` of RPC `sock_impl_set_options` is deprecated and will be removed in SPDK 21.07, +use `enable-zerocopy-send-server` or `enable-zerocopy-send-client` instead. +Parameter `disable-zerocopy-send` of RPC `sock_impl_set_options` is deprecated and will be removed in SPDK 21.07, +use `disable-zerocopy-send-server` or `disable-zerocopy-send-client` instead. + ### rpm Added support for new RPM spec, rpmbuild/spdk.spec, which can be used for packaging the diff --git a/deprecation.md b/deprecation.md index af5e595d8a..6917103999 100644 --- a/deprecation.md +++ b/deprecation.md @@ -28,6 +28,13 @@ The following APIs have been deprecated and will be removed in SPDK 21.07: - `poll_group_free_stat` (transport op in `nvmf_transport.h`). Please use `spdk_nvmf_poll_group_dump_stat` and `poll_group_dump_stat` instead. +## rpc + +Parameter `enable-zerocopy-send` of RPC `sock_impl_set_options` is deprecated and will be removed in SPDK 21.07, +use `enable-zerocopy-send-server` or `enable-zerocopy-send-client` instead. +Parameter `disable-zerocopy-send` of RPC `sock_impl_set_options` is deprecated and will be removed in SPDK 21.07, +use `disable-zerocopy-send-server` or `disable-zerocopy-send-client` instead. + ## rpm `pkg/spdk.spec` is considered to be deprecated and scheduled for removal in SPDK 21.07. diff --git a/doc/jsonrpc.md b/doc/jsonrpc.md index 2833a0125f..e5e4d748a4 100644 --- a/doc/jsonrpc.md +++ b/doc/jsonrpc.md @@ -8612,7 +8612,7 @@ impl_name | Required | string | Name of socket implementa recv_buf_size | Optional | number | Size of socket receive buffer in bytes send_buf_size | Optional | number | Size of socket send buffer in bytes enable_recv_pipe | Optional | boolean | Enable or disable receive pipe -enable_zerocopy_send | Optional | boolean | Enable or disable zero copy on send for client and server sockets +enable_zerocopy_send | Optional | boolean | Deprecated. Enable or disable zero copy on send for client and server sockets enable_quick_ack | Optional | boolean | Enable or disable quick ACK enable_placement_id | Optional | number | Enable or disable placement_id. 0:disable,1:incoming_napi,2:incoming_cpu enable_zerocopy_send_server | Optional | boolean | Enable or disable zero copy on send for server sockets diff --git a/include/spdk/sock.h b/include/spdk/sock.h index 1fcecf93ec..6336c167f4 100644 --- a/include/spdk/sock.h +++ b/include/spdk/sock.h @@ -111,6 +111,7 @@ struct spdk_sock_impl_opts { bool enable_recv_pipe; /** + * **Deprecated, please use enable_zerocopy_send_server or enable_zerocopy_send_client instead** * Enable or disable use of zero copy flow on send. Used by posix socket module. */ bool enable_zerocopy_send; diff --git a/scripts/rpc.py b/scripts/rpc.py index 7fecc53885..f60863cb07 100755 --- a/scripts/rpc.py +++ b/scripts/rpc.py @@ -2619,9 +2619,11 @@ Format: 'user:u1 secret:s1 muser:mu1 msecret:ms1,user:u2 secret:s2 muser:mu2 mse action='store_true', dest='enable_recv_pipe') p.add_argument('--disable-recv-pipe', help='Disable receive pipe', action='store_false', dest='enable_recv_pipe') - p.add_argument('--enable-zerocopy-send', help='Enable zerocopy on send', + p.add_argument('--enable-zerocopy-send', help="""Enable zerocopy on send + (Deprecated, use enable-zerocopy-send-server or enable-zerocopy-send-client)""", action='store_true', dest='enable_zerocopy_send') - p.add_argument('--disable-zerocopy-send', help='Disable zerocopy on send', + p.add_argument('--disable-zerocopy-send', help="""Enable zerocopy on send + (Deprecated, use disable-zerocopy-send-server or disable-zerocopy-send-client)""", action='store_false', dest='enable_zerocopy_send') p.add_argument('--enable-quickack', help='Enable quick ACK', action='store_true', dest='enable_quickack') diff --git a/scripts/rpc/sock.py b/scripts/rpc/sock.py index 450822069f..cd1c428878 100644 --- a/scripts/rpc/sock.py +++ b/scripts/rpc/sock.py @@ -28,7 +28,7 @@ def sock_impl_set_options(client, recv_buf_size: size of socket receive buffer in bytes (optional) send_buf_size: size of socket send buffer in bytes (optional) enable_recv_pipe: enable or disable receive pipe (optional) - enable_zerocopy_send: enable or disable zerocopy on send (optional) + enable_zerocopy_send: (Deprecated) enable or disable zerocopy on send (optional) enable_quickack: enable or disable quickack (optional) enable_placement_id: option for placement_id. 0:disable,1:incoming_napi,2:incoming_cpu (optional) enable_zerocopy_send_server: enable or disable zerocopy on send for server sockets(optional) @@ -44,6 +44,7 @@ def sock_impl_set_options(client, if enable_recv_pipe is not None: params['enable_recv_pipe'] = enable_recv_pipe if enable_zerocopy_send is not None: + print("WARNING: enable_zerocopy_send is deprecated, please use enable_zerocopy_send_server or enable_zerocopy_send_client.") params['enable_zerocopy_send'] = enable_zerocopy_send if enable_quickack is not None: params['enable_quickack'] = enable_quickack