All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kurt Hackel <kurt.hackel@oracle.com>
To: "Jiang, Yunhong" <yunhong.jiang@intel.com>
Cc: Tim Deegan <Tim.Deegan@xensource.com>, xen-devel@lists.xensource.com
Subject: Re: One potential issue of shadow fault emulation
Date: Fri, 21 Dec 2007 12:59:00 -0800	[thread overview]
Message-ID: <20071221205859.GA6063@ca-server1.us.oracle.com> (raw)
In-Reply-To: <391BF3CDD2DC0848B40ACB72FA97AD5902A481F3@pdsmsx413.ccr.corp.intel.com>

Hi,

On Fri, Dec 21, 2007 at 10:58:49PM +0800, Jiang, Yunhong wrote:
> Currently shadow fault handler try to emulate up to four extra
> instruction for PAE guest, to reduce vmexit times.
> 
> But there is a potential issue here: Consider the second instruction is
> a change to virtual TPR register. In physical environment, if the TPR
> acceleration is enabled, the cpu will try to access the
> VIRTUAL_APIC_PAGE_ADDR set in the VMCS. However, when we do emulation,
> we didn't cope with this situation, and will access the APIC_ACCESS_ADDR
> page pointed by the shadow. This is sure cause problem to guest, usually
> blue screen, and this issue will happen randomly depends on the content
> in the  apic access page.
> 
> So how should we cope with such situation? Stop emulation or, continue
> emulate , but access the virtual APIC page? Or any better idea?
> 
> Thanks
> -- Yunhong Jiang

I don't know if I'm hitting the same problem, but I also have a pretty
serious issue with changeset 15199.  In our case we see RHEL3U8 and
RHEL4U4 guests with at least 2 vcpus will consistently run into errors
on boot when fscking like so:
=====
EXT3-fs error (device ide0(3,3)): ext3_free_blocks: bit already cleared for block 66191
EXT3-fs error (device ide0(3,3)): ext3_free_inode: bit already cleared for inode 29267
EXT3-fs error (device ide0(3,3)): ext3_free_blocks: bit already cleared for block 66147
EXT3-fs error (device ide0(3,1)): ext3_free_inode: bit already cleared for inode 32388 
=====
Dropping back to 1 vcpu or a uniprocessor kernel alleviates the problem.

Bisecting we found that this was caused by cs 15199, and this was
serious enough for us with 32bit PAE hvm guests that we ended up backing
that changeset out for our release.  Was in the middle of trying the
same test out with 3.1.3-rc1-pre when I saw this thread :)  Looks like
3.2 has a different behavior and ends up spinning at 100% cpu when
fscking.

The performance impact of dropping this patch is severe (pagefaults
about 7x more expensive than the same 64bit kernel) so I'd like to help
where I can on this.

Thanks
kurt

-- 

  parent reply	other threads:[~2007-12-21 20:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-21 14:58 One potential issue of shadow fault emulation Jiang, Yunhong
2007-12-21 15:42 ` Tim Deegan
2007-12-21 16:05   ` Jiang, Yunhong
2007-12-21 17:21     ` Tim Deegan
2007-12-21 21:54       ` Keir Fraser
2007-12-22 15:26         ` Cui, Dexuan
2007-12-24 17:57         ` Tim Deegan
2007-12-24 18:27           ` Keir Fraser
2007-12-24 20:03             ` Keir Fraser
2007-12-21 20:59 ` Kurt Hackel [this message]
2007-12-27 12:23 ` Keir Fraser
2007-12-27 15:30   ` Cui, Dexuan
2007-12-27 23:03     ` Keir Fraser
2007-12-28  4:57       ` Cui, Dexuan

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=20071221205859.GA6063@ca-server1.us.oracle.com \
    --to=kurt.hackel@oracle.com \
    --cc=Tim.Deegan@xensource.com \
    --cc=xen-devel@lists.xensource.com \
    --cc=yunhong.jiang@intel.com \
    /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.