From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Josh Boyer <jwboyer@redhat.com>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>,
Ingo Molnar <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
yinghai@kernel.org, linux-kernel@vger.kernel.org,
kernel-team@fedoraproject.org, midgoon@gmail.com
Subject: Re: 3.2.1 Unable to reset IRR messages on boot
Date: Mon, 19 Mar 2012 15:38:42 -0400 [thread overview]
Message-ID: <20120319193842.GA8123@phenom.dumpdata.com> (raw)
In-Reply-To: <20120319133046.GB13093@zod.bos.redhat.com>
On Mon, Mar 19, 2012 at 09:30:46AM -0400, Josh Boyer wrote:
> On Mon, Mar 12, 2012 at 11:36:33AM -0700, Suresh Siddha wrote:
> > On Mon, 2012-03-12 at 09:24 -0400, Josh Boyer wrote:
> > > On Wed, Feb 01, 2012 at 12:00:30AM -0800, Suresh Siddha wrote:
> > > > Yes, it was helpful. Something like the appended patch should ignore the
> > > > bogus io-apic entry all together. As I can't test this, can you or the
> > > > reporter give the appended patch a try and ack please?
> > >
> > > Hi Suresh,
> > >
> > > Apologies for the delay. The original reporter had to return the
> > > machine he was using. We've since had another report where this
> > > happened and your patch below does indeed fix the issue.
> > >
> > > I'd suggest pushing this soon.
> > >
> > > https://bugzilla.redhat.com/show_bug.cgi?id=801501
> > >
> >
> > Thanks Josh. Peter/Ingo, please queue the appended patch for -tip.
>
> Hi Suresh,
>
> Seems this patch and Xen don't get along very well. See the bug link
> below. I've CC'd Konrad and hopefully he'll have some insight as to why
> that might be.
Quick glance at the code tells me that the 'mp_register_ioapic' with the
patch won't increment the gsi_top. That value (gsi_top) is used in
'get_nr_irqs_gsi()'. And that function is used:
#ifdef CONFIG_X86_IO_APIC
/*
* For an HVM guest or domain 0 which see "real" (emulated or
* actual respectively) GSIs we allocate dynamic IRQs
* e.g. those corresponding to event channels or MSIs
* etc. from the range above those "real" GSIs to avoid
* collisions.
*/
if (xen_initial_domain() || xen_hvm_domain())
first = get_nr_irqs_gsi();
#endif
So we get 'first' to be 16 instead of the proper GSI number.. Or perhaps
it is some other bizzare number. Would need to instrument this.
Now, the reason that read to the IOAPIC:
[ 0.000000] I/O APIC 0xfec00000 regs return all ones, skipping!
is b/c we aren't suppose to read the APIC entries at all. There was
some discussion between Ingo (or Peter?) and Jeremy years ago about a pvops call
to do a hypercall to read said entries but it was established that the
initial domain should have no such business. As such it does this:
2066 memset(dummy_mapping, 0xff, PAGE_SIZE);
and :
1899 * We just don't map the IO APIC - all access is via
1900 * hypercalls. Keep the address in the pte for reference.
1901 */
1902 pte = pfn_pte(PFN_DOWN(__pa(dummy_mapping)), PAGE_KERNEL);
1903 break;
[ignore that comment, there are no hypercalls for it]. This is in arch/x86/xen/mmu.c
So the IO_APIC is all 0xfff..
next prev parent reply other threads:[~2012-03-19 19:43 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-25 0:04 3.2.1 Unable to reset IRR messages on boot Josh Boyer
2012-01-25 1:24 ` Suresh Siddha
2012-01-25 13:49 ` Josh Boyer
2012-01-25 22:04 ` Suresh Siddha
2012-01-25 23:15 ` Josh Boyer
2012-01-31 14:26 ` Josh Boyer
2012-02-01 8:00 ` Suresh Siddha
2012-03-12 13:24 ` Josh Boyer
2012-03-12 18:36 ` Suresh Siddha
2012-03-13 9:40 ` [tip:x86/urgent] x86/ioapic: Add register level checks to detect bogus io-apic entries tip-bot for Suresh Siddha
2012-03-19 13:30 ` 3.2.1 Unable to reset IRR messages on boot Josh Boyer
2012-03-19 19:38 ` Konrad Rzeszutek Wilk [this message]
2012-03-20 9:40 ` Konrad Rzeszutek Wilk
2012-03-20 9:59 ` Ingo Molnar
2012-03-20 17:54 ` Konrad Rzeszutek Wilk
2012-03-20 18:12 ` Suresh Siddha
2012-03-20 18:58 ` Konrad Rzeszutek Wilk
2012-03-20 20:05 ` Suresh Siddha
2012-03-20 20:25 ` Konrad Rzeszutek Wilk
2012-03-20 20:41 ` Suresh Siddha
2012-03-20 20:48 ` Konrad Rzeszutek Wilk
2012-03-21 0:12 ` Konrad Rzeszutek Wilk
2012-03-21 0:12 ` [PATCH 1/3] x86: add io_apic_ops to allow interception Konrad Rzeszutek Wilk
2012-03-21 0:12 ` [PATCH 2/3] x86/apic_ops: Replace apic_ops with x86_apic_ops Konrad Rzeszutek Wilk
2012-03-21 2:31 ` Yinghai Lu
2012-03-21 16:22 ` Konrad Rzeszutek Wilk
2012-03-21 0:12 ` [PATCH 3/3] xen/x86: Implement x86_apic_ops Konrad Rzeszutek Wilk
2012-03-21 1:31 ` Suresh Siddha
2012-03-21 16:41 ` Konrad Rzeszutek Wilk
2012-03-21 19:01 ` Suresh Siddha
2012-03-21 1:42 ` 3.2.1 Unable to reset IRR messages on boot Suresh Siddha
2012-03-22 2:58 ` 3.2.1 Unable to reset IRR messages on boot. [BZ#804347] Konrad Rzeszutek Wilk
2012-03-22 2:58 ` [PATCH 1/3] x86: add io_apic_ops to allow interception Konrad Rzeszutek Wilk
2012-03-28 9:23 ` Ingo Molnar
2012-03-28 17:37 ` Konrad Rzeszutek Wilk
2012-03-28 17:37 ` [PATCH 1/2] x86/apic: Replace io_apic_ops with x86_io_apic_ops Konrad Rzeszutek Wilk
2012-03-28 17:37 ` [PATCH 2/2] xen/x86: Implement x86_apic_ops Konrad Rzeszutek Wilk
2012-04-11 4:49 ` Lin Ming
2012-04-16 15:47 ` Konrad Rzeszutek Wilk
2012-04-17 0:52 ` Zhang, Xiantao
2012-04-18 21:03 ` Konrad Rzeszutek Wilk
2012-04-20 9:33 ` Lin Ming
2012-03-28 9:32 ` [tip:x86/urgent] x86/ioapic: Add io_apic_ops driver layer to allow interception tip-bot for Jeremy Fitzhardinge
2012-03-22 2:58 ` [PATCH 2/3] x86/apic_ops: Replace apic_ops with x86_apic_ops Konrad Rzeszutek Wilk
2012-03-23 12:24 ` Ingo Molnar
2012-03-26 14:44 ` Konrad Rzeszutek Wilk
2012-03-22 2:58 ` [PATCH 3/3] xen/x86: Implement x86_apic_ops Konrad Rzeszutek Wilk
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=20120319193842.GA8123@phenom.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=hpa@zytor.com \
--cc=jwboyer@redhat.com \
--cc=kernel-team@fedoraproject.org \
--cc=linux-kernel@vger.kernel.org \
--cc=midgoon@gmail.com \
--cc=mingo@elte.hu \
--cc=suresh.b.siddha@intel.com \
--cc=yinghai@kernel.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.