From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Mukesh Rathor <mukesh.rathor@oracle.com>, roger.pau@citrix.com
Cc: jbeulich@suse.com, george.dunlap@eu.citrix.com,
Konrad Rzeszutek Wilk <konrad@kernel.org>,
jun.nakajima@intel.com, yang.z.zhang@intel.com,
xen-devel@lists.xenproject.org
Subject: Re: [PATCH] Xen 4.4-rc3 regression with PVH compared to Xen 4.4-rc2.
Date: Mon, 3 Feb 2014 14:53:58 -0500 [thread overview]
Message-ID: <20140203195358.GB10738@phenom.dumpdata.com> (raw)
In-Reply-To: <20140203112605.66306ae9@mantra.us.oracle.com>
On Mon, Feb 03, 2014 at 11:26:05AM -0800, Mukesh Rathor wrote:
> On Mon, 3 Feb 2014 12:03:20 -0500
> Konrad Rzeszutek Wilk <konrad@kernel.org> wrote:
>
> > I am hereby requesting an Xen 4.4 exemption for this bug-fix.
> >
> > The PVH feature is considered experimental, but it would be good to
> > have it working out of the box without crashing the hypervisor.
> >
> > Sadly that is not the case as 09bb434748af9bfe3f7fca4b6eef721a7d5042a4
> > "Nested VMX: prohibit virtual vmentry/vmexit during IO emulation"
> > casues an NULL pointer dereference when starting a guest with 'pvh=1'
> > in the guest config.
> >
> > There are two ways of fixing this:
> > a). Add an '!xen_pvh_domain()' or '!xen_pvh_vcpu(current)' in the
> > path, or b). Check for ioreq() being NULL. This is actually done in
> > other places in the hypervisor - so I choose to piggyback on that.
> >
>
> I was about to send this patch on friday:
>
> diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
> index d2ba435..563b02f 100644
> --- a/xen/arch/x86/hvm/vmx/vvmx.c
> +++ b/xen/arch/x86/hvm/vmx/vvmx.c
> @@ -1394,13 +1394,14 @@ void nvmx_switch_guest(void)
> struct vcpu *v = current;
> struct nestedvcpu *nvcpu = &vcpu_nestedhvm(v);
> struct cpu_user_regs *regs = guest_cpu_user_regs();
> + ioreq_t *ioreq = get_ioreq(v);
>
> /*
> * a pending IO emualtion may still no finished. In this case,
> * no virtual vmswith is allowed. Or else, the following IO
> * emulation will handled in a wrong VCPU context.
> */
> - if ( get_ioreq(v)->state != STATE_IOREQ_NONE )
> + if ( ioreq && ioreq->state != STATE_IOREQ_NONE )
> return;
> /*
> * a softirq may interrupt us between a virtual vmentry is
>
>
>
> when I realized even after the above fix it is still crashing for
> me... debugging right now. JFYI.
Are you doing it on a 'virgin' 4.4-rc3 or with your extra patches?
Also adding Roger so that he does not have to debug this crash.
>
> thanks
> Mukesh
>
next prev parent reply other threads:[~2014-02-03 19:55 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-03 17:03 [PATCH] Xen 4.4-rc3 regression with PVH compared to Xen 4.4-rc2 Konrad Rzeszutek Wilk
2014-02-03 17:03 ` [PATCH] pvh: Fix regression caused by assumption that HVM paths MUST use io-backend device Konrad Rzeszutek Wilk
2014-02-04 8:54 ` Jan Beulich
2014-02-04 14:48 ` Konrad Rzeszutek Wilk
2014-02-04 15:02 ` Jan Beulich
2014-02-04 15:32 ` Konrad Rzeszutek Wilk
2014-02-04 15:46 ` Jan Beulich
2014-02-04 16:42 ` Konrad Rzeszutek Wilk
2014-02-05 14:35 ` George Dunlap
2014-02-05 15:00 ` Jan Beulich
2014-02-05 15:26 ` Konrad Rzeszutek Wilk
2014-02-07 2:28 ` Zhang, Yang Z
2014-02-07 15:41 ` Konrad Rzeszutek Wilk
2014-02-10 12:40 ` George Dunlap
2014-02-11 0:17 ` Zhang, Yang Z
2014-02-13 15:38 ` George Dunlap
2014-02-13 16:03 ` Jan Beulich
2014-02-13 16:08 ` George Dunlap
2014-02-13 17:00 ` Jan Beulich
2014-02-03 19:26 ` [PATCH] Xen 4.4-rc3 regression with PVH compared to Xen 4.4-rc2 Mukesh Rathor
2014-02-03 19:53 ` Konrad Rzeszutek Wilk [this message]
2014-02-03 20:01 ` Mukesh Rathor
2014-02-04 1:16 ` Mukesh Rathor
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=20140203195358.GB10738@phenom.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=george.dunlap@eu.citrix.com \
--cc=jbeulich@suse.com \
--cc=jun.nakajima@intel.com \
--cc=konrad@kernel.org \
--cc=mukesh.rathor@oracle.com \
--cc=roger.pau@citrix.com \
--cc=xen-devel@lists.xenproject.org \
--cc=yang.z.zhang@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.