MAP: Add API support for MAP input feature.
[vpp.git] / src / vlibmemory / vlib_api.c
index 21f112b..7763a88 100644 (file)
@@ -464,7 +464,7 @@ api_rx_from_node (vlib_main_t * vm,
 
   vec_validate (long_msg, 4095);
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   while (n_left_from > 0)
     {
@@ -498,7 +498,7 @@ api_rx_from_node (vlib_main_t * vm,
     }
 
   /* Free what we've been given. */
-  vlib_buffer_free (vm, vlib_frame_args (frame), n_packets);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), n_packets);
 
   return n_packets;
 }
@@ -567,9 +567,7 @@ vl_api_send_pending_rpc_requests (vlib_main_t * vm)
 {
   vlib_main_t *vm_global = &vlib_global_main;
 
-  /* Our own RPCs are already pending */
-  if (vm == vm_global)
-    return;
+  ASSERT (vm != vm_global);
 
   clib_spinlock_lock_if_init (&vm_global->pending_rpc_lock);
   vec_append (vm_global->pending_rpc_requests, vm->pending_rpc_requests);
@@ -603,7 +601,7 @@ vl_api_rpc_call_main_thread_inline (void *fp, u8 * data, u32 data_length,
   mp = vl_msg_api_alloc_as_if_client (sizeof (*mp) + data_length);
 
   clib_memset (mp, 0, sizeof (*mp));
-  clib_memcpy (mp->data, data, data_length);
+  clib_memcpy_fast (mp->data, data, data_length);
   mp->_vl_msg_id = ntohs (VL_API_RPC_CALL);
   mp->function = pointer_to_uword (fp);
   mp->need_barrier_sync = 1;