Lines Matching refs:dpdk
83 cfg->dpdk.proc_lcore = (uint16_t *)calloc(RTE_MAX_LCORE, sizeof(uint16_t)); in parse_lcore_mask()
84 if (cfg->dpdk.proc_lcore == NULL) { in parse_lcore_mask()
88 proc_lcore = cfg->dpdk.proc_lcore; in parse_lcore_mask()
116 if (cfg->dpdk.proc_id == count) { in parse_lcore_mask()
122 cfg->dpdk.proc_mask = strdup(buf); in parse_lcore_mask()
133 if (cfg->dpdk.proc_id >= count) in parse_lcore_mask()
136 cfg->dpdk.nb_procs = count; in parse_lcore_mask()
340 cfg->dpdk.portid_list = portid_list; in parse_port_list()
341 cfg->dpdk.nb_ports = sz; in parse_port_list()
342 cfg->dpdk.max_portid = portid_list[sz-1]; in parse_port_list()
449 if (cfg->dpdk.nb_ports == 0) { in port_cfg_handler()
454 if (cfg->dpdk.port_cfgs == NULL) { in port_cfg_handler()
462 for (i = 0; i < cfg->dpdk.nb_ports; ++i) { in port_cfg_handler()
463 uint16_t portid = cfg->dpdk.portid_list[i]; in port_cfg_handler()
467 pconf->nb_lcores = ff_global_cfg.dpdk.nb_procs; in port_cfg_handler()
468 memcpy(pconf->lcore_list, ff_global_cfg.dpdk.proc_lcore, in port_cfg_handler()
471 cfg->dpdk.port_cfgs = pc; in port_cfg_handler()
482 if (portid > cfg->dpdk.max_portid) { in port_cfg_handler()
487 struct ff_port_cfg *cur = &cfg->dpdk.port_cfgs[portid]; in port_cfg_handler()
540 if (cfg->dpdk.nb_vdev == 0) { in vdev_cfg_handler()
545 if (cfg->dpdk.vdev_cfgs == NULL) { in vdev_cfg_handler()
551 cfg->dpdk.vdev_cfgs = vc; in vdev_cfg_handler()
562 if (vdevid > cfg->dpdk.nb_vdev) { in vdev_cfg_handler()
567 struct ff_vdev_cfg *cur = &cfg->dpdk.vdev_cfgs[vdevid]; in vdev_cfg_handler()
594 if (cfg->dpdk.nb_bond == 0) { in bond_cfg_handler()
599 if (cfg->dpdk.bond_cfgs == NULL) { in bond_cfg_handler()
605 cfg->dpdk.bond_cfgs = vc; in bond_cfg_handler()
616 if (bondid > cfg->dpdk.nb_bond) { in bond_cfg_handler()
621 struct ff_bond_cfg *cur = &cfg->dpdk.bond_cfgs[bondid]; in bond_cfg_handler()
660 pconfig->dpdk.nb_channel = atoi(value); in ini_parse_handler()
662 pconfig->dpdk.memory = atoi(value); in ini_parse_handler()
664 pconfig->dpdk.no_huge = atoi(value); in ini_parse_handler()
666 pconfig->dpdk.lcore_mask = strdup(value); in ini_parse_handler()
667 return parse_lcore_mask(pconfig, pconfig->dpdk.lcore_mask); in ini_parse_handler()
669 pconfig->dpdk.base_virtaddr= strdup(value); in ini_parse_handler()
671 pconfig->dpdk.file_prefix = strdup(value); in ini_parse_handler()
673 pconfig->dpdk.pci_whitelist = strdup(value); in ini_parse_handler()
677 pconfig->dpdk.nb_vdev = atoi(value); in ini_parse_handler()
679 pconfig->dpdk.nb_bond = atoi(value); in ini_parse_handler()
681 pconfig->dpdk.promiscuous = atoi(value); in ini_parse_handler()
683 pconfig->dpdk.numa_on = atoi(value); in ini_parse_handler()
685 pconfig->dpdk.tso = atoi(value); in ini_parse_handler()
687 pconfig->dpdk.tx_csum_offoad_skip = atoi(value); in ini_parse_handler()
689 pconfig->dpdk.vlan_strip = atoi(value); in ini_parse_handler()
691 pconfig->dpdk.idle_sleep = atoi(value); in ini_parse_handler()
693 pconfig->dpdk.pkt_tx_delay = atoi(value); in ini_parse_handler()
695 pconfig->dpdk.symmetric_rss = atoi(value); in ini_parse_handler()
748 if (cfg->dpdk.no_huge) { in dpdk_args_setup()
751 if (cfg->dpdk.proc_mask) { in dpdk_args_setup()
752 sprintf(temp, "-c%s", cfg->dpdk.proc_mask); in dpdk_args_setup()
755 if (cfg->dpdk.nb_channel) { in dpdk_args_setup()
756 sprintf(temp, "-n%d", cfg->dpdk.nb_channel); in dpdk_args_setup()
759 if (cfg->dpdk.memory) { in dpdk_args_setup()
760 sprintf(temp, "-m%d", cfg->dpdk.memory); in dpdk_args_setup()
763 if (cfg->dpdk.proc_type) { in dpdk_args_setup()
764 sprintf(temp, "--proc-type=%s", cfg->dpdk.proc_type); in dpdk_args_setup()
767 if (cfg->dpdk.base_virtaddr) { in dpdk_args_setup()
768 sprintf(temp, "--base-virtaddr=%s", cfg->dpdk.base_virtaddr); in dpdk_args_setup()
771 if (cfg->dpdk.file_prefix) { in dpdk_args_setup()
772 sprintf(temp, "--file-prefix=container-%s", cfg->dpdk.file_prefix); in dpdk_args_setup()
775 if (cfg->dpdk.pci_whitelist) { in dpdk_args_setup()
777 char* rest = cfg->dpdk.pci_whitelist; in dpdk_args_setup()
786 if (cfg->dpdk.nb_vdev) { in dpdk_args_setup()
787 for (i=0; i<cfg->dpdk.nb_vdev; i++) { in dpdk_args_setup()
789 cfg->dpdk.vdev_cfgs[i].vdev_id, in dpdk_args_setup()
790 cfg->dpdk.vdev_cfgs[i].path); in dpdk_args_setup()
791 if (cfg->dpdk.vdev_cfgs[i].nb_queues) { in dpdk_args_setup()
793 cfg->dpdk.vdev_cfgs[i].nb_queues); in dpdk_args_setup()
796 if (cfg->dpdk.vdev_cfgs[i].nb_cq) { in dpdk_args_setup()
798 cfg->dpdk.vdev_cfgs[i].nb_cq); in dpdk_args_setup()
801 if (cfg->dpdk.vdev_cfgs[i].queue_size) { in dpdk_args_setup()
803 cfg->dpdk.vdev_cfgs[i].queue_size); in dpdk_args_setup()
806 if (cfg->dpdk.vdev_cfgs[i].mac) { in dpdk_args_setup()
808 cfg->dpdk.vdev_cfgs[i].mac); in dpdk_args_setup()
815 if (!cfg->dpdk.file_prefix) { in dpdk_args_setup()
821 if (cfg->dpdk.nb_bond) { in dpdk_args_setup()
822 for (i=0; i<cfg->dpdk.nb_bond; i++) { in dpdk_args_setup()
826 cfg->dpdk.bond_cfgs[i].bond_id, in dpdk_args_setup()
827 cfg->dpdk.bond_cfgs[i].mode, in dpdk_args_setup()
828 cfg->dpdk.bond_cfgs[i].slave); in dpdk_args_setup()
830 if (cfg->dpdk.bond_cfgs[i].primary) { in dpdk_args_setup()
832 cfg->dpdk.bond_cfgs[i].primary); in dpdk_args_setup()
836 if (cfg->dpdk.bond_cfgs[i].socket_id) { in dpdk_args_setup()
838 cfg->dpdk.bond_cfgs[i].socket_id); in dpdk_args_setup()
842 if (cfg->dpdk.bond_cfgs[i].bond_mac) { in dpdk_args_setup()
844 cfg->dpdk.bond_cfgs[i].bond_mac); in dpdk_args_setup()
848 if (cfg->dpdk.bond_cfgs[i].xmit_policy) { in dpdk_args_setup()
850 cfg->dpdk.bond_cfgs[i].xmit_policy); in dpdk_args_setup()
854 if (cfg->dpdk.bond_cfgs[i].lsc_poll_period_ms) { in dpdk_args_setup()
856 cfg->dpdk.bond_cfgs[i].lsc_poll_period_ms); in dpdk_args_setup()
860 if (cfg->dpdk.bond_cfgs[i].up_delay) { in dpdk_args_setup()
862 cfg->dpdk.bond_cfgs[i].up_delay); in dpdk_args_setup()
866 if (cfg->dpdk.bond_cfgs[i].down_delay) { in dpdk_args_setup()
868 cfg->dpdk.bond_cfgs[i].down_delay); in dpdk_args_setup()
895 cfg->dpdk.proc_id = atoi(optarg); in ff_parse_args()
898 cfg->dpdk.proc_type = strdup(optarg); in ff_parse_args()
905 if (cfg->dpdk.proc_type == NULL) { in ff_parse_args()
906 cfg->dpdk.proc_type = strdup("auto"); in ff_parse_args()
909 if (strcmp(cfg->dpdk.proc_type, "primary") && in ff_parse_args()
910 strcmp(cfg->dpdk.proc_type, "secondary") && in ff_parse_args()
911 strcmp(cfg->dpdk.proc_type, "auto")) { in ff_parse_args()
912 printf("invalid proc-type:%s\n", cfg->dpdk.proc_type); in ff_parse_args()
916 if ((uint16_t)cfg->dpdk.proc_id > RTE_MAX_LCORE) { in ff_parse_args()
917 printf("invalid proc_id:%d, use default 0\n", cfg->dpdk.proc_id); in ff_parse_args()
918 cfg->dpdk.proc_id = 0; in ff_parse_args()
968 for (i = 0; i < cfg->dpdk.nb_ports; i++) { in ff_check_config()
969 uint16_t portid = cfg->dpdk.portid_list[i]; in ff_check_config()
970 struct ff_port_cfg *pc = &cfg->dpdk.port_cfgs[portid]; in ff_check_config()
979 if (uint16_binary_search(cfg->dpdk.proc_lcore, 0, in ff_check_config()
980 cfg->dpdk.nb_procs-1, lcore_id) < 0) { in ff_check_config()
990 strcmp(cfg->dpdk.proc_type, "primary") == 0) { in ff_check_config()
993 uint16_t lcore_id = cfg->dpdk.proc_lcore[cfg->dpdk.proc_id]; in ff_check_config()
1018 cfg->dpdk.proc_id = -1; in ff_default_config()
1019 cfg->dpdk.numa_on = 1; in ff_default_config()
1020 cfg->dpdk.promiscuous = 1; in ff_default_config()
1021 cfg->dpdk.pkt_tx_delay = BURST_TX_DRAIN_US; in ff_default_config()