hsa: make APP_OPTIONS_PREALLOC_FIFO_PAIRS configurable 43/22543/2
authorMathiasRaoul <mathias.raoul@gmail.com>
Fri, 4 Oct 2019 15:28:00 +0000 (15:28 +0000)
committerDave Wallace <dwallacelf@gmail.com>
Fri, 4 Oct 2019 18:32:42 +0000 (18:32 +0000)
-add prealloc_fifo_pairs  member in echo_main_t
-new cli parameter in vpp_echo

Type: feature

Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
Change-Id: I6bb1214ee93e06421cd0a3721420278c51cd59c4

src/plugins/hs_apps/sapi/vpp_echo.c
src/plugins/hs_apps/sapi/vpp_echo_bapi.c
src/plugins/hs_apps/sapi/vpp_echo_common.h

index 407ab3f..f0aa6a9 100644 (file)
@@ -881,6 +881,8 @@ echo_process_opts (int argc, char **argv)
        em->use_sock_api = 0;
       else if (unformat (a, "fifo-size %d", &tmp))
        em->fifo_size = tmp << 10;
+      else if (unformat (a, "prealloc-fifos %u", &em->prealloc_fifo_pairs))
+       ;
       else if (unformat (a, "rx-buf %U", unformat_data, &em->rx_buf_size))
        ;
       else if (unformat (a, "tx-buf %U", unformat_data, &em->tx_buf_size))
@@ -1004,6 +1006,7 @@ main (int argc, char **argv)
   em->socket_name = format (0, "%s%c", API_SOCKET_FILE, 0);
   em->use_sock_api = 1;
   em->fifo_size = 64 << 10;
+  em->prealloc_fifo_pairs = 16;
   em->n_clients = 1;
   em->n_connects = 1;
   em->n_sessions = 2;
index 1894b5d..1bfcb36 100644 (file)
@@ -39,7 +39,7 @@ echo_send_attach (echo_main_t * em)
   bmp->context = ntohl (0xfeedface);
   bmp->options[APP_OPTIONS_FLAGS] = APP_OPTIONS_FLAGS_ACCEPT_REDIRECT;
   bmp->options[APP_OPTIONS_FLAGS] |= APP_OPTIONS_FLAGS_ADD_SEGMENT;
-  bmp->options[APP_OPTIONS_PREALLOC_FIFO_PAIRS] = 16;
+  bmp->options[APP_OPTIONS_PREALLOC_FIFO_PAIRS] = em->prealloc_fifo_pairs;
   bmp->options[APP_OPTIONS_RX_FIFO_SIZE] = em->fifo_size;
   bmp->options[APP_OPTIONS_TX_FIFO_SIZE] = em->fifo_size;
   bmp->options[APP_OPTIONS_ADD_SEGMENT_SIZE] = 128 << 20;
index adcfd78..0e9eaeb 100644 (file)
@@ -280,6 +280,7 @@ typedef struct
   u64 bytes_to_send;           /* target per stream */
   u64 bytes_to_receive;                /* target per stream */
   u32 fifo_size;
+  u32 prealloc_fifo_pairs;
   u32 rx_buf_size;
   u32 tx_buf_size;
   data_source_t data_source;   /* Use no/dummy/mirrored data */