linux/include/xen
Ian Campbell f942dc2552 xen network backend driver
netback is the host side counterpart to the frontend driver in
drivers/net/xen-netfront.c. The PV protocol is also implemented by
frontend drivers in other OSes too, such as the BSDs and even Windows.

The patch is based on the driver from the xen.git pvops kernel tree but
has been put through the checkpatch.pl wringer plus several manual
cleanup passes and review iterations. The driver has been moved from
drivers/xen/netback to drivers/net/xen-netback.

One major change from xen.git is that the guest transmit path (i.e. what
looks like receive to netback) has been significantly reworked to remove
the dependency on the out of tree PageForeign page flag (a core kernel
patch which enables a per page destructor callback on the final
put_page). This page flag was used in order to implement a grant map
based transmit path (where guest pages are mapped directly into SKB
frags). Instead this version of netback uses grant copy operations into
regular memory belonging to the backend domain. Reinstating the grant
map functionality is something which I would like to revisit in the
future.

Note that this driver depends on 2e820f58f7 "xen/irq: implement
bind_interdomain_evtchn_to_irqhandler for backend drivers" which is in
linux next via the "xen-two" tree and is intended for the 2.6.39 merge
window:
        git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/backends
this branch has only that single commit since 2.6.38-rc2 and is safe for
cross merging into the net branch.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Reviewed-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-03-15 19:38:03 -07:00
..
interface xen network backend driver 2011-03-15 19:38:03 -07:00
events.h xen/irq: implement bind_interdomain_evtchn_to_irqhandler for backend drivers 2011-02-28 09:39:37 -05:00
evtchn.h xen: add /dev/xen/evtchn driver 2009-03-30 09:26:49 -07:00
features.h xen: Core Xen implementation 2007-07-18 08:47:42 -07:00
gntdev.h xen/gntdev: allow usermode to map granted pages 2011-01-11 14:30:52 -05:00
grant_table.h xen: introduce gnttab_map_refs and gnttab_unmap_refs 2011-01-11 14:32:00 -05:00
hvc-console.h xen64: fix !HVC_XEN build dependency 2008-07-16 11:06:48 +02:00
hvm.h x86/xen: event channels delivery on HVM. 2010-07-22 16:45:59 -07:00
Kbuild xen: add privcmd driver 2010-10-20 16:22:29 -07:00
page.h xen: add extra pages to balloon 2010-11-19 22:15:59 -08:00
platform_pci.h xen: pvhvm: make it clearer that XEN_UNPLUG_* define bits in a bitfield 2010-08-23 12:01:35 +01:00
privcmd.h xen: fix header export to userspace 2010-11-16 10:57:05 -08:00
swiotlb-xen.h swiotlb-xen: SWIOTLB library for Xen PV guest with PCI passthrough. 2010-07-27 11:51:00 -04:00
xen-ops.h xen/privcmd: move remap_domain_mfn_range() to core xen code and export. 2010-10-20 16:22:34 -07:00
xen.h xen: move Xen-testing predicates to common header 2009-11-04 08:47:24 -08:00
xenbus.h xen: add backend driver support 2011-01-05 16:29:58 -05:00
xencomm.h xen: import arch generic part of xencomm 2008-04-24 23:57:32 +02:00