当前位置: 首页 > news >正文

intel ECI作为ACRN VM使用dpdk(vfio和iommu问题)以及img扩容

ACRN虚拟机内IOMMU

对非虚拟机而言,只要在BIOS里开启VT-d就可以用iommu去映射vfio使用DPDK,但是在虚拟机中即便BIOS开启了VT-d,它也传不到VM中。因此这个帖子解决一下这个问题。

 在ACRN的launch脚本中需要passthru两个网卡,一个用来做静态ip,另一个做dpdk的vfio口

 我们要改一下vm的内核启动参数,这个和正常在ubuntu里面修改grub不一样,我们需要在外面挂载分区1,再进行修改

sudo fdisk -lu eci-test_a.img

mkdir myloop1
mkdir myloop1 sudo mount -o loop,offset=1048576 eci-test_a.img myloop1# 1048576 = 2048*512
cd myloop1/BOOT/EFI
sudo nano grub
#在grub的参数里面添加
intel_iommu=on iommu=ptsudo umount myloop1

然后需要编译ECI的内核,具体可以参考解开Intel ECI 的面纱-CSDN博客 

主要是开启CONFIG_VFIO_NOIOMMU,然后拷贝生成的*.deb到VM中

sudo apt install ./linux*.deb

安装完后重启VM,可以用下面命令检查(eci默认是不开这个的,要自己编译eci内核)

zcat /proc/config.gz | grep IOMMU

进入VM后,按下面操作,即可绑定vfio

modprobe vfio enable_unsafe_noiommu_mode=1
sudo dpdk-hugepages.py -r 2G -p 2M
sudo modprobe vfio-pci
sudo dpdk-devbind.py --bind=vfio-pci 00:06.0

IMG扩容

qemu-img resize eci-test_a.img +5G

进入VM中

sudo apt-get update
sudo apt-get install cloud-guest-utils
sudo growpart /dev/vda 2
sudo resize2fs /dev/vda2

 

搞定收工 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 2024年消防设施操作员考试题库及答案
  • 【论文阅读】DaST: Data-free Substitute Training for Adversarial Attacks(2020)
  • 六款免费写作工具,一键自动生成爆款文章
  • Xshell 连接服务器
  • 个人博客指路
  • Springboot整合全文检索引擎Lucene
  • 在HarmonyOS中使用RelativeContainer实现相对布局
  • EmguCV学习笔记 C# 第4章 图像处理
  • SpringBoot依赖之Spring Data Redis 一 String类型
  • 【数据结构入门】二叉树之堆的实现
  • 百日筑基第五十七天-虚拟线程
  • 前端框架(三件套)
  • git cherry-pick命令使用分享
  • Android UI:PopupWindow:API
  • 《机器学习》 逻辑回归 大批量数据的下采样 <8>
  • 《深入 React 技术栈》
  • 【React系列】如何构建React应用程序
  • 230. Kth Smallest Element in a BST
  • download使用浅析
  • ES6简单总结(搭配简单的讲解和小案例)
  • Invalidate和postInvalidate的区别
  • Java知识点总结(JavaIO-打印流)
  • js如何打印object对象
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • vue-router 实现分析
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 关于extract.autodesk.io的一些说明
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 记录一下第一次使用npm
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 用jQuery怎么做到前后端分离
  • 用简单代码看卷积组块发展
  • 正则与JS中的正则
  • python最赚钱的4个方向,你最心动的是哪个?
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • ######## golang各章节终篇索引 ########
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • (九十四)函数和二维数组
  • (力扣)1314.矩阵区域和
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (四)React组件、useState、组件样式
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • *p++,*(p++),*++p,(*p)++区别?
  • ... 是什么 ?... 有什么用处?
  • .jks文件(JAVA KeyStore)
  • .net/c# memcached 获取所有缓存键(keys)
  • @Autowired 和 @Resource 区别的补充说明与示例
  • @Autowired注解的实现原理
  • @Documented注解的作用
  • @manytomany 保存后数据被删除_[Windows] 数据恢复软件RStudio v8.14.179675 便携特别版...
  • @RequestBody与@RequestParam:Spring MVC中的参数接收差异解析
  • [2016.7 test.5] T1