diff options
author | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2012-02-09 18:33:32 +0000 |
---|---|---|
committer | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2012-02-09 18:33:32 +0000 |
commit | 434a41d81776964364f426e3132489003c05e5df (patch) | |
tree | 1eb8a6a1846c155e049bf71d6c988fd52b3df458 /extras/mini-os/main.c | |
parent | 8111e0c59583ac278ecd07ca4c6be04d8802e567 (diff) | |
download | xen-434a41d81776964364f426e3132489003c05e5df.tar.gz xen-434a41d81776964364f426e3132489003c05e5df.tar.bz2 xen-434a41d81776964364f426e3132489003c05e5df.zip |
mini-os: make frontends and xenbus optional
This adds compile-time logic to disable certain frontends in mini-os:
- pcifront is disabled by default, enabled for ioemu
- blkfront, netfront, fbfront, kbdfront, consfront are enabled by default
- xenbus is required for any frontend, and is enabled by default
If all frontends and xenbus are disabled, mini-os will run without
needing to communicate with xenstore, making it suitable to run the
xenstore daemon. The console frontend is not required for the initial
console, only consoles opened via openpt or ptmx.
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Diffstat (limited to 'extras/mini-os/main.c')
-rw-r--r-- | extras/mini-os/main.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/extras/mini-os/main.c b/extras/mini-os/main.c index aeda548f72..73eb6fb234 100644 --- a/extras/mini-os/main.c +++ b/extras/mini-os/main.c @@ -63,10 +63,12 @@ static void call_main(void *p) #ifdef CONFIG_SPARSE_BSS sparse((unsigned long) &__app_bss_start, &__app_bss_end - &__app_bss_start); #endif -#if defined(HAVE_LWIP) && defined(CONFIG_START_NETWORK) +#if defined(HAVE_LWIP) && defined(CONFIG_START_NETWORK) && defined(CONFIG_NETFRONT) start_networking(); #endif +#ifdef CONFIG_PCIFRONT create_thread("pcifront", pcifront_watches, NULL); +#endif #ifdef CONFIG_QEMU_XS_ARGS /* Fetch argc, argv from XenStore */ @@ -169,7 +171,7 @@ void _exit(int ret) close_all_files(); __libc_fini_array(); printk("main returned %d\n", ret); -#ifdef HAVE_LWIP +#if defined(HAVE_LWIP) && defined(CONFIG_NETFRONT) stop_networking(); #endif stop_kernel(); |