From: Aurelien Jarno <aurelien@aurel32.net>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
"Michael S. Tsirkin" <mst@redhat.com>,
patches@linaro.org, "Will Deacon" <will.deacon@arm.com>,
qemu-devel@nongnu.org, "Paul Brook" <paul@codesourcery.com>,
"Andreas Färber" <afaerber@suse.de>
Subject: Re: [Qemu-devel] [PATCH 00/10] Fix versatile_pci (and break versatilepb linux guests!)
Date: Sun, 24 Mar 2013 21:12:45 +0100 [thread overview]
Message-ID: <20130324201245.GC22106@hall.aurel32.net> (raw)
In-Reply-To: <CAFEAcA-0N2tv881+y3QuFqBBuGsvXuZDmU2jGGw8t8yuMM4UJg@mail.gmail.com>
On Sun, Mar 24, 2013 at 04:49:37PM +0000, Peter Maydell wrote:
> On 24 March 2013 15:58, Aurelien Jarno <aurelien@aurel32.net> wrote:
> > On Sun, Mar 24, 2013 at 11:32:30AM +0000, Peter Maydell wrote:
> >> This patch series fixes a number of serious bugs in our emulation of
> >> the PCI controller found on VersatilePB and the early Realview boards:
>
> >> Patchset tested on both versatilepb and realview, using a set of
> >> Linux kernel patches written by Arnd Bergmann:
> >> http://lists.infradead.org/pipermail/linux-arm-kernel/2010-October/029040.html
> >> which were in turn tested against real PB926 and PB1176 hardware.
> >>
> >>
> >> * WARNING WARNING *
> >>
> >> This patchset will break any use of PCI (including the default SCSI
> >> card) on versatilepb with current Linux kernels, because those kernels
> >
> > Do you mean Versatile/PB and not Versatile/AB, or actually both?
>
> I mean PB. The AB doesn't have a PCI controller (though we incorrectly
> model it as having one; I suppose we could patch QEMU to stop doing
> that).
>
> >> have the matching bug in interrupt mapping to old QEMU.
> >
> > How is real hardware working with this bug?
>
> It doesn't. Unless you apply Arnd's patches, PCI support
> on real hardware is flat out broken. (This was never noticed
> because (a) real hardware is getting rare by now and (b) the
> PCI backplane is even rarer.)
>
> >> I've provided a property for enabling the old broken IRQ mapping;
> >> this can be enabled with the command line option:
> >> -global versatile_pci.broken-irq-mapping=1
> >>
> >> (If anybody wants to suggest a better way of handling this please do.)
> >
> > Do you have a pointer to the corresponding kernel patch? Is it possible
> > to get the kernel to detect if it should use the correct or the broken
> > IRQ mapping?
>
> I linked to the kernel patches above. It might I guess be possible
> to identify a fixed QEMU (if nothing else we could put something
> into QEMU that was identifiable); that still leaves existing kernels
> breaking, though.
>
Now that stable kernel releases work well and that most distribution are
basing their releases on longterm kernels, it might be possible to get
the fix included there, and from there in the distributions. I think
it's something that would be acceptable, provided it is below the 100
lines limit including context.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
next prev parent reply other threads:[~2013-03-24 20:12 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-24 11:32 [Qemu-devel] [PATCH 00/10] Fix versatile_pci (and break versatilepb linux guests!) Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 01/10] versatile_pci: Fix hardcoded tabs Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 02/10] versatile_pci: Expose PCI I/O region on Versatile PB Peter Maydell
2013-03-25 1:01 ` Peter Crosthwaite
2013-03-25 9:47 ` Peter Maydell
2013-03-25 10:15 ` Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 03/10] versatile_pci: Update to realize and instance init functions Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 04/10] versatile_pci: Change to subclassing TYPE_PCI_HOST_BRIDGE Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 05/10] versatile_pci: Use separate PCI I/O space rather than system I/O space Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 06/10] versatile_pci: Put the host bridge PCI device at slot 29 Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 07/10] versatile_pci: Implement the correct PCI IRQ mapping Peter Maydell
2013-03-25 12:12 ` Michael S. Tsirkin
2013-03-25 12:17 ` Peter Maydell
2013-03-25 12:28 ` Michael S. Tsirkin
2013-03-24 11:32 ` [Qemu-devel] [PATCH 08/10] versatile_pci: Implement the PCI controller's control registers Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 09/10] arm/realview: Fix mapping of PCI regions Peter Maydell
2013-03-24 11:32 ` [Qemu-devel] [PATCH 10/10] versatile_pci: Expose PCI memory space to system Peter Maydell
2013-03-24 15:58 ` [Qemu-devel] [PATCH 00/10] Fix versatile_pci (and break versatilepb linux guests!) Aurelien Jarno
2013-03-24 16:49 ` Peter Maydell
2013-03-24 20:12 ` Aurelien Jarno [this message]
2013-03-24 19:17 ` Michael S. Tsirkin
2013-03-24 20:53 ` Peter Maydell
2013-03-24 21:16 ` Arnd Bergmann
2013-03-24 21:29 ` Peter Maydell
2013-03-24 22:45 ` Arnd Bergmann
2013-03-24 21:37 ` Michael S. Tsirkin
2013-03-24 22:59 ` Arnd Bergmann
2013-03-25 11:56 ` Peter Maydell
2013-03-24 21:34 ` Michael S. Tsirkin
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=20130324201245.GC22106@hall.aurel32.net \
--to=aurelien@aurel32.net \
--cc=afaerber@suse.de \
--cc=arnd@arndb.de \
--cc=mst@redhat.com \
--cc=patches@linaro.org \
--cc=paul@codesourcery.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=will.deacon@arm.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.