[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 10/16] xen: arm: enable synchronous console while starting secondary CPUs



On Wed, 2013-11-20 at 19:22 +0000, Stefano Stabellini wrote:
> On Wed, 20 Nov 2013, Ian Campbell wrote:
> > If CONFIG_EARLY_PRINTK is in use then this gets all interleaved with the
> > standard logging otherwise.
> > 
> > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> 
> I am concerned because in this case console_start_sync and
> console_end_sync would be called before console_endboot and I can't tell
> whether it is a supported.

I believe it is. Or at least I can't see anything which would prevent it
and it works in practice. The synchronousness of the console is
reference counted so it doesn't interfere with e..g the sync_console
option etc.

Keir CCd in case he has an opinion...

> 
> 
> >  xen/arch/arm/smpboot.c |    5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
> > index ce832ae..9b58345 100644
> > --- a/xen/arch/arm/smpboot.c
> > +++ b/xen/arch/arm/smpboot.c
> > @@ -28,6 +28,7 @@
> >  #include <xen/softirq.h>
> >  #include <xen/timer.h>
> >  #include <xen/irq.h>
> > +#include <xen/console.h>
> >  #include <asm/gic.h>
> >  
> >  cpumask_t cpu_online_map;
> > @@ -349,6 +350,8 @@ int __cpu_up(unsigned int cpu)
> >      if ( rc < 0 )
> >          return rc;
> >  
> > +    console_start_sync(); /* Secondary may use early_printk */
> > +
> >      /* Tell the remote CPU which stack to boot on. */
> >      init_data.stack = idle_vcpu[cpu]->arch.stack;
> >  
> > @@ -361,6 +364,8 @@ int __cpu_up(unsigned int cpu)
> >  
> >      rc = arch_cpu_up(cpu);
> >  
> > +    console_end_sync();
> > +
> >      if ( rc < 0 )
> >      {
> >          printk("Failed to bring up CPU%d\n", cpu);
> > -- 
> > 1.7.10.4
> > 



_______________________________________________
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®.