| /dpdk/lib/kni/ |
| H A D | rte_kni.c | 135 kni = NULL; in __rte_kni_get() 137 return kni; in __rte_kni_get() 275 kni->tx_q = kni->m_tx_q->addr; in rte_kni_alloc() 280 kni->rx_q = kni->m_rx_q->addr; in rte_kni_alloc() 285 kni->alloc_q = kni->m_alloc_q->addr; in rte_kni_alloc() 290 kni->free_q = kni->m_free_q->addr; in rte_kni_alloc() 295 kni->req_q = kni->m_req_q->addr; in rte_kni_alloc() 300 kni->resp_q = kni->m_resp_q->addr; in rte_kni_alloc() 305 kni->sync_addr = kni->m_sync_addr->addr; in rte_kni_alloc() 409 if (!kni) in rte_kni_release() [all …]
|
| H A D | rte_kni.h | 135 int rte_kni_release(struct rte_kni *kni); 149 int rte_kni_handle_request(struct rte_kni *kni); 167 unsigned rte_kni_rx_burst(struct rte_kni *kni, struct rte_mbuf **mbufs, 186 unsigned rte_kni_tx_burst(struct rte_kni *kni, struct rte_mbuf **mbufs, 209 const char *rte_kni_get_name(const struct rte_kni *kni); 224 int rte_kni_register_handlers(struct rte_kni *kni, struct rte_kni_ops *ops); 236 int rte_kni_unregister_handlers(struct rte_kni *kni); 257 rte_kni_update_link(struct rte_kni *kni, unsigned int linkup);
|
| /dpdk/kernel/linux/kni/ |
| H A D | kni_net.c | 247 kva = get_kva(kni, kni->pa[i]); in kni_fifo_trans_pa2va() 248 kni->va[i] = pa2va(kni->pa[i], kva); in kni_fifo_trans_pa2va() 275 kni_fifo_trans_pa2va(kni, kni->rx_q, kni->free_q); in kni_net_release_fifo_phy() 277 kni_fifo_trans_pa2va(kni, kni->alloc_q, kni->free_q); in kni_net_release_fifo_phy() 407 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_normal() 410 kni->va[i] = pa2va(kni->pa[i], kva); in kni_net_rx_normal() 496 ret = kni_fifo_get(kni->rx_q, kni->pa, num); in kni_net_rx_lo_fifo() 506 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_lo_fifo() 509 kni->va[i] = pa2va(kni->pa[i], kva); in kni_net_rx_lo_fifo() 586 kva = get_kva(kni, kni->pa[i]); in kni_net_rx_lo_fifo_skb() [all …]
|
| H A D | kni_misc.c | 242 if (!kni || !dev) in kni_check_param() 263 (void *)kni, "kni_%s", kni->name); in kni_run_thread() 265 kni_dev_remove(kni); in kni_run_thread() 270 kthread_bind(kni->pthread, kni->core_id); in kni_run_thread() 280 kni_dev_remove(kni); in kni_run_thread() 352 kni->net_dev = net_dev; in kni_ioctl_create() 368 kni->usr_tsk = current; in kni_ioctl_create() 369 kni->iova_mode = 1; in kni_ioctl_create() 385 kni->iova_mode = 0; in kni_ioctl_create() 427 kni->net_dev = NULL; in kni_ioctl_create() [all …]
|
| H A D | kni_dev.h | 129 void kni_net_release_fifo_phy(struct kni_dev *kni); 130 void kni_net_rx(struct kni_dev *kni); 133 void kni_net_poll_resp(struct kni_dev *kni);
|
| H A D | meson.build | 34 ' -I' + dpdk_source_root + '/lib/kni' +
|
| /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 | 21 'kni.c',
|
| /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() 663 if (kni) { in test_kni() 672 if (kni) { in test_kni() 707 if (kni) { in test_kni() 732 if (kni) { in test_kni() 742 if (kni) { in test_kni() [all …]
|
| /dpdk/lib/port/ |
| H A D | rte_port_kni.c | 32 struct rte_kni *kni; member 57 port->kni = conf->kni; in rte_port_kni_reader_create() 69 rx_pkt_cnt = rte_kni_rx_burst(p->kni, pkts, n_pkts); in rte_port_kni_reader_rx() 126 struct rte_kni *kni; member 154 port->kni = conf->kni; in rte_port_kni_writer_create() 167 nb_tx = rte_kni_tx_burst(p->kni, p->tx_buf, p->tx_buf_count); in send_burst() 210 n_pkts_ok = rte_kni_tx_burst(p->kni, pkts, n_pkts); in rte_port_kni_writer_tx_bulk() 303 struct rte_kni *kni; member 331 port->kni = conf->kni; in rte_port_kni_writer_nodrop_create() 360 nb_tx += rte_kni_tx_burst(p->kni, in send_burst_nodrop() [all …]
|
| H A D | rte_port_kni.h | 30 struct rte_kni *kni; member 40 struct rte_kni *kni; member 51 struct rte_kni *kni; member
|
| H A D | meson.build | 52 deps += 'kni'
|
| /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
|
| /dpdk/drivers/net/kni/ |
| H A D | rte_eth_kni.c | 49 struct rte_kni *kni; member 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() 222 ret = rte_kni_release(internals->kni); in eth_kni_close()
|
| H A D | meson.build | 10 deps += 'kni'
|
| /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 …]
|
| /dpdk/examples/kni/ |
| H A D | main.c | 235 rte_kni_handle_request(p->kni[i]); in kni_ingress() 717 if (kni == NULL || link == NULL) in log_link_state() 723 rte_kni_get_name(kni), in log_link_state() 756 prev = rte_kni_update_link(p[portid]->kni[i], in monitor_all_ports_link_status() 936 struct rte_kni *kni; in kni_alloc() local 994 kni = rte_kni_alloc(pktmbuf_pool, &conf, &ops); in kni_alloc() 996 kni = rte_kni_alloc(pktmbuf_pool, &conf, NULL); in kni_alloc() 998 if (!kni) in kni_alloc() 1001 params[port_id]->kni[i] = kni; in kni_alloc() 1018 if (rte_kni_release(p[port_id]->kni[i])) in kni_free_kni() [all …]
|
| H A D | meson.build | 9 deps += ['kni', 'bus_pci']
|
| /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`` 78 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko 90 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo 97 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo_skb 118 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko kthread_mode=single 135 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko kthread_mode=multiple 176 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko carrier=on 182 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko carrier=off 203 # insmod <build_dir>/kernel/linux/kni/rte_kni.ko enable_bifurcated=on 318 deleted when the ``/dev/kni`` device is closed, either explicitly with [all …]
|
| /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. 89 Virtio with kni vhost Back End 98 Host2VM Communication Example Using kni vhost Back End 103 #. Load the kni kernel module: 113 #. Launch the kni user application: 122 For each physical port, kni creates two user threads. 124 The other user thread loops to send packets in the kni transmit queue. 126 …For each physical port, kni also creates a kernel thread that retrieves packets from the kni recei… 129 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 | 42 kni
|
| /dpdk/drivers/net/ |
| H A D | meson.build | 35 'kni',
|