Revision tags: v24.05, v24.09-pre, v24.05-rc1, LTS, v24.01, v24.05-pre, v24.01-rc1, v23.09, v24.01-pre, v23.09-rc1 |
|
#
2fb672af |
| 04-Jul-2023 |
Krzysztof Karas <krzysztof.karas@intel.com> |
lib/jsonrpc: Store pointers to outstanding requests.
Currently a request is only added to a list in jsonrpc connection structure (stored inside jsonrpc server data structure), when its response is r
lib/jsonrpc: Store pointers to outstanding requests.
Currently a request is only added to a list in jsonrpc connection structure (stored inside jsonrpc server data structure), when its response is ready to send. This means that until that point, we do not have its pointer available inside jsonrpc server data, so if a server is shut down, it cannot properly handle that request. Furthermore, when server's memory is freed and connection is closed before such a request is sent, `jsonrpc_server_send_response()` will still try to insert the request into connection queue, resulting in heap-use-after-free errors. To remedy that issue, this patch introduces a new list for outstanding requests and skips sending responses in case a connection is not available.
Fixes #3052
Change-Id: I5ea6510d7cae5560654dbe2c18782e38eaa9fe97 Signed-off-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/19001 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@gmail.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
30b534c9 |
| 22-Jun-2023 |
Shuhei Matsumoto <smatsumoto@nvidia.com> |
jsonrpc: Put null byte to the end of response object in req->send_buf
If we print a JSON RPC response object in the req->send_buf simply, garbage will be contained because JSON RPC object is not req
jsonrpc: Put null byte to the end of response object in req->send_buf
If we print a JSON RPC response object in the req->send_buf simply, garbage will be contained because JSON RPC object is not required to be terminated by a null byte. To exclude garbage from print, put a null byte to the end of the JSON RPC response object before sending.
The null byte was not considered for the req->send_buf. Add one byte when allocating or reallocating the req->send_buf for the null byte.
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I1fa0b61db4ffba989da672b0d69662e3813aab8e Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18828 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|
#
b3bec079 |
| 22-Jun-2023 |
Shuhei Matsumoto <smatsumoto@nvidia.com> |
jsonrpc: Add complete_request() to access req->send_buf safely after all were sent
We want to log req->send_buf. Furthermore, we want to remove all newlines from req->send_buf to improve readability
jsonrpc: Add complete_request() to access req->send_buf safely after all were sent
We want to log req->send_buf. Furthermore, we want to remove all newlines from req->send_buf to improve readability. We can do it after all of req->send_buf are sent. Hence, as a preparation, add a new helper function jsonrpc_complete_request() and replace jsonrpc_free_request() by it.
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I85835711976b2a60427a7ab03b786abe625cd2c7 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18827 Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
Revision tags: v23.05, v23.09-pre, v23.01.1, v23.01, v23.05-pre, v23.01-rc1 |
|
#
58549382 |
| 14-Dec-2022 |
GangCao <gang.cao@intel.com> |
lib/jsonrpc: check the return value from setsockopt
Change-Id: I47c0635dcc53e28a8c7cfa85416b42c6475a3b65 Signed-off-by: GangCao <gang.cao@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk
lib/jsonrpc: check the return value from setsockopt
Change-Id: I47c0635dcc53e28a8c7cfa85416b42c6475a3b65 Signed-off-by: GangCao <gang.cao@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15915 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
Revision tags: 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 |
|
#
e450b8e7 |
| 17-Jun-2022 |
zhaoshushu.zss <zhaoshushu.zss@alibaba-inc.com> |
jsonrpc: add SOCK_CLOEXEC for spdk.sock fd
Signed-off-by: zhaoshushu.zss <zhaoshushu.zss@alibaba-inc.com> Change-Id: I8e2cb7c686900f6c1873dd6a04d4255030505c5f Reviewed-on: https://review.spdk.io/ger
jsonrpc: add SOCK_CLOEXEC for spdk.sock fd
Signed-off-by: zhaoshushu.zss <zhaoshushu.zss@alibaba-inc.com> Change-Id: I8e2cb7c686900f6c1873dd6a04d4255030505c5f Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13063 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
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, v22.01, v22.01-rc1, v21.10, v21.10-rc1, v21.07, v21.07-rc1, v21.04, v21.04-rc1, v21.01.1 |
|
#
32999ab9 |
| 19-Feb-2021 |
Jim Harris <james.r.harris@intel.com> |
jsonrpc: use SOCK_NONBLOCK in socket() calls
This allows us to remove separate fcntl() calls to set O_NONBLOCK.
Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: I1a590cfb3b65b3174bb5
jsonrpc: use SOCK_NONBLOCK in socket() calls
This allows us to remove separate fcntl() calls to set O_NONBLOCK.
Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: I1a590cfb3b65b3174bb5ef33e060cdc9bb7ac86c Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7598 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: <dongx.yi@intel.com>
show more ...
|
Revision tags: v21.01, v21.01-rc1, v20.10, v20.10-rc1 |
|
#
2172c432 |
| 04-Sep-2020 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
log: simplify SPDK_LOG_REGISTER_COMPONENT
This patch removes the string from register component. Removed are all instances in libs or hardcoded in apps.
Starting with this patch literal passed to r
log: simplify SPDK_LOG_REGISTER_COMPONENT
This patch removes the string from register component. Removed are all instances in libs or hardcoded in apps.
Starting with this patch literal passed to register, serves as name for the flag.
All instances of SPDK_LOG_* were replaced with just * in lowercase. No actual name change for flags occur in this patch.
Affected are SPDK_LOG_REGISTER_COMPONENT() and SPDK_*LOG() macros.
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: I002b232fde57ecf9c6777726b181fc0341f1bb17 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4495 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Mellanox Build Bot Reviewed-by: Anil Veerabhadrappa <anil.veerabhadrappa@broadcom.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Community-CI: Broadcom CI
show more ...
|
Revision tags: v20.07, v20.07-rc1 |
|
#
7192849e |
| 07-Jul-2020 |
Seth Howell <seth.howell@intel.com> |
lib: add checks for return code of pthread_spin_init
This function can fail with -EAGAIN or -ENOMEM so we should really check the return value.
Change-Id: I4a443351f3c85032f47e8af9e70b6b71ba3413f5
lib: add checks for return code of pthread_spin_init
This function can fail with -EAGAIN or -ENOMEM so we should really check the return value.
Change-Id: I4a443351f3c85032f47e8af9e70b6b71ba3413f5 Signed-off-by: Seth Howell <seth.howell@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3240 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Vitaliy Mysak <vitaliy.mysak@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com>
show more ...
|
Revision tags: v20.04.1, v20.01.2, v20.04, v20.04-rc1, v20.01.1 |
|
#
ba23cec1 |
| 06-Feb-2020 |
Darek Stojaczyk <dariusz.stojaczyk@intel.com> |
rpc: don't allow starting RPC server on a TCP port
`-r` and `--rpc-socket` command line options will now require path for a UNIX domain domain socket. The socket can be still exposed over TCP with e
rpc: don't allow starting RPC server on a TCP port
`-r` and `--rpc-socket` command line options will now require path for a UNIX domain domain socket. The socket can be still exposed over TCP with external programs. Hence, for (some) compatibility reasons, the test scripts, jsonrpc-client, and rpc.py will still be able connect directly via TCP.
Change-Id: I22a935f1596ce5f9c313b5be42cb85f772368c03 Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/605 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Community-CI: Mellanox Build Bot
show more ...
|
#
0be5557c |
| 10-May-2020 |
Seth Howell <seth.howell@intel.com> |
lib: json-nbd remove spdk prefix from static functions.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: Idbf8d37fbac4e3a9eff253095efb2525c9094d94 Reviewed-on: https://review.spdk.io/ge
lib: json-nbd remove spdk prefix from static functions.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: Idbf8d37fbac4e3a9eff253095efb2525c9094d94 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2364 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
#
134590a2 |
| 06-May-2020 |
Seth Howell <seth.howell@intel.com> |
lib/jsonrpc: remove spdk_ prefix from internal functions.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: Ieeb58943536caf46db77ce22509eccb477fa914a Reviewed-on: https://review.spdk.io/
lib/jsonrpc: remove spdk_ prefix from internal functions.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: Ieeb58943536caf46db77ce22509eccb477fa914a Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2214 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
show more ...
|
Revision tags: v20.01, v20.01-rc1, v19.10.1, v19.10, v19.10-rc1, v19.07.1, v19.07, v19.04.1 |
|
#
17c006a7 |
| 18-Jun-2019 |
yidong0635 <dongx.yi@intel.com> |
lib/jsonrpc: Fix memory leaks about connection request.
There're outstanding requests in spdk_jsonrpc_parse_request which caused by connection close. There are methods to call spdk_jsonrpc_server_c
lib/jsonrpc: Fix memory leaks about connection request.
There're outstanding requests in spdk_jsonrpc_parse_request which caused by connection close. There are methods to call spdk_jsonrpc_server_conn_close, including spdk_jsonrpc_server_conn_remove and spdk_jsonrpc_server_shutdown, Some rpc methods call these functions to terminate connections ,that leads to memory leaks. Try to free outstanding requests after deciding to terminate a connection. And do this follwing with close(conn->sockfd).
Fix issue #784, and can resolve other similar memory leaks about this.
Signed-off-by: yidong0635 <dongx.yi@intel.com> Change-Id: Icd287bd0c5670ee8ec32750b999f82b0fa89cf84 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/458438 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
show more ...
|
Revision tags: v19.04, v18.10.2, v19.01.1, v19.01 |
|
#
bbcb35f5 |
| 23-Jan-2019 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: support half closed connections
Fix case when remote is doing SHUT_WR but we still have requests in progress. In this case we should finish requests, send response and then close the connec
jsonrpc: support half closed connections
Fix case when remote is doing SHUT_WR but we still have requests in progress. In this case we should finish requests, send response and then close the connection.
Fixes #604
Change-Id: I009029c95e0557c7347a78c3a50d35b30fc8141e Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/c/441718 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Kulasek <tomaszx.kulasek@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
show more ...
|
Revision tags: v18.10.1 |
|
#
122a7763 |
| 13-Dec-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: process all requests in buffer
If more than one full request is received by a single recv() call only first one will be parsed. Then next time we call recv() is called it will return EAGAIN
jsonrpc: process all requests in buffer
If more than one full request is received by a single recv() call only first one will be parsed. Then next time we call recv() is called it will return EAGAIN and next request won't be parsed. Fix this by always parsing all requests in the buffer.
Change-Id: I0a2c72fd0ad6184834b9831bda520a28ab815f0d Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/c/437161 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Maciej Szwed <maciej.szwed@intel.com> Reviewed-by: wuzhouhui <wuzhouhui@kingsoft.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
show more ...
|
#
63978010 |
| 13-Dec-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: fix received JSON buffer overwrite
The receive buffer and JSON values array are shared across all requests on one connection. If RPC handlers deferre processing response, do the lazy decode
jsonrpc: fix received JSON buffer overwrite
The receive buffer and JSON values array are shared across all requests on one connection. If RPC handlers deferre processing response, do the lazy decode or capture JSON by pointer instead of copying it then content of the request array might be overwritten by now. As we don't have any requirement here we must assert that the received request is valid till response is finished.
Fix this issue by copying request data and work on the copy. This change also void the need of having JSON RPC 'id' field releasing over 128 bytes from each spdk_jsonrpc_request.
Change-Id: I665be446cbcd8f625e5a73514582efad3021a4ff Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/c/437160 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
show more ...
|
#
5b1b3ddf |
| 05-Dec-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: add connection close callback
Connection close cb is called when connection is terminated or server is shutting down.
Change-Id: Ia455bc5a72d690a4ace056c5a4141760381df678 Signed-off-by: Pa
jsonrpc: add connection close callback
Connection close cb is called when connection is terminated or server is shutting down.
Change-Id: Ia455bc5a72d690a4ace056c5a4141760381df678 Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/c/436195 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|
Revision tags: v18.10, v18.07.1 |
|
#
0f842e86 |
| 13-Aug-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: call spdk_jsonrpc_free_request only from server thread
Decrementing struct spdk_jsonrpc_server_conn::outstanding_requests should be atomic since this variable are accesed from multiple thre
jsonrpc: call spdk_jsonrpc_free_request only from server thread
Decrementing struct spdk_jsonrpc_server_conn::outstanding_requests should be atomic since this variable are accesed from multiple threads. Istead of that just route the request back to the server thread with nothing to send.
As we are here change spdk_jsonrpc_server_send_response() to take only struct spdk_jsonrpc_request parameter.
Change-Id: I9b856e7d530355cea43a29f58f4f9405e7e35fc2 Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/422124 Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com> 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: v18.07 |
|
#
01a9118d |
| 07-Jun-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: fix closed connection hadling
The spdk_jsonrpc_server_conn_remove() was just swapping last connection with that is being removed. This was fine but not for BSD queues which rely on its own
jsonrpc: fix closed connection hadling
The spdk_jsonrpc_server_conn_remove() was just swapping last connection with that is being removed. This was fine but not for BSD queues which rely on its own address.
Simple fix would be to add STAILQ_INIT and STAILQ_SWAP for queued requests but we can hit the same nasty and easy to overlook bug in future. Instead convert connection array to linked list and move around only pointers.
Fixes #322
Change-Id: Ibb359d281f6164bcd17df37ba9d31ffdb46c2e0a Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/414257 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
show more ...
|
Revision tags: v18.04.1, v18.04, v18.01.1 |
|
#
b066126b |
| 10-Apr-2018 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
jsonrpc: convert send queue to singly linked tail queue
Prepare to use RPC server before env initialization when we can't use struct spdk_ring yet.
Change-Id: I0d37fcdd7bf162d6a25baa050efa0421fdcf9
jsonrpc: convert send queue to singly linked tail queue
Prepare to use RPC server before env initialization when we can't use struct spdk_ring yet.
Change-Id: I0d37fcdd7bf162d6a25baa050efa0421fdcf9599 Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Reviewed-on: https://review.gerrithub.io/407207 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
show more ...
|
Revision tags: v18.01, v17.10.1 |
|
#
891c12a6 |
| 07-Nov-2017 |
Pawel Wodkowski <pawelx.wodkowski@intel.com> |
util: add spdk_strerror() wrapper with TLS support
This patch remove need for additional buffer when translating error code to string.
Change-Id: Iaa60088b5c450581d3cdddbb425119b17d55a44b Signed-of
util: add spdk_strerror() wrapper with TLS support
This patch remove need for additional buffer when translating error code to string.
Change-Id: Iaa60088b5c450581d3cdddbb425119b17d55a44b Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com> Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/386114 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|
Revision tags: v17.10, v17.07.1 |
|
#
ea1c1579 |
| 30-Aug-2017 |
Daniel Verkamp <daniel.verkamp@intel.com> |
log: rename SPDK_TRACE_* to SPDK_LOG_*
Disambiguate the log components from the trace functionality (include/spdk/trace.h).
The internal spdk_trace_flag structure and related functions will be rena
log: rename SPDK_TRACE_* to SPDK_LOG_*
Disambiguate the log components from the trace functionality (include/spdk/trace.h).
The internal spdk_trace_flag structure and related functions will be renamed in a later commit - this is just a find and replace on SPDK_TRACE_* and SPDK_LOG_REGISTER_TRACE_FLAG().
Change-Id: I617bd5a9fbe35ffb44ae6020b292658c094a0ad6 Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/376421 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
show more ...
|
#
161a3002 |
| 27-Nov-2017 |
Tomasz Zawadzki <tomasz.zawadzki@intel.com> |
VPP: change sockets from FIONBIO to O_NONBLOCK type
There are two ways to set stockets to nonblocking type: - ioctl with FIONBIO - fcntl with O_NONBLOCK Those two should be equivalent for sockets us
VPP: change sockets from FIONBIO to O_NONBLOCK type
There are two ways to set stockets to nonblocking type: - ioctl with FIONBIO - fcntl with O_NONBLOCK Those two should be equivalent for sockets used in SPDK.
During testing it was shown that VPP interprets only the second type, so this patch changes all occurences of it.
When here, more descriptive error logs were set in case of failure.
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: Ifa5b30e3a4fa04fe23f41fa2ae9dab4b01dd7d3c Reviewed-on: https://review.gerrithub.io/388816 Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|
#
d92f0f75 |
| 25-Aug-2017 |
Daniel Verkamp <daniel.verkamp@intel.com> |
log: rename SPDK_TRACELOG to SPDK_DEBUGLOG
This matches the name to the behavior and prepares for addition of a new log macro for "info" log level.
Change-Id: I94ccd49face4309d3368e399528776ab14074
log: rename SPDK_TRACELOG to SPDK_DEBUGLOG
This matches the name to the behavior and prepares for addition of a new log macro for "info" log level.
Change-Id: I94ccd49face4309d3368e399528776ab140748c4 Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/375833 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
show more ...
|