| /f-stack/dpdk/lib/librte_kni/ |
| H A D | rte_kni.c | 137 kni = NULL; in __rte_kni_get() 139 return kni; in __rte_kni_get() 277 kni->tx_q = kni->m_tx_q->addr; in rte_kni_alloc() 282 kni->rx_q = kni->m_rx_q->addr; in rte_kni_alloc() 287 kni->alloc_q = kni->m_alloc_q->addr; in rte_kni_alloc() 292 kni->free_q = kni->m_free_q->addr; in rte_kni_alloc() 297 kni->req_q = kni->m_req_q->addr; in rte_kni_alloc() 302 kni->resp_q = kni->m_resp_q->addr; in rte_kni_alloc() 307 kni->sync_addr = kni->m_sync_addr->addr; in rte_kni_alloc() 411 if (!kni) in rte_kni_release() [all …]
|
| H A D | rte_kni.h | 137 int rte_kni_release(struct rte_kni *kni); 151 int rte_kni_handle_request(struct rte_kni *kni); 169 unsigned rte_kni_rx_burst(struct rte_kni *kni, struct rte_mbuf **mbufs, 188 unsigned rte_kni_tx_burst(struct rte_kni *kni, struct rte_mbuf **mbufs, 211 const char *rte_kni_get_name(const struct rte_kni *kni); 226 int rte_kni_register_handlers(struct rte_kni *kni, struct rte_kni_ops *ops); 238 int rte_kni_unregister_handlers(struct rte_kni *kni); 259 rte_kni_update_link(struct rte_kni *kni, unsigned int linkup);
|
| /f-stack/dpdk/kernel/linux/kni/ |
| H A D | kni_net.c | 217 kva = get_kva(kni, kni->pa[i]); in kni_fifo_trans_pa2va() 218 kni->va[i] = pa2va(kni->pa[i], kva); in kni_fifo_trans_pa2va() 245 kni_fifo_trans_pa2va(kni, kni->rx_q, kni->free_q); in kni_net_release_fifo_phy() 247 kni_fifo_trans_pa2va(kni, kni->alloc_q, kni->free_q); in kni_net_release_fifo_phy() 377 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_normal() 380 kni->va[i] = pa2va(kni->pa[i], kva); in kni_net_rx_normal() 466 ret = kni_fifo_get(kni->rx_q, kni->pa, num); in kni_net_rx_lo_fifo() 476 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_lo_fifo() 479 kni->va[i] = pa2va(kni->pa[i], kva); in kni_net_rx_lo_fifo() 556 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_lo_fifo_skb() [all …]
|
| H A D | kni_misc.c | 236 if (!kni || !dev) in kni_check_param() 257 (void *)kni, "kni_%s", kni->name); in kni_run_thread() 259 kni_dev_remove(kni); in kni_run_thread() 264 kthread_bind(kni->pthread, kni->core_id); in kni_run_thread() 274 kni_dev_remove(kni); in kni_run_thread() 346 kni->net_dev = net_dev; in kni_ioctl_create() 362 kni->usr_tsk = current; in kni_ioctl_create() 363 kni->iova_mode = 1; in kni_ioctl_create() 379 kni->iova_mode = 0; in kni_ioctl_create() 424 kni->net_dev = NULL; in kni_ioctl_create() [all …]
|
| H A D | kni_dev.h | 126 void kni_net_release_fifo_phy(struct kni_dev *kni); 127 void kni_net_rx(struct kni_dev *kni); 130 void kni_net_poll_resp(struct kni_dev *kni);
|
| /f-stack/dpdk/examples/ip_pipeline/ |
| H A D | kni.c | 34 struct kni * 37 struct kni *kni; in kni_find() local 44 return kni; in kni_find() 51 struct kni * 100 struct kni * 106 struct kni *kni; in kni_create() local 155 kni = calloc(1, sizeof(struct kni)); in kni_create() 160 strlcpy(kni->name, name, sizeof(kni->name)); in kni_create() 161 kni->k = k; in kni_create() 166 return kni; in kni_create() [all …]
|
| H A D | kni.h | 17 struct kni { struct 18 TAILQ_ENTRY(kni) node; 25 TAILQ_HEAD(kni_list, kni); argument 30 struct kni * 40 struct kni *
|
| H A D | pipeline.c | 270 struct kni *kni; in pipeline_port_in_create() local 272 kni = kni_find(params->dev_name); in pipeline_port_in_create() 273 if (kni == NULL) in pipeline_port_in_create() 276 pp.kni.kni = kni->k; in pipeline_port_in_create() 279 p.arg_create = &pp.kni; in pipeline_port_in_create() 543 struct kni *kni; in pipeline_port_out_create() local 546 if (kni == NULL) in pipeline_port_out_create() 549 pp.kni.kni = kni->k; in pipeline_port_out_create() 552 pp_nodrop.kni.kni = kni->k; in pipeline_port_out_create() 558 p.arg_create = &pp.kni; in pipeline_port_out_create() [all …]
|
| H A D | meson.build | 20 'kni.c',
|
| /f-stack/dpdk/app/test/ |
| H A D | test_kni.c | 320 if (!kni) { in test_kni_register_handler_mp() 425 struct rte_kni *kni; in test_kni_processing() local 466 if (!kni) { in test_kni_processing() 471 test_kni_ctx = kni; in test_kni_processing() 517 if (!kni) { in test_kni_processing() 659 if (kni) { in test_kni() 668 if (kni) { in test_kni() 703 if (kni) { in test_kni() 728 if (kni) { in test_kni() 738 if (kni) { in test_kni() [all …]
|
| /f-stack/dpdk/lib/librte_port/ |
| H A D | rte_port_kni.c | 33 struct rte_kni *kni; member 58 port->kni = conf->kni; in rte_port_kni_reader_create() 70 rx_pkt_cnt = rte_kni_rx_burst(p->kni, pkts, n_pkts); in rte_port_kni_reader_rx() 127 struct rte_kni *kni; member 155 port->kni = conf->kni; in rte_port_kni_writer_create() 168 nb_tx = rte_kni_tx_burst(p->kni, p->tx_buf, p->tx_buf_count); in send_burst() 211 n_pkts_ok = rte_kni_tx_burst(p->kni, pkts, n_pkts); in rte_port_kni_writer_tx_bulk() 304 struct rte_kni *kni; member 332 port->kni = conf->kni; in rte_port_kni_writer_nodrop_create() 361 nb_tx += rte_kni_tx_burst(p->kni, in send_burst_nodrop() [all …]
|
| H A D | rte_port_kni.h | 31 struct rte_kni *kni; member 41 struct rte_kni *kni; member 52 struct rte_kni *kni; member
|
| /f-stack/dpdk/drivers/net/kni/ |
| H A D | rte_eth_kni.c | 49 struct rte_kni *kni; member 71 RTE_LOG_REGISTER(eth_kni_logtype, pmd.net.kni, NOTICE); 80 struct rte_kni *kni = kni_q->internals->kni; in eth_kni_rx() local 84 nb_pkts = rte_kni_rx_burst(kni, bufs, nb_bufs); in eth_kni_rx() 97 struct rte_kni *kni = kni_q->internals->kni; in eth_kni_tx() local 100 nb_pkts = rte_kni_tx_burst(kni, bufs, nb_bufs); in eth_kni_tx() 114 rte_kni_handle_request(internals->kni); in kni_handle_request() 138 internals->kni = rte_kni_alloc(mb_pool, &conf, NULL); in eth_kni_start() 139 if (internals->kni == NULL) { in eth_kni_start() 219 ret = rte_kni_release(internals->kni); in eth_kni_close()
|
| H A D | meson.build | 8 deps += 'kni'
|
| /f-stack/dpdk/examples/ip_pipeline/examples/ |
| H A D | kni.cli | 37 kni KNI0 link LINK0 mempool MEMPOOL0 38 kni KNI1 link LINK1 mempool MEMPOOL0 45 pipeline PIPELINE0 port in bsz 32 kni KNI1 47 pipeline PIPELINE0 port in bsz 32 kni KNI0 49 pipeline PIPELINE0 port out bsz 32 kni KNI0 51 pipeline PIPELINE0 port out bsz 32 kni KNI1
|
| /f-stack/dpdk/doc/guides/sample_app_ug/ |
| H A D | kernel_nic_interface.rst | 42 The Kernel NIC Interface sample application ``kni`` allocates one or more 86 The application is located in the ``examples/kni`` sub-directory. 92 Running the kni Example Application 95 The ``kni`` example application requires a number of command line options: 161 :ref:`multiple kernel thread <kni_kernel_thread_mode>` mode. The ``kni`` 171 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko kthread_mode=multiple 175 core is specified per physical port. In this case, ``kni`` will create 204 disabled by **not** specifying the ``-m`` flag to ``kni``: 215 Once the ``kni`` application is started, the user can use the normal 237 # pkill -USR1 kni [all …]
|
| /f-stack/dpdk/examples/kni/ |
| H A D | main.c | 236 rte_kni_handle_request(p->kni[i]); in kni_ingress() 718 if (kni == NULL || link == NULL) in log_link_state() 724 rte_kni_get_name(kni), in log_link_state() 757 prev = rte_kni_update_link(p[portid]->kni[i], in monitor_all_ports_link_status() 944 struct rte_kni *kni; in kni_alloc() local 1002 kni = rte_kni_alloc(pktmbuf_pool, &conf, &ops); in kni_alloc() 1004 kni = rte_kni_alloc(pktmbuf_pool, &conf, NULL); in kni_alloc() 1006 if (!kni) in kni_alloc() 1009 params[port_id]->kni[i] = kni; in kni_alloc() 1026 if (rte_kni_release(p[port_id]->kni[i])) in kni_free_kni() [all …]
|
| H A D | meson.build | 15 deps += ['kni', 'bus_pci']
|
| /f-stack/lib/ |
| H A D | ff_config.c | 697 pconfig->kni.enable= atoi(value); in ini_parse_handler() 699 pconfig->kni.kni_action= strdup(value); in ini_parse_handler() 701 pconfig->kni.method= strdup(value); in ini_parse_handler() 703 pconfig->kni.tcp_port = strdup(value); in ini_parse_handler() 705 pconfig->kni.udp_port= strdup(value); in ini_parse_handler() 927 if(cfg->kni.enable && !cfg->kni.method) { in ff_check_config() 932 if(cfg->kni.method) { in ff_check_config() 936 cfg->kni.method); in ff_check_config() 941 if(cfg->kni.kni_action) { in ff_check_config() 946 cfg->kni.kni_action); in ff_check_config() [all …]
|
| H A D | ff_dpdk_kni.c | 66 struct rte_kni *kni; member 212 nb_kni_tx = rte_kni_tx_burst(kni_stat[port_id]->kni, pkts_burst, nb_tx); in kni_process_tx() 213 rte_kni_handle_request(kni_stat[port_id]->kni); in kni_process_tx() 233 nb_kni_rx = rte_kni_rx_burst(kni_stat[port_id]->kni, pkts_burst, count); in kni_process_rx() 521 kni_stat[port_id]->kni = rte_kni_alloc(mbuf_pool, &conf, &ops); in ff_kni_alloc() 522 if (kni_stat[port_id]->kni == NULL) in ff_kni_alloc()
|
| /f-stack/doc/ |
| H A D | Launch_F-Stack_on_AWS_EC2_in_one_minute.md | 29 insmod build/kernel/linux/kni/rte_kni.ko carrier=on 50 # enable kni 51 sed "s/#\[kni\]/\[kni\]/" -i /data/f-stack/config.ini 90 # start kni
|
| /f-stack/dpdk/doc/guides/nics/ |
| H A D | virtio.rst | 13 The DPDK extends kni to support vhost raw socket interface, 21 standard qemu vhost back end and vhost kni back end. 86 Virtio with kni vhost Back End 95 Host2VM Communication Example Using kni vhost Back End 100 #. Load the kni kernel module: 109 #. Launch the kni user application: 118 For each physical port, kni creates two user threads. 120 The other user thread loops to send packets in the kni transmit queue. 122 …For each physical port, kni also creates a kernel thread that retrieves packets from the kni recei… 125 For more details about kni, please refer to :ref:`kni`. [all …]
|
| H A D | kni.rst | 7 KNI PMD is wrapper to the :ref:`librte_kni <kni>` library. 16 will create ``kni#`` Linux virtual network interface. 56 Interface name: kni# 100 insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo_skb
|
| H A D | index.rst | 40 kni
|
| /f-stack/dpdk/doc/guides/prog_guide/ |
| H A D | kernel_nic_interface.rst | 35 When the ``rte_kni`` module is loaded, it will create a device ``/dev/kni`` 68 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko 80 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo 87 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo_skb 108 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko kthread_mode=single 125 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko kthread_mode=multiple 166 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko carrier=on 172 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko carrier=off 257 deleted when the ``/dev/kni`` device is closed, either explicitly with 321 The current version of kni provides minimal ethtool functionality
|