[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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.