DragonFly BSD
DragonFly kernel List (threaded) for 2011-03
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: ***UNCHECKED*** Re: about virtio driver porting from FreeBSD

From: Stéphanie Ouillon <stephanie@xxxxxxxxx>
Date: Sun, 13 Mar 2011 23:51:10 +0100


I run 10 days ago the code you sent to me in your mail, but I had to read more about virtio driver to be able to understand a bit more the architecture of the code.

Well, I used a DragonFly 2.9-development on Virtualbox (not the latest version of VBox because there is a reported bug for DragonFly BSD machines, so I use the 3.12) and I used a PCnet-PCI II emulated network card (NAT mode).

I build the code to load the modules and I did what you mentionned :

#kldload -v ./virtio.ko
virtio_probe 51966virtio_probe 9237virtio_probe 28947Loaded ./virtio.ko, id=5

#kldload -v ./virtio_net.ko
Loaded ./virtio-net.ko, id=6

virtio_probe 51966virtio_probe 9237virtio_probe 28947

I checked the numbers, they match the following devices :
51966 : Virtual Guest Service
9237 : "0x8086","0x2415","Intel Corporation","Intel 82801DBM SM/BUS Controller 24C3","Aureal (AD1881 SOUNDMAX) Placa Mãe Asaki P3-141"
28947: "0x8086","0x7113","Intel Corporation","82371AB/EB/MB","PIIX4/4E/4M Power Management Controller"

However, I see no message from the virtio_attach() fonction nor virtio_net_probe() or virtio_net_attach() and I don't understand why ( if it is normal, or not ? ).
I tried to launch Virtualbox with virtio-net for the network configuration to see what would happen, if I could go further and have more information but I had an error message at the very beginning :

Configuration error: Failed to get the "MAC" value (VERR_CFGM_VALUE_NOT_FOUND).
Unknown error creating VM (VERR_CFGM_VALUE_NOT_FOUND).

So the vm couldn't be launched, even when configured with no network connection.

Stéphanie Ouillon

Le 28/02/11 02:34, Pratyush Kshirsagar a écrit :
Yes, you are right but I did some work porting virtio network driver from NetBSD before we moved forward to port it from FreeBSD.
Attached is the partly done code.
The other basic calls needed for block and network drivers are kept same by Tim and me so that we don't do lot of cleaning and book keeping stuff.

The working code is in "net" directory and not the nbsd_code.
you need to make the outer dir and then the do make in net.
use kldload -v ./virtio.ko followed by kldload -v ./virtio_net.ko 
Thus when you use dmesg it will show the messages during the netword device probe and attach() with the network device number/id.

You can mail me for further information.

- Pratyush Kshirsagar.

2011/2/27 Stéphanie Ouillon <stephanie@minet.net>

I've read the posts on the DragonFly BSD Digest site about virtio, but I have some questions about it.

A virtual network driver was ported from NetBSD, using some FreeBSD code that wasn't supposed to be public under a BSD license. So for the moment, the code that is published on gitorious (http://gitorious.org/virtio-drivers/virtio-drivers/trees/master) can't be used at all ? Can somebody tell me more about that ?
Thanks !



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]