Lines Matching defs:request
21 /**< request sent by primary process to notify of changes in memory map */
23 /**< request sent by primary process to notify of changes in memory map. this is
24 * essentially a regular sync request, but we cannot send sync requests while
29 /**< request sent by secondary process to ask for allocation/deallocation */
31 /**< response sent to secondary process to indicate result of request */
35 handle_sync_response(const struct rte_mp_msg *request,
38 handle_rollback_response(const struct rte_mp_msg *request,
63 struct malloc_mp_req user_req; /**< contents of request */
64 pthread_cond_t cond; /**< variable we use to time out on this request */
65 enum req_state state; /**< indicate status of this request */
70 * We could've used just a single request, but it may be possible for
71 * secondaries to timeout earlier than the primary, and send a new request while
73 * request will get assigned a new ID, which is how we will distinguish between
89 * S: send request to primary
92 * if success, send sync request
94 * if received sync request, synchronize memory map and reply with result
95 * P: if received sync request result
97 * if failure, roll back allocation and send a rollback request
99 * if received rollback request, synchronize memory map and reply with result
100 * P: if received sync request result
101 * sendmsg sync request result
106 * - if allocation and sync request succeeded
107 * - if allocation succeeded, sync request failed, allocation rolled back and
108 * rollback request received (irrespective of whether it succeeded or failed)
111 * S: send request to primary
114 * if success, send sync request
116 * if received sync request, synchronize memory map and reply with result
117 * P: if received sync request result
118 * sendmsg sync request result
159 EAL_LOG(ERR, "Unexpected request from primary");
208 /* now that we've validated the request, announce it */
261 EAL_LOG(ERR, "Couldn't allocate memory for request state");
279 * send an asynchronous request and exit this callback.
304 /* lock access to request */
310 EAL_LOG(ERR, "Duplicate request id");
316 EAL_LOG(ERR, "Unable to allocate memory for request");
328 EAL_LOG(ERR, "Unexpected request from secondary");
351 /* we did not modify the request */
361 /* we can do something, so send sync request asynchronously */
379 EAL_LOG(ERR, "Couldn't send sync request");
385 /* mark request as in progress */
400 * sendmsg with results, or trigger rollback request.
403 handle_sync_response(const struct rte_mp_msg *request,
409 (const struct malloc_mp_req *)request->param;
412 /* lock the request */
417 EAL_LOG(ERR, "Wrong request ID");
431 EAL_LOG(ERR, "Unexpected response to sync request");
436 EAL_LOG(ERR, "Response to wrong sync request");
452 /* this is a free request, just sendmsg result */
509 /* send rollback request */
527 EAL_LOG(ERR, "Could not send rollback request to secondary process");
529 /* we couldn't send rollback request, but that's OK -
539 EAL_LOG(ERR, " to sync request of unknown type");
551 handle_rollback_response(const struct rte_mp_msg *request,
557 (const struct malloc_mp_req *)request->param;
560 /* lock the request */
567 EAL_LOG(ERR, "Wrong request ID");
572 EAL_LOG(ERR, "Unexpected active request");
576 /* we don't care if rollback succeeded, request still failed */
599 /* final stage of the request from secondary */
611 /* update request status */
625 /* synchronously request memory map sync, this is only called whenever primary
646 /* sync request carries no data */
660 EAL_LOG(ERR, "Could not send sync request to secondary process");
679 EAL_LOG(ERR, "Wrong request ID");
695 * primary process. this will initiate a request and wait until responses come.
714 EAL_LOG(ERR, "Cannot allocate memory for request");
729 /* initialize the request */
739 /* copy contents of user request into the message */
747 /* copy contents of user request into active request */
750 /* mark request as in progress */