-
Notifications
You must be signed in to change notification settings - Fork 307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DAOS-6808 rpc: Fix cleanuping resources #4807
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
Test stage Functional on Leap 15 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/1/execution/node/1309/log |
Test stage Functional_Hardware_Medium completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/1/execution/node/1466/log |
842dc9a
to
e71bf04
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
e71bf04
to
5ae3c3c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
5ae3c3c
to
fb50b48
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
fb50b48
to
e43f076
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
Test stage Functional_Hardware_Small completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/5/execution/node/1391/log |
Test stage Functional_Hardware_Large completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/5/execution/node/1420/log |
Test stage Functional_Hardware_Medium completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/5/execution/node/1449/log |
Test stage Functional on CentOS 7 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/5/execution/node/1528/log |
e43f076
to
fb6cc2d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
Test stage Functional_Hardware_Medium completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/6/execution/node/1393/log |
Test stage Functional_Hardware_Small completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/6/execution/node/1421/log |
Test stage Functional_Hardware_Large completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/6/execution/node/1408/log |
Test stage Functional on CentOS 7 completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/6/execution/node/1530/log |
fb6cc2d
to
4c71cf1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
4c71cf1
to
f6da5b0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
f6da5b0
to
37b3d86
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
Test stage Scan CentOS 7 RPMs completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/9/execution/node/1152/log |
37b3d86
to
6dcc439
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this patch needs to be broken up. It covers way too many areas of expertise making it difficult for any one person to review. For example, the patch to dfs would be easily reviewed and landed on its own.
src/client/dfs/dfs.c
Outdated
@@ -2968,16 +2968,14 @@ dfs_release(dfs_obj_t *obj) | |||
break; | |||
default: | |||
D_ERROR("Invalid entry type (not a dir, file, symlink).\n"); | |||
rc = EINVAL; | |||
rc = -DER_IO_INVAL; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is wrong? we should return positive errno.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh my bad actually. we do call daos_der2errno later
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, exactly. I changed to always translate errors through daos_der2errno() at return.
Please rebase. |
Test stage Functional_Hardware_Medium completed with status FAILURE. https://build.hpdd.intel.com//job/daos-stack/job/daos/view/change-requests/job/PR-4807/22/execution/node/1326/log |
- Fix reference counting for rpc - Free memory in an error path Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
1c95c5f
to
9581d5f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. No errors found by checkpatch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
src/{container,pool,mgmt} changes look good to me.
FTEST_pool.PoolCreateTests failed because of DAOS-7016 |
D_ERROR("crt_req_send failed, rc "DF_RC"\n", DP_RC(rc)); | ||
crt_req_decref(req); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems that crt_req_send() cannot guarantee the complete_cb() will always be called for some failure cases. So we still may leak something?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to @liuxuezhao and my investigation crt_req_send() always call callback even on error path.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, crt_req_send() can ensure the completion_cb is called as long as user provided.
D_ERROR("crt_req_send failed, rc "DF_RC"\n", DP_RC(rc)); | ||
crt_req_decref(req); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, crt_req_send() can ensure the completion_cb is called as long as user provided.
CID 316292: Unintentional integer overflow CID 316293: Explicit null dereferenced CID 316294: Explicit null dereferenced CID 316295: Explicit null dereferenced CID 316297: Unused value CID 316299: Missing break in switch CID 316300: Missing break in switch Also includes updates from DAOS-6806 rpc: Fix cleanup resources (#4807) (srv_ec_aggregate.c file updates only) Signed-off-by: Sydney Vanda <sydney.m.vanda@intel.com>
…#5159) CID 316292: Unintentional integer overflow CID 316293: Explicit null dereferenced CID 316294: Explicit null dereferenced CID 316295: Explicit null dereferenced CID 316297: Unused value CID 316299: Missing break in switch CID 316300: Missing break in switch Also includes updates from DAOS-6806 rpc: Fix cleanup resources (#4807) (srv_ec_aggregate.c file updates only) Signed-off-by: Sydney Vanda <sydney.m.vanda@intel.com>
- Fix reference counting for rpc - Free memory in an error path Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
- Fix reference counting for rpc - Free memory in an error path Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
- Fix reference counting for rpc - Free memory in an error path Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
- Fix reference counting for rpc - Free memory in an error path Test-tag: pr daily_regression Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Split this patch into several small patches. This patch is for following: