DAOS-15829 object: fix potential DRAM leak when retry after DTX refre… #14432
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…sh (#14394)
Two possible DRAM leak when re-enter obj_local_rw_internal():
daos_iod_recx_dup() will allocate new iods to replace input one. But the input one may be former daos_iod_recx_dup() allocated.
obj_fetch_csum_init() may allocate new orw_iod_csums arrays that may overwrite former allocated ones.
Some other fixes:
a. obj_fetch_create_maps() may miss new iods wnen re-enter.
b. obj_prep_fetch_sgls() miss to handle re-enter case.
c. Drop redundant anthor restore for enumeration retry after DTX refresh.
d. Add some log message for the cases that need DTX refresh.
Before requesting gatekeeper:
Features:
(orTest-tag*
) commit pragma was used or there is a reason documented that there are no appropriate tags for this PR.Gatekeeper: