vlib rename vlib_frame_args(...) to vlib_frame_scalar_args(..) 97/15897/2
authorDamjan Marion <dmarion@me.com>
Sat, 10 Nov 2018 09:23:00 +0000 (10:23 +0100)
committerDave Barach <openvpp@barachs.net>
Tue, 13 Nov 2018 12:17:49 +0000 (12:17 +0000)
Typically we have scalar_size == 0, so it doesn't matter
but vlib_frame_args was providing pointer to scalar frame
data, not vector data. To avoid future confusion function
is renamed to vlib_frame_scalar_args(...)

Change-Id: I48b75523b46d487feea24f3f3cb10c528dde516f
Signed-off-by: Damjan Marion <damarion@cisco.com>
25 files changed:
docs/gettingstarted/developers/vnet.md
src/examples/vlib/main_stub.c
src/plugins/avf/output.c
src/plugins/marvell/pp2/output.c
src/plugins/memif/device.c
src/plugins/vmxnet3/output.c
src/vlib/error.c
src/vlib/main.c
src/vlib/node.c
src/vlib/node_funcs.h
src/vlibmemory/vlib_api.c
src/vnet/bonding/device.c
src/vnet/devices/af_packet/device.c
src/vnet/devices/netmap/device.c
src/vnet/devices/pipe/pipe.c
src/vnet/devices/virtio/device.c
src/vnet/devices/virtio/vhost_user_output.c
src/vnet/ethernet/interface.c
src/vnet/interface_output.c
src/vnet/ip/punt.c
src/vnet/pg/output.c
src/vnet/pipeline.h
src/vnet/srp/interface.c
src/vnet/unix/tapcli.c
src/vnet/unix/tuntap.c

index cd9e22f..60362f4 100644 (file)
@@ -52,7 +52,7 @@ units to convert buffer indices to buffer pointers:
      u16 nexts[VLIB_FRAME_SIZE], *next;
 
      n_left_from = frame->n_vectors;
-     from = vlib_frame_args (frame);
+     from = vlib_frame_vector_args (frame);
 
      /* 
       * Convert up to VLIB_FRAME_SIZE indices in "from" to 
index 3b19c53..c5c19aa 100644 (file)
@@ -50,7 +50,7 @@ static u8 *
 format_my_node_frame (u8 * s, va_list * va)
 {
   vlib_frame_t *f = va_arg (*va, vlib_frame_t *);
-  my_frame_t *g = vlib_frame_args (f);
+  my_frame_t *g = vlib_frame_scalar_args (f);
   int i;
 
   s = format (s, "scalar %d, vector { ", g->scalar);
@@ -82,7 +82,7 @@ my_func (vlib_main_t * vm, vlib_node_runtime_t * rt, vlib_frame_t * f)
     {
       vlib_frame_t *next = vlib_get_next_frame (vm, rt, /* next index */ 0);
       n_left = VLIB_FRAME_SIZE - next->n_vectors;
-      y = vlib_frame_args (next);
+      y = vlib_frame_scalar_args (next);
       y->scalar = serial++;
     }
   else
index 72892d1..e4b4228 100644 (file)
@@ -45,7 +45,7 @@ VNET_DEVICE_CLASS_TX_FN (avf_device_class) (vlib_main_t * vm,
   u8 qid = thread_index;
   avf_txq_t *txq = vec_elt_at_index (ad->txqs, qid % ad->num_queue_pairs);
   avf_tx_desc_t *d0, *d1, *d2, *d3;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 bi0, bi1, bi2, bi3;
   u16 n_left, n_left_to_send, n_in_batch;
   vlib_buffer_t *b0, *b1, *b2, *b3;
index 468440c..18969a4 100644 (file)
@@ -39,7 +39,7 @@ mrvl_pp2_interface_tx (vlib_main_t * vm,
     vec_elt_at_index (ppm->per_thread_data, thread_index);
   u8 qid = thread_index;
   mrvl_pp2_outq_t *outq = vec_elt_at_index (ppif->outqs, qid);
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u16 n_desc = frame->n_vectors, n_left = n_desc, n_sent = n_desc, n_done;
   struct pp2_ppio_desc *d;
   u16 mask = outq->size - 1;
@@ -87,7 +87,7 @@ mrvl_pp2_interface_tx (vlib_main_t * vm,
   /* free unsent buffers */
   if (PREDICT_FALSE (n_sent != n_desc))
     {
-      vlib_buffer_free (vm, vlib_frame_args (frame) + n_sent,
+      vlib_buffer_free (vm, vlib_frame_vector_args (frame) + n_sent,
                        frame->n_vectors - n_sent);
       vlib_error_count (vm, node->node_index, MRVL_PP2_TX_ERROR_NO_FREE_SLOTS,
                        frame->n_vectors - n_sent);
@@ -98,7 +98,7 @@ mrvl_pp2_interface_tx (vlib_main_t * vm,
   if (n_sent)
     {
       u16 slot = outq->head & mask;
-      buffers = vlib_frame_args (frame);
+      buffers = vlib_frame_vector_args (frame);
       u16 n_copy = clib_min (outq->size - slot, n_sent);
 
       clib_memcpy (outq->buffers + slot, buffers, n_copy * sizeof (u32));
index a05ab87..9e4cd69 100644 (file)
@@ -103,7 +103,7 @@ memif_interface_tx_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
                           memif_per_thread_data_t * ptd)
 {
   memif_ring_t *ring;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 n_left = frame->n_vectors;
   u32 n_copy_op;
   u16 ring_size, mask, slot, free_slots;
@@ -287,7 +287,7 @@ no_free_slots:
       mq->int_count++;
     }
 
-  vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
 
   return frame->n_vectors;
 }
@@ -299,7 +299,7 @@ memif_interface_tx_zc_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
                              memif_per_thread_data_t * ptd)
 {
   memif_ring_t *ring = mq->ring;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 n_left = frame->n_vectors;
   u16 slot, free_slots, n_free;
   u16 ring_size = 1 << mq->log2_ring_size;
index 2886c31..2a6418d 100644 (file)
@@ -100,7 +100,7 @@ VNET_DEVICE_CLASS_TX_FN (vmxnet3_device_class) (vlib_main_t * vm,
   vmxnet3_main_t *vmxm = &vmxnet3_main;
   vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
   vmxnet3_device_t *vd = pool_elt_at_index (vmxm->devices, rd->dev_instance);
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 bi0;
   vlib_buffer_t *b0;
   vmxnet3_tx_desc *txd = 0;
index e6e4f2d..691e639 100644 (file)
@@ -114,7 +114,7 @@ static uword
 misc_drop_buffers (vlib_main_t * vm,
                   vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
-  return vlib_error_drop_buffers (vm, node, vlib_frame_args (frame),
+  return vlib_error_drop_buffers (vm, node, vlib_frame_vector_args (frame),
                                  /* buffer stride */ 1,
                                  frame->n_vectors,
                                  /* next */ 0,
index 1b9eb39..b46caf1 100644 (file)
@@ -157,6 +157,7 @@ vlib_frame_alloc_to_node (vlib_main_t * vm, u32 to_node_index,
   f->n_vectors = 0;
   f->scalar_size = scalar_size;
   f->vector_size = vector_size;
+  f->flags = 0;
 
   fs->n_alloc_frames += 1;
 
index c87400d..88185ce 100644 (file)
@@ -529,7 +529,7 @@ null_node_fn (vlib_main_t * vm,
   u16 n_vectors = frame->n_vectors;
 
   vlib_node_increment_counter (vm, node->node_index, 0, n_vectors);
-  vlib_buffer_free (vm, vlib_frame_args (frame), n_vectors);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), n_vectors);
   vlib_frame_free (vm, node, frame);
 
   return n_vectors;
index 3304d0f..13614aa 100644 (file)
@@ -271,9 +271,6 @@ vlib_frame_vector_args (vlib_frame_t * f)
 
 /** \brief Get pointer to frame scalar data.
 
- @warning This is almost certainly not the function you wish to call.
- See @ref vlib_frame_vector_args instead.
-
  @param f vlib_frame_t pointer
 
  @return arbitrary node scalar data
@@ -281,7 +278,7 @@ vlib_frame_vector_args (vlib_frame_t * f)
  @sa vlib_frame_vector_args
 */
 always_inline void *
-vlib_frame_args (vlib_frame_t * f)
+vlib_frame_scalar_args (vlib_frame_t * f)
 {
   return vlib_frame_vector_args (f) - f->scalar_size;
 }
index 16e6402..6f0cdf9 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;
 }
index 13ff644..e7d6cda 100644 (file)
@@ -658,7 +658,7 @@ VNET_DEVICE_CLASS_TX_FN (bond_dev_class) (vlib_main_t * vm,
 
   if (PREDICT_FALSE (bif->admin_up == 0))
     {
-      vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+      vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
       vlib_increment_simple_counter (vnet_main.interface_main.sw_if_counters +
                                     VNET_INTERFACE_COUNTER_DROP,
                                     thread_index, bif->sw_if_index,
@@ -671,7 +671,7 @@ VNET_DEVICE_CLASS_TX_FN (bond_dev_class) (vlib_main_t * vm,
   n_slaves = vec_len (bif->active_slaves);
   if (PREDICT_FALSE (n_slaves == 0))
     {
-      vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+      vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
       vlib_increment_simple_counter (vnet_main.interface_main.sw_if_counters +
                                     VNET_INTERFACE_COUNTER_DROP,
                                     thread_index, bif->sw_if_index,
index b8c7501..811642e 100644 (file)
@@ -81,7 +81,7 @@ af_packet_interface_tx (vlib_main_t * vm,
                        vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
   af_packet_main_t *apm = &af_packet_main;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 n_left = frame->n_vectors;
   u32 n_sent = 0;
   vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
@@ -168,7 +168,7 @@ af_packet_interface_tx (vlib_main_t * vm,
     vlib_error_count (vm, node->node_index, AF_PACKET_TX_ERROR_TXRING_OVERRUN,
                      n_left);
 
-  vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
   return frame->n_vectors;
 }
 
index e39888f..409a52f 100644 (file)
@@ -98,7 +98,7 @@ netmap_interface_tx (vlib_main_t * vm,
                     vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
   netmap_main_t *nm = &netmap_main;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 n_left = frame->n_vectors;
   f64 const time_constant = 1e3;
   vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
@@ -169,7 +169,7 @@ netmap_interface_tx (vlib_main_t * vm,
                       frame->n_vectors ? NETMAP_TX_ERROR_PENDING_MSGS :
                       NETMAP_TX_ERROR_NO_FREE_SLOTS), n_left);
 
-  vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
   return frame->n_vectors;
 }
 
index 8b30f47..f45c088 100644 (file)
@@ -140,7 +140,7 @@ pipe_tx (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
   pipe_t *pipe;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   while (n_left_from > 0)
     {
index 69aca65..2b2c853 100644 (file)
@@ -180,7 +180,7 @@ virtio_interface_tx_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
   u16 used, next, avail;
   u16 sz = vring->size;
   u16 mask = sz - 1;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
 
   clib_spinlock_lock_if_init (&vif->lockp);
 
index 9b6c017..dff129e 100644 (file)
@@ -230,7 +230,7 @@ VNET_DEVICE_CLASS_TX_FN (vhost_user_device_class) (vlib_main_t * vm,
                                                   vlib_node_runtime_t *
                                                   node, vlib_frame_t * frame)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   u32 n_left = frame->n_vectors;
   vhost_user_main_t *vum = &vhost_user_main;
   vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
@@ -555,7 +555,7 @@ done3:
         thread_index, vui->sw_if_index, n_left);
     }
 
-  vlib_buffer_free (vm, vlib_frame_args (frame), frame->n_vectors);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), frame->n_vectors);
   return frame->n_vectors;
 }
 
index 2cb137c..c66fa82 100644 (file)
@@ -405,7 +405,7 @@ simulated_ethernet_interface_tx (vlib_main_t * vm,
   u32 new_tx_sw_if_index = ~0;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   vlib_get_buffers (vm, from, bufs, n_left_from);
   b = bufs;
index f858564..be4ab7d 100644 (file)
@@ -99,7 +99,7 @@ vnet_interface_output_trace (vlib_main_t * vm,
   u32 n_left, *from;
 
   n_left = n_buffers;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   while (n_left >= 4)
     {
@@ -222,7 +222,7 @@ vnet_interface_output_node_inline (vlib_main_t * vm,
   if (node->flags & VLIB_NODE_FLAG_TRACE)
     vnet_interface_output_trace (vm, node, frame, n_buffers);
 
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   if (rt->is_deleted)
     return vlib_error_drop_buffers (vm, node, from,
@@ -475,7 +475,7 @@ vnet_per_buffer_interface_output (vlib_main_t * vm,
 
   n_left_from = frame->n_vectors;
 
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   next_index = node->cached_next_index;
 
   while (n_left_from > 0)
@@ -669,7 +669,7 @@ static u8 *
 validate_error_frame (vlib_main_t * vm,
                      vlib_node_runtime_t * node, vlib_frame_t * f)
 {
-  u32 *buffers = vlib_frame_args (f);
+  u32 *buffers = vlib_frame_vector_args (f);
   vlib_buffer_t *b;
   u8 *msg = 0;
   uword i;
@@ -719,7 +719,7 @@ process_drop_punt (vlib_main_t * vm,
   static vlib_error_t memory[VNET_ERROR_N_DISPOSITION];
   static char memory_init[VNET_ERROR_N_DISPOSITION];
 
-  buffers = vlib_frame_args (frame);
+  buffers = vlib_frame_vector_args (frame);
   first_buffer = buffers;
 
   {
index 538a1ac..a6d6c08 100644 (file)
@@ -312,7 +312,7 @@ udp46_punt_socket_inline (vlib_main_t * vm,
                          vlib_node_runtime_t * node,
                          vlib_frame_t * frame, bool is_ip4)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_packets = frame->n_vectors;
   struct iovec *iovecs = 0;
   punt_main_t *pm = &punt_main;
index 016e5b3..410a433 100644 (file)
@@ -47,7 +47,7 @@ uword
 pg_output (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
   pg_main_t *pg = &pg_main;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_buffers = frame->n_vectors;
   uword n_left = n_buffers;
   vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
@@ -80,7 +80,7 @@ pg_output (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
     pcap_write (&pif->pcap_main);
 
 
-  vlib_buffer_free (vm, vlib_frame_args (frame), n_buffers);
+  vlib_buffer_free (vm, vlib_frame_vector_args (frame), n_buffers);
   if (PREDICT_FALSE (pif->lockp != 0))
     clib_atomic_release (pif->lockp);
 
index ec2ac0b..2ac1a9a 100644 (file)
@@ -92,7 +92,7 @@ dispatch_pipeline (vlib_main_t * vm,
   AUX_DATA_DECL;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   vlib_get_buffers (vm, from, bufs, n_left_from);
 
   for (pi = 0; pi < NSTAGES - 1; pi++)
@@ -134,7 +134,7 @@ dispatch_pipeline (vlib_main_t * vm,
   AUX_DATA_DECL;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   vlib_get_buffers (vm, from, bufs, n_left_from);
 
   for (pi = 0; pi < NSTAGES - 1; pi++)
@@ -181,7 +181,7 @@ dispatch_pipeline (vlib_main_t * vm,
   AUX_DATA_DECL;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   vlib_get_buffers (vm, from, bufs, n_left_from);
 
   for (pi = 0; pi < NSTAGES - 1; pi++)
@@ -233,7 +233,7 @@ dispatch_pipeline (vlib_main_t * vm,
   AUX_DATA_DECL;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   vlib_get_buffers (vm, from, bufs, n_left_from);
 
   for (pi = 0; pi < NSTAGES - 1; pi++)
@@ -290,7 +290,7 @@ dispatch_pipeline (vlib_main_t * vm,
   AUX_DATA_DECL;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
   vlib_get_buffers (vm, from, bufs, n_left_from);
 
   for (pi = 0; pi < NSTAGES - 1; pi++)
index b418ec2..28e5199 100644 (file)
@@ -281,7 +281,7 @@ simulated_srp_interface_tx (vlib_main_t * vm,
   vlib_buffer_t * b;
 
   n_left_from = frame->n_vectors;
-  from = vlib_frame_args (frame);
+  from = vlib_frame_vector_args (frame);
 
   while (n_left_from > 0)
     {
index 765e857..83ac33f 100644 (file)
@@ -170,7 +170,7 @@ static tapcli_main_t tapcli_main;
 static uword
 tapcli_tx (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_packets = frame->n_vectors;
   tapcli_main_t *tm = &tapcli_main;
   tapcli_interface_t *ti;
@@ -603,7 +603,7 @@ static void
 tapcli_nopunt_frame (vlib_main_t * vm,
                     vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_packets = frame->n_vectors;
   vlib_buffer_free (vm, buffers, n_packets);
   vlib_frame_free (vm, node, frame);
index 5f22592..d663d96 100644 (file)
@@ -146,7 +146,7 @@ static tuntap_main_t tuntap_main = {
 static uword
 tuntap_tx (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_packets = frame->n_vectors;
   tuntap_main_t *tm = &tuntap_main;
   vnet_main_t *vnm = vnet_get_main ();
@@ -934,7 +934,7 @@ static void
 tuntap_nopunt_frame (vlib_main_t * vm,
                     vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_packets = frame->n_vectors;
   vlib_buffer_free (vm, buffers, n_packets);
   vlib_frame_free (vm, node, frame);
@@ -980,7 +980,7 @@ tuntap_intfc_tx (vlib_main_t * vm,
                 vlib_node_runtime_t * node, vlib_frame_t * frame)
 {
   tuntap_main_t *tm = &tuntap_main;
-  u32 *buffers = vlib_frame_args (frame);
+  u32 *buffers = vlib_frame_vector_args (frame);
   uword n_buffers = frame->n_vectors;
 
   /* Normal interface transmit happens only on the normal interface... */