qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 09/10] raven: fix PCI bus accesses with size


From: Mark Cave-Ayland
Subject: Re: [Qemu-devel] [PATCH v3 09/10] raven: fix PCI bus accesses with size > 1
Date: Mon, 17 Mar 2014 22:28:40 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130116 Icedove/10.0.12

On 17/03/14 21:55, Artyom Tarasenko wrote:

Hi Andreas,

On Mon, Mar 17, 2014 at 8:59 PM, Andreas Färber<address@hidden>  wrote:
this patch seems still be missing in master. Is it causing any problems?

It does not apply without the preceding patches. Here's my cherry-pick
result:
[...]
I.e. we might change 1 ->  4 in the SysBus API, but would that work given
that endianness is being changed alongside?

Yes, and that's the point of this patch. PCI configuration space is
little-endian. With 1 byte access size, no byte swapping happens, so
the bug is hidden.
But on 32- and 16- bit accesses the bytes are swapped.

If either of you could submit a version limited to bug fixes or explain
why the whole refactoring is needed as bug fix and provide a bisectable
version, I can certainly apply it for -rc1 if my test cases continue
working.

No refactoring is necessary: only be->le and 1->4, and this is a pure
bugfix, which has no side effects because OHW seems to use 1 byte
accesses only.

Yes, this is my understanding of the patch. However I also see that Hervé has just posted a revised raven patchset. If this patchset passes testing, I'd be inclined to apply it for 2.0 mainly because Hervé has done a great deal of testing on real OSs during development over the last 4 months and I'd bet that this fixes many more bugs than it would likely introduce.

Andreas, what's your test harness for PReP look like? Can you point us towards specific ISOs so that we can try these patches out?

BTW another unresolved issue that's been discussed is whether we should
change the default CPU for -M prep. I've been open to doing so for 2.0
but would like some pointer that such a machine did exist

That's fair. I don't have any preference here though, as long as the
necessary cpu can be selected via the command line.

I think I'd prefer to stick with the 600 series as I know there has been some talk of people wanting to run BeOS under QEMU, and given that OHW runs fine under an emulated 600 series processor then we should try and keep compatibility with that.

Given where we are time-wise, my preference would be to do the switch to OpenBIOS during the 2.1 cycle.

rather than just happens to work better with OpenBIOS.

Oh, there is a compatible version of OpenBIOS available?! Are the
binaries shared somewhere?

Yes - it's called git master ;) Make sure you apply Hervé's patcheset just posted to the list, plus the last 3 [RFC] OpenBIOS patches at http://repo.or.cz/w/qemu/hpoussin.git/shortlog/refs/heads/raven.

With those in place you should be able to launch something like this:

./qemu-system-ppc -M prep -cpu 750 -bios openbios-ppc

As I mentioned above, the main problem with switching is that OpenBIOS doesn't seem to (yet) work with the PReP machine's default 604 processor.


ATB,

Mark.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]