# HG changeset patch # User tristan.gingold@xxxxxxxx # Node ID 5e930cae1bb9b32655214cbb47ccf1e26ea44a4d # Parent f2118e8d303fff0b42f7b2fa4df9fccd52757c2f Keep transparent virtualzation working (net front & back, swiotlb). Signed-off-by: Tristan Gingold diff -r f2118e8d303f -r 5e930cae1bb9 linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c --- a/linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c Wed May 17 03:42:00 2006 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c Wed May 17 04:46:35 2006 @@ -191,6 +191,7 @@ if (swiotlb_force == 1) { swiotlb = 1; } else if ((swiotlb_force != -1) && + xen_start_info && (xen_start_info->flags & SIF_INITDOMAIN)) { /* Domain 0 always has a swiotlb. */ ram_end = HYPERVISOR_memory_op(XENMEM_maximum_ram_page, NULL); diff -r f2118e8d303f -r 5e930cae1bb9 linux-2.6-xen-sparse/drivers/xen/netback/netback.c --- a/linux-2.6-xen-sparse/drivers/xen/netback/netback.c Wed May 17 03:42:00 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/netback/netback.c Wed May 17 04:46:35 2006 @@ -808,6 +808,9 @@ int i; struct page *page; + if (xen_init () < 0) + return 0; + /* We can increase reservation by this much in net_rx_action(). */ balloon_update_driver_allowance(NET_RX_RING_SIZE); diff -r f2118e8d303f -r 5e930cae1bb9 linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c --- a/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Wed May 17 03:42:00 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Wed May 17 04:46:35 2006 @@ -1341,7 +1341,7 @@ { int err = 0; - if (xen_start_info->flags & SIF_INITDOMAIN) + if (xen_start_info == NULL || xen_start_info->flags & SIF_INITDOMAIN) return 0; if ((err = xennet_proc_init()) != 0)