|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [minios] Fix test application link when various fronts are not enabled
Ian Campbell, le Thu 29 Nov 2012 11:08:04 +0000, a écrit :
> On Wed, 2012-11-28 at 20:28 +0000, Samuel Thibault wrote:
> > When pcifront is not enabled, the test application needs to disable the
> > PCI test.
> >
> > Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
>
> Does something similar apply to the other *front ?
Right, here is a patch.
Samuel
Fix test application link when various fronts are not enabled.
When fronts are not enabled, the test application needs to disable the
corresponding tests.
Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
diff -r 64b36dde26bc extras/mini-os/test.c
--- a/extras/mini-os/test.c Fri Jan 04 15:58:37 2013 +0000
+++ b/extras/mini-os/test.c Mon Jan 07 22:45:46 2013 +0100
@@ -45,9 +45,7 @@
#include <xen/features.h>
#include <xen/version.h>
-static struct netfront_dev *net_dev;
-static struct semaphore net_sem = __SEMAPHORE_INITIALIZER(net_sem, 0);
-
+#ifdef CONFIG_XENBUS
void test_xenbus(void);
static void xenbus_tester(void *p)
@@ -55,6 +53,7 @@
printk("Xenbus tests disabled, because of a Xend bug.\n");
/* test_xenbus(); */
}
+#endif
static void periodic_thread(void *p)
{
@@ -68,12 +67,18 @@
}
}
+#ifdef CONFIG_NETFRONT
+static struct netfront_dev *net_dev;
+static struct semaphore net_sem = __SEMAPHORE_INITIALIZER(net_sem, 0);
+
static void netfront_thread(void *p)
{
net_dev = init_netfront(NULL, NULL, NULL, NULL);
up(&net_sem);
}
+#endif
+#ifdef CONFIG_BLKFRONT
static struct blkfront_dev *blk_dev;
static struct blkfront_info blk_info;
static uint64_t blk_size_read;
@@ -242,7 +247,9 @@
}
up(&blk_sem);
}
+#endif
+#if defined(CONFIG_FBFRONT) && defined(CONFIG_KBDFRONT)
#define WIDTH 800
#define HEIGHT 600
#define DEPTH 32
@@ -432,6 +439,7 @@
}
up(&kbd_sem);
}
+#endif
#ifdef CONFIG_PCIFRONT
static struct pcifront_dev *pci_dev;
@@ -465,20 +473,26 @@
void shutdown_frontends(void)
{
+#ifdef CONFIG_NETFRONT
down(&net_sem);
if (net_dev)
shutdown_netfront(net_dev);
+#endif
+#ifdef CONFIG_BLKFRONT
down(&blk_sem);
if (blk_dev)
shutdown_blkfront(blk_dev);
+#endif
+#if defined(CONFIG_FBFRONT) && defined(CONFIG_KBDFRONT)
if (fb_dev)
shutdown_fbfront(fb_dev);
down(&kbd_sem);
if (kbd_dev)
shutdown_kbdfront(kbd_dev);
+#endif
#ifdef CONFIG_PCIFRONT
down(&pci_sem);
@@ -487,6 +501,7 @@
#endif
}
+#ifdef CONFIG_XENBUS
static void shutdown_thread(void *p)
{
DEFINE_WAIT(w);
@@ -506,19 +521,30 @@
HYPERVISOR_shutdown(shutdown_reason);
}
+#endif
int app_main(start_info_t *si)
{
printk("Test main: start_info=%p\n", si);
+#ifdef CONFIG_XENBUS
create_thread("xenbus_tester", xenbus_tester, si);
+#endif
create_thread("periodic_thread", periodic_thread, si);
+#ifdef CONFIG_NETFRONT
create_thread("netfront", netfront_thread, si);
+#endif
+#ifdef CONFIG_BLKFRONT
create_thread("blkfront", blkfront_thread, si);
+#endif
+#if defined(CONFIG_FBFRONT) && defined(CONFIG_KBDFRONT)
create_thread("fbfront", fbfront_thread, si);
create_thread("kbdfront", kbdfront_thread, si);
+#endif
#ifdef CONFIG_PCIFRONT
create_thread("pcifront", pcifront_thread, si);
#endif
+#ifdef CONFIG_XENBUS
create_thread("shutdown", shutdown_thread, si);
+#endif
return 0;
}
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |