From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1J1tkl-0004G6-7e for qemu-devel@nongnu.org; Mon, 10 Dec 2007 20:17:43 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1J1tki-0004Fu-PM for qemu-devel@nongnu.org; Mon, 10 Dec 2007 20:17:41 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1J1tki-0004Fr-Kv for qemu-devel@nongnu.org; Mon, 10 Dec 2007 20:17:40 -0500 Received: from mail.codesourcery.com ([65.74.133.4]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1J1tki-0007nv-7i for qemu-devel@nongnu.org; Mon, 10 Dec 2007 20:17:40 -0500 From: Paul Brook Subject: Re: [Qemu-devel] high resolution timer question Date: Tue, 11 Dec 2007 01:17:35 +0000 References: <475D3839.8040207@earthlink.net> <475D7EFE.7060309@codemonkey.ws> In-Reply-To: <475D7EFE.7060309@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200712110117.36363.paul@codesourcery.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org > > I think the throttling should be done at CharDriver level so that all > > targets and also other devices, like parallel ports (SUNW,bpp anyone?) > > But the timing is entirely a concept of the hardware devices. It seems > like it would be easier to just add a growable buffer, and then setup a > timer in each device that reads from the buffer. I don't see why timing is device specific. The mechanisms for setting the speed are device specific, but the throttling should not be. You may need to augment the char driver API to support outgoing throttling. I'd also like to request that this feature be disabled by default. As I've mentined several times before qemu is not cycle accurate, so any attempt to do "accurate" timing is completely arbitrary. In practice I'd expect any throttling is probably going to have to be fairly coarse grained because the emulated cpu speed is extremely variable/irregular, and you're limited by host timer resolution. Paul