--------- Original Message -------- From: The OpenBIOS Mailinglist openbios@openbios.org To: Andreas Tobler andreast@fgznet.ch Cc: The OpenBIOS Mailinglist openbios@openbios.org, qemu-ppc List qemu-ppc@nongnu.org, Andreas Färber afaerber@suse.de, Segher Boessenkool segher@kernel.crashing.org Subject: Re: [OpenBIOS] [Qemu-ppc] FreeBSD powerpc issue Date: 20/09/12 11:37
On 31.08.2012, at 22:40, Andreas Tobler wrote:
> On 27.08.12 23:51, Alexander Graf wrote: >> >> >> On 27.08.2012, at 13:43, Segher Boessenkool
<segher@kernel.crashing.org> wrote:
>> >>>>>> How do I flush the TLB? >>>>> >>>>> tlbie, and perhaps tlbsync. >>>> >>>> The QEMU TLB only caches existing translations, never
misses.
>>> >>> I'm not sure what you mean here? No PowerPC hardware that I
know of
>>> stores a "this address doesn't go anywhere" tag in
the TLB, either
>>> (I don't think the architecture allows that even). >>> >>> I also don't see what it has to do with the problem. The
scenario
>>> what we think is happening: the CPU has translations for the
OF code
>>> space in its TLB, because it has run it before. The kernel
removes
>>> the translations but doesn't do TLBIE on those. On real
hardware,
>>> the TLB entries are still used. What does QEMU do? >> >> Ah, I see. It depends. QEMU doesn't provide any guarantees that
the TLB survives basically. We don't flush it often for book3s, but it can still happen. Maybe try to put a printf into the tlb flush handler function?
> > Sorry for the delay, was sick for the past days :( > > You suggest to add some printf's, am I right to do that in the
cputlb.c tlb_flush()? If not, where did you mean to do that?
Yup. tlb_flush_page and/or tlb_flush.
Ok. I'll play in this direction.
> And on a side note, are/were there successful boot results from other
OS's than linux with qemu and OpenBIOS on powerpc?
Phew. With a bunch of hacks I've had Mac OS X booted into its kernel where
it was happily churning along until it realized that I'm trying to run it on machine that was too old (g3 beige support got dropped as early as 10.3 iirc).
Apart from that, I'm not aware of any successful boots. Maybe haiku?
I got haiku boot until some sort of shell access. But I didn't bother to play around with it. For me it was important to see that it does not access OF after running the kernel. This is in contrary to FreeBSD where we try to access OF after the kernel has taken over MM.
So I need some sort of mapping or/and call-back stuff to know where I (kernel) can call the OF routines after the kernel has taken over MM.
Thank you for the response. (And sorry for the formatting, web-mail...)
Andreas