vlib: add format_vnet_buffer_no_chain
[vpp.git] / extras / deprecated / ixge / ixge.c
index 6ab79c9..481db06 100644 (file)
@@ -599,9 +599,8 @@ format_ixge_rx_dma_trace (u8 * s, va_list * va)
              format_white_space, indent,
              t->after.rx_to_hw.head_address, t->after.rx_to_hw.tail_address);
 
-  s = format (s, "\n%Ubuffer 0x%x: %U",
-             format_white_space, indent,
-             t->buffer_index, format_vnet_buffer, &t->buffer);
+  s = format (s, "\n%Ubuffer 0x%x: %U", format_white_space, indent,
+             t->buffer_index, format_vnet_buffer_no_chain, &t->buffer);
 
   s = format (s, "\n%U", format_white_space, indent);
 
@@ -883,9 +882,8 @@ format_ixge_tx_dma_trace (u8 * s, va_list * va)
              format_white_space, indent,
              format_ixge_tx_descriptor, &t->descriptor);
 
-  s = format (s, "\n%Ubuffer 0x%x: %U",
-             format_white_space, indent,
-             t->buffer_index, format_vnet_buffer, &t->buffer);
+  s = format (s, "\n%Ubuffer 0x%x: %U", format_white_space, indent,
+             t->buffer_index, format_vnet_buffer_no_chain, &t->buffer);
 
   s = format (s, "\n%U", format_white_space, indent);
 
@@ -1360,12 +1358,12 @@ ixge_rx_queue_no_wrap (ixge_main_t * xm,
   u32 n_packets = 0;
   u32 n_bytes = 0;
   u32 n_trace = vlib_get_trace_count (vm, node);
-  vlib_buffer_t *b_last, b_dummy;
+  vlib_buffer_t *b_last, b_placeholder;
 
   ASSERT (start_descriptor_index + n_descriptors <= dq->n_descriptors);
   d = &dq->descriptors[start_descriptor_index];
 
-  b_last = bi_last != ~0 ? vlib_get_buffer (vm, bi_last) : &b_dummy;
+  b_last = bi_last != ~0 ? vlib_get_buffer (vm, bi_last) : &b_placeholder;
   next_index = dq->rx.next_index;
 
   if (n_trace > 0)
@@ -1468,14 +1466,6 @@ ixge_rx_queue_no_wrap (ixge_main_t * xm,
          b0 = vlib_get_buffer (vm, bi0);
          b1 = vlib_get_buffer (vm, bi1);
 
-         /*
-          * Turn this on if you run into
-          * "bad monkey" contexts, and you want to know exactly
-          * which nodes they've visited... See main.c...
-          */
-         VLIB_BUFFER_TRACE_TRAJECTORY_INIT (b0);
-         VLIB_BUFFER_TRACE_TRAJECTORY_INIT (b1);
-
          CLIB_PREFETCH (b0->data, CLIB_CACHE_LINE_BYTES, LOAD);
          CLIB_PREFETCH (b1->data, CLIB_CACHE_LINE_BYTES, LOAD);
 
@@ -1680,13 +1670,6 @@ ixge_rx_queue_no_wrap (ixge_main_t * xm,
 
          b0 = vlib_get_buffer (vm, bi0);
 
-         /*
-          * Turn this on if you run into
-          * "bad monkey" contexts, and you want to know exactly
-          * which nodes they've visited...
-          */
-         VLIB_BUFFER_TRACE_TRAJECTORY_INIT (b0);
-
          is_eop0 = (s20 & IXGE_RX_DESCRIPTOR_STATUS2_IS_END_OF_PACKET) != 0;
          ixge_rx_next_and_error_from_status_x1
            (xd, s00, s20, &next0, &error0, &flags0);
@@ -2605,10 +2588,12 @@ ixge_flag_change (vnet_main_t * vnm, vnet_hw_interface_t * hw, u32 flags)
 
   old = r->filter_control;
 
-  if (flags & ETHERNET_INTERFACE_FLAG_ACCEPT_ALL)
+  if (flags == ETHERNET_INTERFACE_FLAG_ACCEPT_ALL)
     r->filter_control = old | (1 << 9) /* unicast promiscuous */ ;
-  else
+  else if (flags == ETHERNET_INTERFACE_FLAGS_DEFAULT_L3)
     r->filter_control = old & ~(1 << 9);
+  else
+    return ~0;
 
   return old;
 }