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

Re: [Xen-users] Linux Device Drivers modified in Xen ?

> I have spent enough time trying to find out if the native device drivers in
> Linux need to be modified for it to work on Linux or not. I havent been
> able to find a specific answer, so I thought i will post a query on this
> list. So here are a list of some question that I have.
> 1. Will native Linux device drivers work when running on Zen VMM?

The source code of native Linux drivers does not need to be modified for use 
in dom0 or a driver domain.  Occasionally a driver doesn't work because of 
bugs / assumptions and these have to be fixed but usually well-written 
drivers will Just Work when compiled against the XenLinux kernel and loaded.

You can't load a driver that was compiled against non-Xen Linux, but then you 
can't generally load drivers that were compiled against different Linuxes 
anyhow, due to the lack of a stable ABI.

> 2. Has XenSource or somebody have written the front end and back end driver
> for every device driver in Linux ? Or is it that only for a limited set of
> devices the front end and back end drivers were developed.

The main front / back drivers available are block (should work with any 
physical block device) and net (should work with any physical net device).

There's also a simple, low performance framebuffer front / back driver.  

There's some basic support for passing specific USB devices to HVM guests in 
the tree.  It's also possible to assign whole PCI devices to a PV guest (or 
HVM, in the unstable tree).  There's a pvSCSI driver in the works (you can 
already access SCSI disks, this extends support to other peripherals).  These 
techniques (do / will / should) allow you to pass devices into a guest that 
are not supported by the generic front / back device classes.

> 3. Is there some kind of documentation availabl for writing split device
> drivers?

There's some documentation in the interface manual in the source tree, 
probably some on the wiki.  The code may also be helpful to read.

The papers here 
(http://www.cl.cam.ac.uk/research/srg/netos/xen/architecture.html) are also 
worth reading, especially "Safe Hardware Access with the Xen Virtual Machine 
Monitor" for a description of the IO architecture and "Xen and the Art of 
Virtualization" for general Xen background.

You can also ask technical questions about implementation on the xen-devel 
mailing list.  The mailing list archive is possibly worth a look too.

Hope that helps,


Dave: Just a question. What use is a unicyle with no seat?  And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!

Xen-users mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.