WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] xen console output delay

To: Dan Kuebrich <dan.kuebrich@xxxxxxxxx>
Subject: Re: [Xen-devel] xen console output delay
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Fri, 14 Mar 2008 19:37:32 +0000
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 14 Mar 2008 12:38:43 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <d1d47c910803141219v5452725eu1b46cdd720c61031@xxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AciGCth+F1Yx2PH+EdyPnAAWy6hiGQ==
Thread-topic: [Xen-devel] xen console output delay
User-agent: Microsoft-Entourage/11.3.6.070618
Sounds like it isn’t due to the rate limiting then. I’m not sure what it might be in that case. Is your system uniprocessor and hence this could be scheduling latency?

 -- Keir

On 14/3/08 19:19, "Dan Kuebrich" <dan.kuebrich@xxxxxxxxx> wrote:

Keir,

Thanks for the quick response.  I did a little investigation and still have questions about this.

1. Is this rate-limiting implemented in xen 3.0.3 (which is what I'm running)?  I couldn't find anything in console/daemon/io.c.

2. If rate limiting were implemented, it doesn't seem to be flooded entirely.  There should be only 1-2 event-channel notifications occurring per second.  Additionally, sometimes printing one character, waiting a second, then printing a second character (and thus triggering another notification) does not "flush" them--it still takes several seconds after before flushing occurs.

Is there another possibility for what is going on here?

dan

On Fri, Mar 14, 2008 at 5:07 AM, Keir Fraser <keir.fraser@xxxxxxxxxxxxx> wrote:
Output to the console is rate-limited to 30 event-channel notifications per 200ms. You could be hitting that limit: see the RATE_LIMIT_ values in tools/console/daemon/io.c: the logic is fairly easily defeated to test if that is what is stalling you. Batching your notifications a bit (e.g., once per console line) might actually smooth things out a bit.

 -- Keir


On 14/3/08 00:26, "Dan Kuebrich" <dan.kuebrich@xxxxxxxxx> wrote:

Hello all,

I am working on writing a console driver for an OS on Xen and am running into a strange delay regarding console output.  I am using the ring buffer (not the hypercall) for output, and signaling with HYPERVISOR_event_channel_op after every character is written.

The delay seems to occur _only_sometimes_ after a character is output.  I have tracked it using GDB and noted that the delay happens after the characters are put into the ring buffer and the event channel is notified.  Sometimes, the character appears instantly in the console output.  Other times, it takes several seconds to show up.

I am using the standard xenconsole reader.  Is there some sort of time-based buffering that occurs in the console output buffer?

The result I would like to achieve is latency-free console output.

Thanks,
dan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel