All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Gonglei (Arei)" <arei.gonglei@huawei.com>
To: "xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: [Qemu-devel] FW: [Xen-devel]Cirrus VGA slow screen update, show blank screen last 13s or so for windows XP guest
Date: Mon, 5 Aug 2013 13:10:07 +0000	[thread overview]
Message-ID: <33183CC9F5247A488A2544077AF1902080101198@szxeml538-mbs.china.huawei.com> (raw)

Hi,
> -----Original Message-----
> From: Gonglei (Arei)
> Sent: Tuesday, July 30, 2013 10:01 AM
> To: 'Pasi Kärkkäinen'
> Cc: Gerd Hoffmann; Andreas Färber; Hanweidong; Luonengjun;
> qemu-devel@nongnu.org; xen-devel@lists.xen.org; Anthony Liguori;
> Huangweidong (Hardware); 'Ian.Jackson@eu.citrix.com'; Anthony Liguori;
> 'aliguori@us.ibm.com'
> Subject: RE: [Xen-devel] [Qemu-devel] Cirrus VGA slow screen update, show
> blank screen last 13s or so for windows XP guest
> 
> > On Mon, Jul 29, 2013 at 08:48:54AM +0000, Gonglei (Arei) wrote:
> > > > -----Original Message-----
> > > > From: Pasi Kärkkäinen [mailto:pasik@iki.fi]
> > > > Sent: Saturday, July 27, 2013 7:51 PM
> > > > To: Gerd Hoffmann
> > > > Cc: Andreas Färber; Hanweidong; Luonengjun; qemu-devel@nongnu.org;
> > > > xen-devel@lists.xen.org; Gonglei (Arei); Anthony Liguori; Huangweidong
> > > > (Hardware)
> > > > Subject: Re: [Xen-devel] [Qemu-devel] Cirrus VGA slow screen update,
> show
> > > > blank screen last 13s or so for windows XP guest
> > > >
> > > > On Fri, Jul 26, 2013 at 12:19:16PM +0200, Gerd Hoffmann wrote:
> > > > >
> > > > > Maybe the xen guys did some optimizations in qemu-dm which where
> not
> > > > > merged upstream.  Try asking @ xen-devel.
> > > > >
> > > >
> > > > Yeah, xen qemu-dm must have some optimization for cirrus that isn't in
> > > > upstream qemu.
> > >
> > > Hi, Pasi. Would you give me some more details? Thanks!
> > >
> >
> > Unfortunately I don't have any more details.. I was just assuming if xen
> > qemu-dm is fast,
> > but upstream qemu is slow, there might be some optimization in xen
> > qemu-dm ..
> >
> > Did you check the xen qemu-dm (traditional) history / commits?
> >
> > -- Pasi
> 
> Yes, I did. I tried to reproduce the issue with qemu-dm by fall backing history
> commit.
> But the qemu-dm mainline merged other branches, such as branch 'upstream'
> and branch 'qemu',
> so that I can not complied the xen-4.1.2/tools project well. CC'ing Ian and
> Anthony.
> 
By analyzing xentrace data, I found that there is lot's of VMEXIT between memory region 0xa0000~0xaffff with upstream qemu,
but only 256 VMEXIT on traditional qemu-dm, when Windows XP guest booting up or change the method connecting the VM from VNC(RDP) to RDP(VNC):

linux-sAGhxH:# cat qemu-upstrem.log |grep 0x00000000000a|wc -l 
640654
linux-sAGhxH:# cat qemu-dm.log |grep 0x00000000000a|wc -l       
256
And the 256 VMEXIT of qemu-dm as the same as the top 256 VMEXIT of qemu-upstream

linux-sAGhxH:# cat qemu-upstream.log |grep 0x00000000000a| tail      
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b08 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b0a mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b0c mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b0e mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b10 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b12 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b14 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b16 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b18 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU0  0 (+       0)  NPF         [ gpa = 0x00000000000a0b1a mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
linux-sAGhxH:# cat qemu-dm.log |grep 0x00000000000a| tail
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1ec0 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1ee0 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1f00 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1f20 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1f40 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1f60 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1f80 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1fa0 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1fc0 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]
CPU2  0 (+       0)  NPF         [ gpa = 0x00000000000a1fe0 mfn = 0xffffffffffffffff qual = 0x0182 p2mt = 0x0004 ]

Please see attachment for more information.

Because of the lot's of VMEXIT, the cirrus_vga_ioport_write funciton receive little scheduling, 
and cirrus_vga_write_gr execution interval of more than 32ms twice per, so that the blank screen time over 13 second with upstream qemu on Xen.
I don't know why the Windows XP guest access the memory region 0xa0000~0xaffff with upstream qemu but with traditional qemu-dm is not, 
Anyone can give me some suggestion? 

Thank you so much!
 
 -Gonglei

             reply	other threads:[~2013-08-05 13:10 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-05 13:10 Gonglei (Arei) [this message]
2013-08-05 14:28 ` FW: Cirrus VGA slow screen update, show blank screen last 13s or so for windows XP guest George Dunlap
2013-08-05 14:28 ` [Qemu-devel] [Xen-devel] " George Dunlap
2013-08-05 15:06   ` Gonglei (Arei)
2013-08-05 15:06   ` [Qemu-devel] [Xen-devel] " Gonglei (Arei)
2013-08-06  9:39     ` George Dunlap
2013-08-06  9:39     ` [Qemu-devel] [Xen-devel] " George Dunlap

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=33183CC9F5247A488A2544077AF1902080101198@szxeml538-mbs.china.huawei.com \
    --to=arei.gonglei@huawei.com \
    --cc=qemu-devel@nongnu.org \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.