Re: [Xen-devel] [PATCH v4 2/3] console: use warning infrastructure for sync console warning

2016-06-23 Thread Andrew Cooper
On 23/06/16 16:10, Wei Liu wrote:
> Move the warning text to a static variable and marked that as initconst
> data. Call warning_add in console_init_preirq. Finally remove all
> unused bits.
>
> Signed-off-by: Wei Liu 

Reviewed-by: Andrew Cooper 

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH v4 2/3] console: use warning infrastructure for sync console warning

2016-06-23 Thread Jan Beulich
>>> On 23.06.16 at 17:10,  wrote:
> Move the warning text to a static variable and marked that as initconst
> data. Call warning_add in console_init_preirq. Finally remove all
> unused bits.
> 
> Signed-off-by: Wei Liu 

Acked-by: Jan Beulich 


___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] [PATCH v4 2/3] console: use warning infrastructure for sync console warning

2016-06-23 Thread Wei Liu
Move the warning text to a static variable and marked that as initconst
data. Call warning_add in console_init_preirq. Finally remove all
unused bits.

Signed-off-by: Wei Liu 
---
Cc: Jan Beulich 
Cc: Andrew Cooper 

v4:
1. Fix declaration of warning_sync_console.
2. Remove all asterisks in warning text.

v3: new
---
 xen/drivers/char/console.c | 36 
 1 file changed, 8 insertions(+), 28 deletions(-)

diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index ac21caf..650035d 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -18,7 +18,6 @@
 #include 
 #include 
 #include 
-#include 
 #include 
 #include 
 #include 
@@ -30,6 +29,7 @@
 #include 
 #include  /* for do_console_io */
 #include 
+#include 
 
 /* console: comma-separated list of console outputs. */
 static char __initdata opt_console[30] = OPT_CONSOLE_STR;
@@ -45,6 +45,12 @@ string_param("conswitch", opt_conswitch);
 /* sync_console: force synchronous console output (useful for debugging). */
 static bool_t __initdata opt_sync_console;
 boolean_param("sync_console", opt_sync_console);
+static const char __initconst warning_sync_console[] =
+"WARNING: CONSOLE OUTPUT IS SYNCHRONOUS\n"
+"This option is intended to aid debugging of Xen by ensuring\n"
+"that all output is synchronously delivered on the serial line.\n"
+"However it can introduce SIGNIFICANT latencies and affect\n"
+"timekeeping. It is NOT recommended for production use!\n";
 
 /* console_to_ring: send guest (incl. dom 0) console data to console ring. */
 static bool_t __read_mostly opt_console_to_ring;
@@ -740,6 +746,7 @@ void __init console_init_preirq(void)
 serial_start_sync(sercon_handle);
 add_taint(TAINT_SYNC_CONSOLE);
 printk("Console output is synchronous.\n");
+warning_add(warning_sync_console);
 }
 }
 
@@ -787,8 +794,6 @@ void __init console_init_postirq(void)
 
 void __init console_endboot(void)
 {
-int i, j;
-
 printk("Std. Loglevel: %s", loglvl_str(xenlog_lower_thresh));
 if ( xenlog_upper_thresh != xenlog_lower_thresh )
 printk(" (Rate-limited: %s)", loglvl_str(xenlog_upper_thresh));
@@ -799,31 +804,6 @@ void __init console_endboot(void)
 
 warning_print();
 
-if ( opt_sync_console )
-{
-printk("**\n");
-printk("*** WARNING: CONSOLE OUTPUT IS SYNCHRONOUS\n");
-printk("*** This option is intended to aid debugging "
-   "of Xen by ensuring\n");
-printk("*** that all output is synchronously delivered "
-   "on the serial line.\n");
-printk("*** However it can introduce SIGNIFICANT latencies "
-   "and affect\n");
-printk("*** timekeeping. It is NOT recommended for "
-   "production use!\n");
-printk("**\n");
-for ( i = 0; i < 3; i++ )
-{
-printk("%d... ", 3-i);
-for ( j = 0; j < 100; j++ )
-{
-process_pending_softirqs();
-mdelay(10);
-}
-}
-printk("\n");
-}
-
 video_endboot();
 
 /*
-- 
2.1.4


___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel