diff --git "a/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220819 \345\221\250\344\274\232.md" "b/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220819 \345\221\250\344\274\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..c874c2d5b2f4d3c3199eaf03cc64826c991229d9 --- /dev/null +++ "b/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220819 \345\221\250\344\274\232.md" @@ -0,0 +1,52 @@ +## virtio per-virtqueue reset device 实现 + +Kangjie Xu + +### 背景 +vq reset 后端支持:前端 vq reset 代码已合入,后端缺乏支持,因此我们对 virito-net,vhost-net, vhost-user(DPDK) 支持。 +之前 patch set v1 已发到社区,收到了社区一些反馈意见 https://lore.kernel.org/qemu-devel/cover.1658141552.git.kangjie.xu@linux.alibaba.com/T/#t , +我们针对这些问题进行了改进。 + +### 本周进展 +发布 vq reset patch set v2,针对之前的问题进行了改进,包括: +1. 增加新消息 VHOST_USER_RESET_VRING +2. 支持 vhost-net 场景 +3. 解决破坏热迁移兼容性的问题 + +发布v2后,mst提问:尽管这个patch支持的是 pci modern 模式,我们的改动有没有破坏原有legacy模式下的功能? +因此我们使用 iperf 简单测试了下不同场景下的连通性和性能,没有问题。 + + +## virtio split header + +Heng Qi + +### 背景 +由于 linux 内核协议栈的数据拷贝会造成比较大的开销,并且基于高速网卡的数据中心对带宽的需要也不断增加,因为避免数据包拷贝的做法是值得关注的。 +我们在 virtio-net 驱动中测试实现了 split header,其可以将 packet 的 header 和 payload 分割到不同的 buffer 中。 +这样的 payload 按页对齐的 skb 进入到 kernel stack 之后,便可以通过零拷贝绕过协议栈,进而提升内核处理数据包的速度。 + +### 本周进展: +#### spec 方面 +上周 Jason Wang 和 Huck 针对我们所发的 virtio net support split header spec v6 提出了一些问题,尤其是 split header 回退相关的处理。 本周针对上周的问题重新整理出了 split header v7 并提交。https://lists.oasis-open.org/archives/virtio-dev/202208/msg00110.html + +#### 代码实现 + +1. 实现并测试了 split header 回退的代码 +2. 支持了 indirect 间接描述符的支持。 +3. 增加了 split header configure 的代码,待测试。 + + +## virtio per-virtqueue reset kernel + +Xuan Zhuo + +### 本周进展: + +8.14 号 Linux kernel 6.0-rc1 释出。此版本带上了 virtio per-virtqueue reset 的支持。 +在释出之后, 在 Google Cloud 环境上出现 crash, 原因是限制 vq 的 size 的功能在 PCI legacy 的场景下是不支持的, 所以 revert 了部分 commit。但是对于 virtio per-virtqueue reset 的功能并不影响。 + +后续 virtio-net 支持 af_xdp 的功能会在近期提交到社区, 希望可以在 6.1 进入 linux kernel。 + + + diff --git "a/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220824 \345\274\200\346\224\276\344\274\232\350\256\256.md" "b/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220824 \345\274\200\346\224\276\344\274\232\350\256\256.md" new file mode 100644 index 0000000000000000000000000000000000000000..73d1917173f68c7c2762d2d43544a8752c3923c2 --- /dev/null +++ "b/sig/\351\253\230\346\200\247\350\203\275\347\275\221\347\273\234/virtio/20220824 \345\274\200\346\224\276\344\274\232\350\256\256.md" @@ -0,0 +1,4 @@ +1. 同步目前的 anolis 的 virtio 开发的技术的进展 https://etherpad.openanolis.cn/p/virtio +2. split header 分享 @衡琪 +3. 就 CDNP 和 Anolis 初步达成合作意向 +4. 后续开放性会议改为不定期会议, 内部周会可以申请参加。 所有的会议的纪要同步开放。 \ No newline at end of file