From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Christoph Egger" Subject: stdvga: slow ioreq Date: Mon, 5 Nov 2007 13:05:04 +0200 Message-ID: <200711051205.05004.Christoph.Egger@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com, Robert Phillips List-Id: xen-devel@lists.xenproject.org Hello Ropert! Since changeset 16285 (xen-staging), I get the following output when I laun= ch a HVM guest and VGABios is running: =2D------------------------------------------------------------------------= =2D------------- (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa0000 dir:0 ptr:1= =20 df:0 count:16 (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa0020 dir:0 ptr:1= =20 df:0 count:16 (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa0040 dir:0 ptr:1= =20 df:0 count:16 (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa0060 dir:0 ptr:1= =20 df:0 count:16 (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa0080 dir:0 ptr:1= =20 df:0 count:16 (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa00a0 dir:0 ptr:1= =20 df:0 count:16 [...] (XEN) intercept.c:172:d1 slow ioreq. type:1 size:1 addr:0xa1fe0 dir:0 ptr:1= =20 df:0 count:16 =2D------------------------------------------------------------------------= =2D---------------- This is not the full output (to keep this mail readable). The address output starts from 0xa0000 and goes to 0xa1fe0 and it always increases by 0x20. (So you can generate the full output yourself :) The output comes from xen/arch/x86/intercept.c, function=20 hvm_buffered_io_send(). It is this code snippet: /* Return 0 for the cases we can't deal with. */ if ( (p->addr > 0xffffful) || p->data_is_ptr || p->df || (p->count !=3D= 1) ) { gdprintk(XENLOG_DEBUG, "slow ioreq. type:%d size:%"PRIu64" addr:0x%" PRIx64" dir:%d ptr:%d df:%d count:%"PRIu64"\n", p->type, p->size, p->addr, !!p->dir, !!p->data_is_ptr, !!p->df, p->count); return 0; } It looks like the problem was there before changeset 16285 but got uncovered with the addition of the debug output. Christoph =2D-=20 AMD Saxony, Dresden, Germany Operating System Research Center Legal Information: AMD Saxony Limited Liability Company & Co. KG Sitz (Gesch=E4ftsanschrift): Wilschdorfer Landstr. 101, 01109 Dresden, Deutschland Registergericht Dresden: HRA 4896 vertretungsberechtigter Komplement=E4r: AMD Saxony LLC (Sitz Wilmington, Delaware, USA) Gesch=E4ftsf=FChrer der AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy