DPDK patches and discussions
 help / color / mirror / Atom feed
From: Matthew Hall <mhall@mhcomputing.net>
To: dev@dpdk.org
Subject: [dpdk-dev] virtio UIO / PMD issues in default Ubuntu Cloud Images
Date: Mon, 13 Oct 2014 22:45:23 -0700	[thread overview]
Message-ID: <20141014054523.GA16919@mhcomputing.net> (raw)

Hello,

I was working to get my open source project running in a VirtualBox Vagrant VM 
powered by an Ubuntu Cloud image the last few days to make my project and DPDK 
more developer friendly with a prebuilt environment. During this I was fixing 
the ugly hardcodings I'd used to hack it together on a desktop.

In the process I found a few things I was confused about.

1) Ubuntu doesn't include the UIO module by default in the Cloud image... only 
the virtio-net. I was wondering if we had anybody in good contact with their 
kernel group to lobby for inclusion of the UIO modules in the stock Cloud 
kernel, without having to grab linux-generic and linux-headers-generic first.

2) The directions for activating virtio-net based interfaces seem out-of-date. 
They refer to the PMD as rte_virtio_net_pmd, when the PMD calls itself 
rte_virtio_pmd in my copy of DPDK 1.7.1 w/ my clang compilation patches added.

I am getting some odd errors when I'm trying to load my app:

EAL: PCI device 0000:00:08.0 on NUMA socket -1
EAL:   probe driver: 1af4:1000 rte_virtio_pmd
EAL:   0000:00:08.0 not managed by UIO driver, skipping

3) If I try to bind the device to the igb_uio driver even though it seems like 
the wrong thing to do, just for testing, this is what happens (NOTE: unbound 
the 00:08.0 device from the kernel to show this):

$ sudo tools/dpdk_nic_bind.py --status

Network devices using DPDK-compatible driver
============================================
<none>

Network devices using kernel driver
===================================
0000:00:03.0 'Virtio network device' if= drv=virtio-pci unused=igb_uio

Other network devices
=====================
0000:00:08.0 'Virtio network device' unused=igb_uio

$ sudo tools/dpdk_nic_bind.py -b igb_uio 00:08.0
Error: bind failed for 0000:00:08.0 - Cannot bind to driver igb_uio

vagrant@vagrant-ubuntu-trusty-64:/vagrant/external/dpdk$ dmesg | tail
[ 1766.445609] igb_uio: Use MSIX interrupt by default
[ 1824.602075] igb_uio: probe of 0000:00:08.0 failed with error -2
[ 1824.602742] igb_uio: probe of 0000:00:08.0 failed with error -2

4) I found some old email threads asking about this:

http://comments.gmane.org/gmane.comp.networking.dpdk.devel/1357
(there are some others as well but this seemed closest)

But the only thing present in that thread seemed to be irritated replies which 
didn't really explain the different virtio PMD's out there and how they work, 
and didn't explain which ones were in-tree and out-of-tree either.

So let me ask this again, when somebody wrote "virtio-net or virtio-net + uio 
(QEMU, VirtualBox)" into the supported page (http://dpdk.org/doc/nics), who 
tested this to prove it worked? How did they get it to work on VirtualBox? The 
last reply stating "you have the source code" didn't really explain how they 
proved this stuff ever worked in the first place.

Thanks,
Matthew.

             reply	other threads:[~2014-10-14  5:38 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-14  5:45 Matthew Hall [this message]
2014-10-14  6:03 ` Matthew Hall
2014-10-14  6:34   ` Matthew Hall
2014-10-14  8:22     ` Gonzalez Monroy, Sergio
2014-10-14  8:34       ` Matthew Hall
2014-10-14 12:16         ` Gonzalez Monroy, Sergio
2014-10-17  8:56           ` Matthew Hall
2014-10-21 13:22             ` Gonzalez Monroy, Sergio
2014-10-22  7:17               ` Matthew Hall
2014-10-22 15:20                 ` Gonzalez Monroy, Sergio
2014-10-22 18:41                   ` Matthew Hall
2014-10-23 16:15                     ` Gonzalez Monroy, Sergio
2014-10-14  6:43   ` Matthew Hall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141014054523.GA16919@mhcomputing.net \
    --to=mhall@mhcomputing.net \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).