This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Porting linux network driver to Xen

I am confused now, probably I should ask what changes are needed such that I can access NIC from guest domains(domUs) for Tx and Rx?  i.e if I compile native linux driver and run on dom0, how can I access it from domU's

are the changes just the configuration such that path is setup from domU/netfront -> dom0/netback->Bridge->NIC?

Yes. Just make sure the NIC corresponding to this driver is attached to the bridge. If this NIC is not your default
interface you may need to tweak the configuration.


On Wed, Nov 4, 2009 at 1:47 PM, Kaushik Kumar Ram <kaushik@xxxxxxxx> wrote:
Again, you don't have to make any changes to the driver. Netback/netfront do not interact directly with the
NIC's driver. 


On Nov 4, 2009, at 3:18 PM, ravi kerur wrote:

Thanks kaushik, How does netfront/netback interact with this driver? I believe I need netback functionality running in dom0 and netfront running in domU's for the existing driver.  One of the documents has following explanation for Tx/Rx path.

"For transmit (TX) requests the driver domain(dom0) uses a hypercall to map the guest page(domU) into its address space before sending the request through the bridge. When the physical device driver frees the page a callback function is automatically invoked to return a response to netfront which then revokes the grant.

For RX requests netfront posts I/O buffer page grants to the RX I/O channel. When netback receives a packet from the bridge it retrieves a posted grant from the I/O channel and issues a grant copy hypercall to copy the packet to the guest page(domU). Finally, netback sends a response to the guest via the RX channel indicating a packet is available."

I am not quite sure what changes or api's I need to call such that existing Tx/Rx buffers(rings) used for DMA in the native drivers starts talking via netfront/netback.

Inputs appreciated.


Xen-devel mailing list