[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XenPPC] [linux-ppc-2.6] [POWERPC] udbg support for DomUs Complete
# HG changeset patch # User Jimi Xenidis <jimix@xxxxxxxxxxxxxx> # Node ID 7680b29c03a6dbc15a1394ebe1467c46bdab9a39 # Parent 17aa29a18b080bd96286b29e7b5918701a330eff [POWERPC] udbg support for DomUs Complete Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx> --- arch/powerpc/platforms/xen/udbg_xen.c | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff -r 17aa29a18b08 -r 7680b29c03a6 arch/powerpc/platforms/xen/udbg_xen.c --- a/arch/powerpc/platforms/xen/udbg_xen.c Thu Jul 27 18:57:20 2006 -0400 +++ b/arch/powerpc/platforms/xen/udbg_xen.c Sat Aug 05 11:33:24 2006 -0400 @@ -75,13 +75,14 @@ static void udbg_putc_domu_xen(char c) prod = intf->out_prod; mb(); - while ((prod - cons) >= sizeof(intf->out)) - continue /* relax */; - - intf->out[MASK_XENCONS_IDX(prod++, intf->out)] = c; + if ((prod - cons) < sizeof(intf->out)) + intf->out[MASK_XENCONS_IDX(prod++, intf->out)] = c; wmb(); intf->out_prod = prod; + + if (xen_start_info) + notify_remote_via_evtchn(xen_start_info->console_evtchn); } static int udbg_getc_poll_domu_xen(void) @@ -89,9 +90,9 @@ static int udbg_getc_poll_domu_xen(void) XENCONS_RING_IDX cons, prod; int c; + mb(); cons = intf->in_cons; prod = intf->in_prod; - mb(); BUG_ON((prod - cons) > sizeof(intf->in)); if (cons == prod) @@ -100,6 +101,10 @@ static int udbg_getc_poll_domu_xen(void) c = intf->in[MASK_XENCONS_IDX(cons++, intf->in)]; wmb(); intf->in_cons = cons; + + if (xen_start_info) + notify_remote_via_evtchn(xen_start_info->console_evtchn); + return c; } _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |