# HG changeset patch # User tristan.gingold@xxxxxxxx # Node ID ce125e557225bc409186d82afe86aecdef6356dc # Parent d2f6e3d70f223f37ef468ffe7a5dcaa82cfc7c1e Replace xen_init() by running_on_xen. Check running_on_xen before setting up a Xen driver. Signed-off-by: Tristan Gingold diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c --- a/linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c Thu May 18 06:29:28 2006 @@ -191,6 +191,7 @@ if (swiotlb_force == 1) { swiotlb = 1; } else if ((swiotlb_force != -1) && + running_on_xen && (xen_start_info->flags & SIF_INITDOMAIN)) { /* Domain 0 always has a swiotlb. */ ram_end = HYPERVISOR_memory_op(XENMEM_maximum_ram_page, NULL); diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/balloon/balloon.c --- a/linux-2.6-xen-sparse/drivers/xen/balloon/balloon.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/balloon/balloon.c Thu May 18 06:29:28 2006 @@ -468,8 +468,8 @@ IPRINTK("Initialising balloon driver.\n"); - if (xen_init() < 0) - return -1; + if (!running_on_xen) + return -ENODEV; current_pages = min(xen_start_info->nr_pages, max_pfn); totalram_pages = current_pages; diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c --- a/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Thu May 18 06:29:28 2006 @@ -526,7 +526,7 @@ struct page *page; int i; - if (xen_init() < 0) + if (!running_on_xen) return -ENODEV; mmap_pages = blkif_reqs * BLKIF_MAX_SEGMENTS_PER_REQUEST; diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c --- a/linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/blkfront/blkfront.c Thu May 18 06:29:28 2006 @@ -792,7 +792,7 @@ static int __init xlblk_init(void) { - if (xen_init() < 0) + if (!running_on_xen) return -ENODEV; return xenbus_register_frontend(&blkfront); diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/console/console.c --- a/linux-2.6-xen-sparse/drivers/xen/console/console.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/console/console.c Thu May 18 06:29:28 2006 @@ -183,7 +183,7 @@ #define __RETCODE 0 static int __init xen_console_init(void) { - if (xen_init() < 0) + if (!running_on_xen) return __RETCODE; if (xen_start_info->flags & SIF_INITDOMAIN) { @@ -566,7 +566,7 @@ { int rc; - if (xen_init() < 0) + if (!running_on_xen) return -ENODEV; if (xc_mode == XC_OFF) diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/core/gnttab.c --- a/linux-2.6-xen-sparse/drivers/xen/core/gnttab.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/core/gnttab.c Thu May 18 06:29:28 2006 @@ -443,7 +443,7 @@ { int i; - if (xen_init() < 0) + if (!running_on_xen) return -ENODEV; if (gnttab_resume() < 0) diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/netback/netback.c --- a/linux-2.6-xen-sparse/drivers/xen/netback/netback.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/netback/netback.c Thu May 18 06:29:28 2006 @@ -808,6 +808,9 @@ int i; struct page *page; + if (!running_on_xen) + return -ENODEV; + /* We can increase reservation by this much in net_rx_action(). */ balloon_update_driver_allowance(NET_RX_RING_SIZE); diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c --- a/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c Thu May 18 06:29:28 2006 @@ -1341,6 +1341,9 @@ { int err = 0; + if (!running_on_xen) + return -ENODEV; + if (xen_start_info->flags & SIF_INITDOMAIN) return 0; diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/privcmd/privcmd.c --- a/linux-2.6-xen-sparse/drivers/xen/privcmd/privcmd.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/privcmd/privcmd.c Thu May 18 06:29:28 2006 @@ -271,6 +271,9 @@ static int __init privcmd_init(void) { + if (!running_on_xen) + return -ENODEV; + /* Set of hypercalls that privileged applications may execute. */ set_bit(__HYPERVISOR_acm_op, hypercall_permission_map); set_bit(__HYPERVISOR_dom0_op, hypercall_permission_map); diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/drivers/xen/xenbus/xenbus_probe.c --- a/linux-2.6-xen-sparse/drivers/xen/xenbus/xenbus_probe.c Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/drivers/xen/xenbus/xenbus_probe.c Thu May 18 06:29:28 2006 @@ -966,10 +966,8 @@ DPRINTK(""); - if (xen_init() < 0) { - DPRINTK("failed"); + if (!running_on_xen) return -ENODEV; - } /* Register ourselves with the kernel bus subsystem */ bus_register(&xenbus_frontend.bus); @@ -1069,10 +1067,8 @@ { unsigned long timeout = jiffies + 10*HZ; - if (xen_init() < 0) { - DPRINTK("failed"); + if (!running_on_xen) return -ENODEV; - } while (time_before(jiffies, timeout)) { if (all_devices_ready()) diff -r d2f6e3d70f22 -r ce125e557225 linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h --- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h Wed May 17 22:31:46 2006 +++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h Thu May 18 06:29:28 2006 @@ -118,7 +118,7 @@ #define MULTI_UVMDOMID_INDEX 4 #endif -#define xen_init() (0) +#define running_on_xen 1 static inline int HYPERVISOR_yield(