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/
Home Products Support Community News


Re: [Xen-devel] how can native driver response quickly for low FIFO devi

To: "Dong, Eddie" <eddie.dong@xxxxxxxxx>
Subject: Re: [Xen-devel] how can native driver response quickly for low FIFO device
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Thu, 25 May 2006 14:12:08 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 25 May 2006 06:12:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <255D0D519B44514CA2384FC76944C1AA467E3D@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
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>
References: <255D0D519B44514CA2384FC76944C1AA467E3D@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx

On 25 May 2006, at 14:08, Dong, Eddie wrote:

O, sorry for the confuse message. Here I mean the issue in native device
(e.x. dom0 UART), not HVM virtual UART.
When hardware UART device receives a byte, it will send pirq to dom0,
although dom0 is not blocking but it may not get scheduled in at
instance. Say it needs to wait for another domain (domU or domVMX) to
run out of time slice, say 10ms in default scheduler. Within this 10ms,
the hardware UART may receive another tens of bytes before dom0 UART
device driver can really read the data and copy to driver buffer. So in
this case the hardware UART device will become "receiving data
overwritten",  which means receiving data lose for us :-(
Is there anybody ever tried to use ttyS0 succesfully when multiple
domain is running on same LP?

There's a 128-byte receive buffer. Bytes are greedily taken from the UART FIFO in interrupt context and written to the software receive buffer. If overflow were a problem we could obviously quite easily make that receive buffer substantially larger.

 -- Keir

Xen-devel mailing list