about virtio driver porting from FreeBSD

Stéphanie Ouillon stephanie at minet.net
Mon Mar 14 15:09:03 PDT 2011


  
  
    Do you use the latest stable version of DragonFlyBSD or the version
    in development ?
    
    Le 14/03/11 13:51, Pratyush Kshirsagar a écrit :
    <blockquote
      cite=""
      type="cite">The previous mail contains the intel N/W adapters and
      I did not find the paravirtualized adapter and the MAC address.
      So, I thought this may be the problem.
      
      2011/3/14 Stéphanie Ouillon <span
          dir="ltr"><<a moz-do-not-send="true"
            href="mailto:stephanie at minet.net">stephanie at minet.net>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
           Well, I had already
            checked the settings. 
            I'll try the latest version of VirtualBox 4.0.4, hoping that
            the bug for VirtualBox 4.0.2 has been fixed and that the vm
            will boot. 
            
            Le 14/03/11 02:58, Pratyush Kshirsagar a écrit :
            I think this are the N/W adapters
              that your VMM / Hypervisor has or attached to.
              But if you are using Virtual Box  you need to Click
                the Advanced tab in N/W settings and select the adapter
                type to 
              Paravirtualized Network (virtio-net)
              I am using bridge networking with this N/W adapter.
              Please check the settings and try to run it.
              Hope it solves the problem.
              
              
              - Pratyush.
                
                
                  2011/3/13 Stéphanie Ouillon <span
                      dir="ltr"><<a moz-do-not-send="true"
                        href="mailto:stephanie at minet.net"
                        target="_blank">stephanie at minet.net>
                  
                  <blockquote class="gmail_quote" style="margin: 0pt 0pt
                    0pt 0.8ex; border-left: 1px solid rgb(204, 204,
                    204); padding-left: 1ex;">
                     Hello, 
                      
                      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
                      
                        #dmesg 
                        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 <<a
                                    moz-do-not-send="true"
                                    href="mailto:stephanie at minet.net"
                                    target="_blank">stephanie at minet.net>
                                <blockquote class="gmail_quote"
                                  style="margin: 0pt 0pt 0pt 0.8ex;
                                  border-left: 1px solid rgb(204, 204,
                                  204); padding-left: 1ex;"> Hello,
                                  
                                  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 (<a moz-do-not-send="true"
                                    href="http://gitorious.org/virtio-drivers/virtio-drivers/trees/master"
                                    target="_blank">http://gitorious.org/virtio-drivers/virtio-drivers/trees/master)
                                  can't be used at all ? Can somebody
                                  tell me more about that ?
                                  Thanks !
                                  
                                  
                                  Regards,
                                   
                                    Stéphanie
                                  
                              
                              
                            
                          
                          
                        
                      
                    
                  
                
                
              
            
            
          
        
      
      
    
    
  





More information about the Kernel mailing list