将晦涩难懂的技术讲的通俗易懂
发布时间:2022-09-30 17:05:04
iommu passthrough分析——lvyilong316 我们经常在OS的/proc/cmdline配置中看到诸如intel_iommu=on iommu=pt的配置,其中intel_iommu=on很容易理解,其作用就是是否使能iommu,这里我们主要介绍一下 iommu=pt,并借此对iommu中的一些流程进行梳理。以下相关代码取自linux kernel4.9.iommu.........【阅读全文】
发布时间:2022-06-04 14:26:30
vhost前后端(vhost_net/virtio_net)转发流程详解 ——lvyilong316 说明:本系列文章是早些年读linux kernel3.10代码时写的,现在为了查阅方便作为记录。 vhost net 的目的是为了避免在host kernel上做一次qemu的调度,提升性能。让vm的数据报在 host的内核就把报文发送出去。 vhost_n.........【阅读全文】
发布时间:2021-10-24 18:14:46
linux tun/tap设备的实现(kennel 3.10) TUN/TAP虚拟网络设备为用户空间程序提供了网络数据包的发送和接收能力。他既可以当做点对点设备(TUN),也可以当做以太网设备(TAP)。实际上,不仅Linux支持TUN/TAP虚拟网络设备,其他UNIX也是支持的,他们之间只有少许差别。 &nb.........【阅读全文】
发布时间:2021-10-23 20:56:16
DPDK KNI原理和实现——lvyilong316kni的整体的整体实现原理是采用共享内存方式,如下图通过DPDK创建rx_q,tx_q,并将其地址传递给kni内核模块,来实现rx_q和tx_q的内存共享,之后DPDK和内核就可以将数据放入对应的共享内存队列中完成报文的收发。下面分别介绍kni的内核部分和用户态部分。用户态部分.........【阅读全文】
发布时间:2021-10-23 15:50:47
DPDK virtio-user介绍及使用——lvyilong316最近在看DPDK和容器直接的对接方案,我们知道容器(如Docker)网络一般都采用tap+bridge方案,也就是基于内核的网络通信,即使使用ovs一般也是kernel ovs,而不是dpdk-ovs。那么当我们使用的vswitch是基于DPDK时如何和容器对接呢?下面我们重点分析一下。首先,我.........【阅读全文】
吻的感觉适2025-07-18 23:22
https://txc.qq.com/products/762843/blog/2022630
https://txc.qq.com/products/762814/blog/2022624
https://txc.qq.com/products/762833/blog/2022632
https://txc.qq.com/products/762839/blog/2022631
https://txc.qq.com/products/762835/blog/2022633
https://txc.qq.com/products/762845/blog/2022634
https://txc.qq.com/products/762810/blog/2022636
https://txc.qq.com/products/762848/blog/2022637
https://txc.qq.com/products/762843/blog/2022638
https://txc.qq.com/products/762814/blog/2022639
https://txc.qq.com/products/762839/blog/2022640
https://txc.qq.com/products/762833/blog/2022642
https://txc.qq.com/products/762810/blog/2022644
https://txc.qq.com/products/762843/blog/2022645
https://txc.qq.com/products/762814/blog/2022647
https://txc.qq.com/products/762833/blog/2022648
https://txc.qq.com/products/762843/blog/2022650
zf8292024-11-13 13:41
zf829:您好,请教大神一个问题,设备直通给VM时,中断到底会不会导致VM_EXIT吗,如果会,那VIRTIO直通时还会导致IO性能下降吧?“当透传设备产生中断时,vfio_msihandler ISR执行,该函数不做实际的服务程序处理,仅仅通过eventfd_signal激活irqfd_inject,然后最终调用deliver_posted_interrupt向虚机注入中断,中断号即为虚机配置透传设备时的中断号。” 这段描述在代码上我也仔细看了,逻辑肯定是对的,但另一方面我还是不确定中断到底会不会导致VM_EXIT
这里的中断主要是指数据包收发的中断
回复 | 举报