Add ping vnf using vhost-user & virtio-user
[openretriever.git] / src / vnf / virtio-user-ping / virtio-user.patch
1 diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c
2 index 68c55f3..1acafcc 100755
3 --- a/src/plugins/dpdk/device/init.c
4 +++ b/src/plugins/dpdk/device/init.c
5 @@ -827,6 +827,7 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input)
6    u8 huge_dir = 0;
7    u8 file_prefix = 0;
8    u8 *socket_mem = 0;
9 +  u8 *virtio_user = 0;
10  
11    conf->device_config_index_by_pci_addr = hash_create (0, sizeof (uword));
12    log_level = RTE_LOG_NOTICE;
13 @@ -852,6 +853,17 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input)
14        else if (unformat (input, "no-multi-seg"))
15         conf->no_multi_seg = 1;
16  
17 +
18 +      /* hardcode here for quick poc */
19 +      else if (unformat (input, "virtio-user %s", &virtio_user))
20 +        {
21 +           vec_add1 (conf->eal_init_args, (u8*)"-m 1024");
22 +           vec_add1 (conf->eal_init_args, (u8*)"--no-pci");
23 +           vec_add1 (conf->eal_init_args, (u8*)"--single-file");
24 +           tmp = format (0, "--vdev=virtio_user0,path=%s", virtio_user);
25 +           vec_add1 (conf->eal_init_args, (u8*)tmp);
26 +        }
27 +
28        else if (unformat (input, "dev default %U", unformat_vlib_cli_sub_input,
29                          &sub_input))
30         {
31 @@ -1168,18 +1180,6 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input)
32  
33  #undef _
34  
35 -  /* set master-lcore */
36 -  tmp = format (0, "--master-lcore%c", 0);
37 -  vec_add1 (conf->eal_init_args, tmp);
38 -  tmp = format (0, "%u%c", tm->main_lcore, 0);
39 -  vec_add1 (conf->eal_init_args, tmp);
40 -
41 -  /* set socket-mem */
42 -  tmp = format (0, "--socket-mem%c", 0);
43 -  vec_add1 (conf->eal_init_args, tmp);
44 -  tmp = format (0, "%s%c", socket_mem, 0);
45 -  vec_add1 (conf->eal_init_args, tmp);
46 -
47    /* NULL terminate the "argv" vector, in case of stupidity */
48    vec_add1 (conf->eal_init_args, 0);
49    _vec_len (conf->eal_init_args) -= 1;