记录一个dpdk 19.11 hello world 跑不起来问题(编译和权限)

news2024/11/19 6:35:59

下载dpdk 源码后:

git clone git@github.com:DPDK/dpdk.git

切到 19.11

git checkout v19.11

用usertool下的dpdk_setup.sh 选择

[38] x86_64-native-linuxapp-gcc

进行编译:

结果者是build 不过:

== Build kernel/linux/igb_uio
== Build kernel/linux/kni
  CC [M]  /home/test/yubo/nr_phy_cnf95/f95_nr_bphy_vDU_FDD/test/TestMac/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/kni/kni_misc.o
In file included from /home/test/yubo/nr_phy_cnf95/f95_nr_bphy_vDU_FDD/test/TestMac/dpdk/x86_64-native-linuxapp-gcc/build/kernel/linux/kni/kni_misc.c:22:0:
/home/test/yubo/nr_phy_cnf95/f95_nr_bphy_vDU_FDD/test/TestMac/dpdk/kernel/linux/kni/kni_dev.h: In function ‘iova_to_phys’:
/home/test/yubo/nr_phy_cnf95/f95_nr_bphy_vDU_FDD/test/TestMac/dpdk/kernel/linux/kni/kni_dev.h:104:30: error: passing argument 1 of ‘get_user_pages_remote’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  ret = get_user_pages_remote(tsk, tsk->mm, iova, 1,
                              ^~~
In file included from ./include/linux/bvec.h:14:0,
                 from ./include/linux/skbuff.h:17,
                 from ./include/net/net_namespace.h:39,
                 from ./include/linux/netdevice.h:37,

因为我只想要用共享内存, 所以在build 目录下, 把kni, igb_uio 掉了, 不编译. 

可以编译通过.

然后还到example/ helloworld下:

make clean.

make.

出来后运行, 会报:

换成: [41] x86_64-native-linux-gcc 重新编译dpdk, helloworld后还是一样.

 因为之前遇到过没有加core mask. 所以加上参数 -c -x0f, 或者 -l 4-7 都不行,还是一样.

从一个网站看可以不用大页启动, 如下:

 可以成功, 不过这样不行.

加入调试日志看下:

然后看到了以下信息:

 看上是没有权限.

用root 执行看下:

 可以了:

总结这次要注意的:

1. 选择: [41] x86_64-native-linux-gcc

2. 执行是加上core mask.

3. 如果有问题, 增加日志级别进行定位.

4. 关键是执行的时候用root 权限执行.

参考文章: https://stackoverflow.com/questions/64707324/dpdk-sample-application-aborts-after-eal-couldnt-get-fd-on-hugepage-file

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/455082.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux查看GPU信息和使用情况

1.Linux查看显卡信息 lspci | grep -i vga 2.使用nvidia GPU lspci | grep -i nvidia 个人感觉看不出什么信息,除了显存大小,另外就是可以通过加入前面的显卡编号,显示更加详细的信息。 lspci -v -s 00:0f.0 3.Linux查看Nvidia显卡信息及使…

软件测试之学习测试用例的设计(等价类法、边界值法、错误猜测法、场景法、因果图法、正交法)

文章目录 1. 测试用例的概念2. 为什么在测试前要设计测试用例3. 基于需求进行测试用例的设计1)功能性需求测试2)非功能性需求测试 4. 具体的测试用例设计方法1)等价类2)边界值3)错误猜测法4)场景法5&#x…

Python入门教程+项目实战-11.1节: 元组的基础概念

目录 11.1.1 理解元组类型 11.1.2 元组的类型名 11.1.3 元组的定义 11.1.4 元组的解包 11.1.5 遍历可迭代对象 11.1.6 本节知识要点 11.1.7 系统学习python 11.1.1 理解元组类型 元组与列表有着相同的数据结构,区别在于,元组是静态的数据类型&am…

本地如何搭建一个Stable Diffusion 的AI绘画工具?

实现AI绘画自由指南 前期准备安装1.安装 Homebrew 工具2. 安装Python33.下载 Stable Diffusion -webui4.下载大模型5. 安装 GFPGAN(神坑)5. 允许 stable diffusion-webui 如何使用效果图 最近看到网上各种AI工具很是火爆,心里也是有点痒痒&am…

消防应急照明和疏散指示系统在轨道交通中的设计应用

摘要:本文分析了消防应急照明和疏散指示系统的特点与设计要点,介绍了系统在城市轨道交通中的设计应用,轨道交通设计中新的消防应急照明和疏散指示系统的备用照明仍由EPS供电,新增一套疏散指示照明系统,增加疏散照明指示…

Beta成果测试总结

Beta成果测试总结 Beta是一个项目的早期测试,通过 Beta能够初步的了解整个系统的稳定性,测试系统是否能够满足客户的需求。我们可以在测试过程中发现一些问题,从而快速解决。 当我们在测试一个新系统时,我们需要进行测试前的准备工…

Node.js的简介

一、什么是node.js Node.js是JavaScript语言的服务器运行环境。 Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行…

一文带你全面了解最火爆的ChatGpt

导读 OpenAI近期发布聊天机器人模型ChatGPT,迅速出圈全网。它以对话方式进行交互。以更贴近人的对话方式与使用者互动,可以回答问题、承认错误、挑战不正确的前提、拒绝不适当的请求。高质量的回答、上瘾式的交互体验,圈内外都纷纷惊呼。 为什…

【ONE·C++ || 继承】

总言 主要介绍继承相关内容。 文章目录 总言1、继承介绍1.1、继承是什么1.2、继承方式与访问限定符1.3、继承作用域 2、基类和派生类对象赋值转换2.1、子类对象可以赋值给父类对象/指针/引用2.2、基类对象不能赋值给派生类对象2.3、基类的指针可以通过强制类型转换赋值给派生类…

flask学习-实践02

项目实战 入门文当(2条消息) python flask框架详解_flask python_尘世风的博客-CSDN博客(2条消息) python flask框架详解_flask python_尘世风的博客-CSDN博客 入门项目 抄作业了!6 大 Flask 开源实战项目推荐_小詹学 Python的博客-CSDN博客 (66 条消息) GitHub 上有…

DataStructure--Tree

文章摘录链接 1.树基本概念 计算机数据结构中的树就是对显示中的树的一种抽象(倒置现实中的树)。 1.1 树 有层次关系N(N≥0)个节点的有限集合空树: N0 非空树: 有且只有一个根节点1.2 节点 根节点 分…

MongoDB【MongoRepository MongoTemplate】实现增删改查

目录 1:文章评论 1.1:需求分析 1.2:表结构分析 1.3:技术选型 1.3.1:mongodb-driver 1.3.2:SpringDataMongoDB 1.4:文章微服务模块搭建 1.5:文章评论实体类的编写 1.6&#x…

【计算机网络】为什么 TCP 每次建立连接时,初始化序列号都要不一样呢?

【计算机网络】为什么 TCP 每次建立连接时,初始化序列号都要不一样呢? 为什么 TCP 每次建立连接时,初始化序列号都要不一样呢? 主要原因是为了防止历史报文被下一个相同四元组的连接接收。 TCP 四次挥手中的 TIME_WAIT 状态不是会…

现代操作系统和 TCP/IP(第二篇)

接着 现代操作系统和 TCP/IP 继续。 现代分时系统的时间片轮转机制让人们可以 “同时使用计算机”,从而滋生了 “同时使用网络” 的需求,现代分时系统是分组交换网的原动力。 从来没有超过一个人同时使用同一部电话,因此独占线路的电路交换…

2023蓝桥杯省模拟赛附近最小

2023蓝桥杯省模拟赛附近最小 这个题算是一个经典的数据结构入门题了&#xff0c;写了几个解法水一篇文章 map维护 时间复杂度nlgn&#xff0c;但是常数比较大&#xff0c;所以只能过90%数据 #include <iostream> #include<vector> #include<map> #include…

卖房子真是稳赚不赔

上面是一段很长的语音&#xff0c;对话是用的我们河池的桂柳话&#xff0c;不过桂柳话和普通话有很多相识之处&#xff0c;理解起来并不困难。 大概的意思是 A公司要给员工一批福利房&#xff0c;然后就让开发商来竞标&#xff0c;竞标的时候开发商就会说明清楚到时候给员工的房…

关于stl容器的迭代器失效问题

场景 在项目中使用stl容器的时候&#xff0c;多线程环境下出错&#xff0c;调试很久发现问题是使用容器的时候由于容器扩容导致的线程不安全&#xff0c;还有扩容导致的迭代器失效问题&#xff0c;于是就想着把迭代器失效的问题总结一下。 场景重现1   我在项目开发中使用ve…

【AI帮我写代码,上班摸鱼不是梦】如何调教ChatGPT,让它帮我写程序。

最近发现磁盘空间严重不足&#xff0c;都弹窗提示我了&#xff1a; 想想看到底哪个文件夹占的空间比较大&#xff0c;好做针对性的删除和清理。奈何Windows系统没有查看文件夹大小的工具&#xff0c;只能鼠标放在某个文件夹上&#xff0c;等提示&#xff1a; AI时代都来临了&am…

AttributeError: ‘ChatGLMConfig‘ object has no attribute ‘quantization_bit‘解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

STM32 产生随机数方式

STM32 产生随机数方式 C语言的stdlib.h库里的srand(unsigned seed)和rand(void)函数&#xff0c;可以配合产生伪随机数。其中srand(seed)产生算法种子&#xff0c;再由rand()通过算法产生随机数&#xff0c;产生的随机数在宏定义RAND_MAX范围内。如果seed不变&#xff0c;则产…