diff options
author | Kathleen Capella <kathleen.capella@arm.com> | 2023-09-01 18:03:27 -0400 |
---|---|---|
committer | Joao Alves <joao.alves@arm.com> | 2023-09-13 17:09:02 +0200 |
commit | 578784f0e14e19665e44a091ebbb2a448d9be80a (patch) | |
tree | b09855dc8dea01b496eec1e112cec446aa165ad0 | |
parent | b882db984846616c1b061e6a0ededa4b0a4049f8 (diff) |
fix(memory share): handle error before assert
If api_ffa_mem_retrieve_req_version_update returns FFA_ERROR,
handle error gracefully instead of failing assert and panicking.
Signed-off-by: Kathleen Capella <kathleen.capella@arm.com>
Change-Id: I642414d85bf6081bd4b524b4f8d844ca153552e7
-rw-r--r-- | src/api.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -3435,12 +3435,13 @@ struct ffa_value api_ffa_mem_retrieve_req(uint32_t length, ret = api_ffa_mem_retrieve_req_version_update( retrieve_msg, message_buffer_size, &retrieve_request, &length, ffa_version); - assert(retrieve_request != NULL); if (ret.func != FFA_SUCCESS_32) { goto out; } + assert(retrieve_request != NULL); + if (plat_ffa_memory_handle_allocated_by_current_world( retrieve_request->handle)) { ret = ffa_memory_retrieve(to_locked, retrieve_request, length, |