搭建实验环境:

troubleshoot

第一步加载驱动

第二步切换驱动

使用了所有qemu支持的卡

[tong@T7:~/VM/dpdk]
% cat start.sh
sudo qemu-system-x86_64 -nographic -vnc 127.0.0.1: -enable-kvm \
-m 2G -cpu Nehalem -smp cores=,threads=,sockets= \
-numa node,mem=1G,cpus=-,nodeid= \
-numa node,mem=1G,cpus=-,nodeid= \
-drive file=disk.img,if=virtio \
-net nic,vlan=,model=virtio,macaddr='00:00:00:01:00:00' \
-net nic,vlan=,model=ne2k_pci,macaddr='00:00:00:01:00:01' \
-net nic,vlan=,model=i82551,macaddr='00:00:00:01:00:02' \
-net nic,vlan=,model=i82557b,macaddr='00:00:00:01:00:03' \
-net nic,vlan=,model=i82559er,macaddr='00:00:00:01:00:04' \
-net nic,vlan=,model=rtl8139,macaddr='00:00:00:01:00:05' \
-net nic,vlan=,model=e1000,macaddr='00:00:00:01:00:06' \
-net nic,vlan=,model=pcnet,macaddr='00:00:00:01:00:07' \
-net tap,vlan=,ifname=tap-dpdk-control \
-net tap,vlan=,ifname=tap-dpdk-,script=no,downscript=no \
-net tap,vlan=,ifname=tap-dpdk-,script=no,downscript=no &
# -device vfio-pci,host='0000:00:19.0' \
#ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio
[tong@T7:~/VM/dpdk]

只有virtio是对队列的

[root@dpdk ~]# lspci -vv |grep -E '^00|MSI'
:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev )
:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] (prog-if [Master])
:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev )
:02.0 VGA compatible controller: Device : (rev ) (prog-if [VGA controller])
:03.0 Ethernet controller: Red Hat, Inc Virtio network device
Capabilities: [] MSI-X: Enable+ Count= Masked-
:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-(AS)
:05.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev 0f)
:06.0 Ethernet controller: Intel Corporation //// Ethernet Pro (rev )
:07.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev )
:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-/8101L/ PCI Fast Ethernet Adapter (rev )
:09.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev )
:0a. Ethernet controller: Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE] (rev )
:0b. SCSI storage controller: Red Hat, Inc Virtio block device
Capabilities: [] MSI-X: Enable+ Count= Masked-
[root@dpdk ~]#

xxx

[root@dpdk tools]# ./dpdk-devbind.py -b igb_uio eth1
[root@dpdk tools]# ./dpdk-devbind.py -b igb_uio eth2
[root@dpdk tools]# ./dpdk-devbind.py -s Network devices using DPDK-compatible driver
============================================
::04.0 'Virtio network device' drv=igb_uio unused=
::05.0 'Virtio network device' drv=igb_uio unused= Network devices using kernel driver
===================================
::03.0 'Virtio network device' if=eth0 drv=virtio-pci unused=igb_uio *Active* Other network devices
=====================
<none>
[root@dpdk tools]#

qemu的所有nic都可以使用uio

[root@dpdk tools]# ./dpdk-devbind.py -s

Network devices using DPDK-compatible driver
============================================
<none> Network devices using kernel driver
===================================
::03.0 'Virtio network device' if=eth0 drv=virtio-pci unused=igb_uio *Active*
::08.0 'RTL-8100/8101L/8139 PCI Fast Ethernet Adapter' if=ens8 drv=8139cp unused=igb_uio
::09.0 '82540EM Gigabit Ethernet Controller' if=ens9 drv=e1000 unused=igb_uio Other network devices
=====================
::04.0 'RTL-8029(AS)' unused=igb_uio
::05.0 '8255xER/82551IT Fast Ethernet Controller' unused=igb_uio
::06.0 '82557/8/9/0/1 Ethernet Pro 100' unused=igb_uio
::07.0 '8255xER/82551IT Fast Ethernet Controller' unused=igb_uio
::0a. '79c970 [PCnet32 LANCE]' unused=igb_uio
[root@dpdk tools]#

[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境)的更多相关文章

  1. [dpdk] 熟悉SDK与初步使用 (二)(skeleton源码分析)

    接续前节:[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境) 程序逻辑: 运行参数: 关键API: 入口函数: int rte_eal_init(int argc, char **ar ...

  2. [dpdk] 熟悉SDK与初步使用 (四)(L3 Forwarding源码分析)

    接续前节:[dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析) 前文中的最后一个问题,搁置,并没有找到答案.所以继续阅读其他例子的代码,想必定能在其他位置看到答案. ...

  3. [dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析)

    对例子IP Fragmentation的熟悉,使用,以及源码分析. 功能: 该例子的功能有二: 一: 将IP分片? 二: 根据路由表,做包转发. 路由表如下: IP_FRAG: Socket : ad ...

  4. OVS + dpdk 安装与实验环境配置

    ***DPDK datapath的OVS的安装与实验环境配置 首先肯定是DPDK的安装       0:安装必要的工具            make            gcc           ...

  5. 使用 qemu 搭建内核开发环境

    本文主要介绍在 MacOS 上使用 qemu 搭建 Linux Kernel 的开发环境.(在开始之前需要注意的是,本文中的 Linux 开发环境是一个远程服务器,而 qemu 被安装在本地的 Mac ...

  6. 理解 Linux 网络栈(3):QEMU/KVM + VxLAN 环境下的 Segmentation Offloading 技术(发送端)

    本系列文章总结 Linux 网络栈,包括: (1)Linux 网络协议栈总结 (2)非虚拟化Linux环境中的网络分段卸载技术 GSO/TSO/UFO/LRO/GRO (3)QEMU/KVM + Vx ...

  7. 用Qemu搭建aarch32学习环境

    作者信息 作者: 彭东林 邮箱: pengdonglin137@163.com QQ: 405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linu ...

  8. 用Qemu搭建x86_64学习环境

    作者信息 作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核 ...

  9. 用Qemu搭建x86学习环境

    作者信息 作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核 ...

随机推荐

  1. vmware12 ubuntu14.01桥接模式静态IP上网

    一家之言,希望能帮你解决问题.此处更多为我自留备忘. 环境: win7:机安装支持桥接模式的服务. vmware12 ubutu 14.01 注意事项(此处坑多): 1.networking rest ...

  2. [Linux]Linux系统调用列表

    本文列出了大部分常见的Linux系统调用,并附有简要中文说明. 以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数.这可能是你在互联网上所能看到的唯一一篇中文注释的 ...

  3. JavaScript高级程序设计学习笔记--DOM

    DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序接口). Document类型 文档的子节点 虽然DOM标准规定Document节点的子节点可以是DocumentType,Ele ...

  4. asp.net ajax 调用后台方法

    js代码 <form id="form1" runat="server"> <script language=javascript type= ...

  5. 动态选路、RIP协议&&OSPF协议详解

    动态选路.RIP协议&&OSPF协议详解 概念 当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路.路由器之间必须采用选路协议进行通信,这样的选路协议 ...

  6. 【MongoDB】递归获取字段更新表达式,更新复杂数据类型对象

    在实际更新Mongo对象时发现,原有的更新代码无法更新复杂的数据类型对象.恰好看到张占岭老师有对该方法做相关的改进,因此全抄了下来. 总的核心思想就是运用反射与递归,对对象属性一层一层挖掘下去,循环创 ...

  7. Mybatis关联查询(嵌套查询)

    上一篇文章介绍了基于Mybatis对数据库的增.删.改.查.这一篇介绍下关联查询(join query). 三张表:user article blog 表的存储sql文件: /* Navicat My ...

  8. 弹性布局flex-兼容问题

    这里弹性布局的用法就不说了 用过的都知道很方便 虽然现在弹性布局已经实现标准了 但是还是存在一些兼容问题 旧版本 (一些低版本的浏览器) display:-webkit-box; 新版本(目前的标准版 ...

  9. iOS ---不一样的NSLog打印(精准打印)

    在iOS开发过程中,调试是很重要的过程,而除了各种断点调试(普通断点.条件断点.全局断点)之外,似乎NSLog是我们调试最常用的方法,当然,也是最简单朴素的寻debug方法. 在项目中,我们常使用的N ...

  10. Node.js-视图引擎【1】-Swig集成express的安装与配置

    node.js视图引擎,选来选去发现Swig最符合我的胃口哈哈. 一.安装Swig视图引擎 npm install -g swig 二.在node.js代码中配置如下 var app = requir ...