From: Rob Landley <rob@landley.net>
To: Olivier Danet <odanet@caramail.com>
Cc: Blue Swirl <blauwirbel@gmail.com>,
Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Openbios upgrade broke sparc32 linux.
Date: Sat, 06 Jul 2013 12:08:36 -0500 [thread overview]
Message-ID: <1373130516.27613.8@driftwood> (raw)
In-Reply-To: <51D5EEAD.9010103@caramail.com> (from odanet@caramail.com on Thu Jul 4 16:52:45 2013)
On 07/04/2013 04:52:45 PM, Olivier Danet wrote:
> On 29/06/2013 22:29, Olivier Danet wrote:
>> On 28/06/2013 23:44, Mark Cave-Ayland wrote:
>>> On 28/06/13 03:08, Rob Landley wrote:
>>>
>>>> Commit 467b34689d27 upgraded the openbios image, and ever since my
>>>> linux
>>>> system images hang about the time they try to initialize
>>>> interrupts.
>>>>
>>>> http://landley.net/aboriginal/bin/system-image-sparc.tar.bz2
>>>>
>>>> Extract that and "./run-emulator.sh" in the tarball. Using qemu
>>>> 1.2.0
>>>> for example works fine, you get a shell prompt. Using 1.5.0 hangs.
...
> Hello
> I think I have found the problem.
>
> Each SPARC CPU model use different MMU TLB management functions.
> For Linux, the callbacks are set in arch/sparc/mm/srmmu.c :
> xxx_flush_tlb_all, xxx_flush_tlb_mm, xxx_flush_tlb_range,
> xxx_flush_tlb_page.
> The assembly code used for the MicroSparcII is arch/sparc/mm/swift.S.
> This code accesses the vm_mm member of vm_area_struct
> (include/linux/mm_types.h)
>
> The position of the vm_mm field in the structure was modified
> recently, and the assembly
> was not adjusted accordingly.
> (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/include/linux/mm_types.h?id=e4c6bfd2d79d063017ab19a18915f0bc759f32d9)
>
> The bug was introduced in Linux 3.8
>
> Here is a patch for swift, there are also issues in hypersparc.S,
> viking.S, tsunami.S ...:
[snip patch that wasn't sent to linux-kernel]
> For a cleaner fix, arch/sparc/kernel/asm_offsets.c should be modified.
Huh, confirming that my old linux 3.5 image does boot under current
qemu. (I only tested back to 3.8, which worked before the qemu change
for some reason.)
In the meantime, the -cpu "fujitsu thx1138" workaround is working for
me, well enough to ship the 3.10 images as soon as I get arm working
again. (Or just go "use qemu 1.2.0 for arm" and punt until next time...)
Rob
next prev parent reply other threads:[~2013-07-07 18:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-28 2:08 [Qemu-devel] Openbios upgrade broke sparc32 linux Rob Landley
2013-06-28 21:44 ` Mark Cave-Ayland
2013-06-29 20:29 ` Olivier Danet
2013-07-04 12:18 ` Rob Landley
2013-07-04 21:52 ` Olivier Danet
2013-07-06 17:08 ` Rob Landley [this message]
2013-07-15 16:03 ` Mark Cave-Ayland
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=1373130516.27613.8@driftwood \
--to=rob@landley.net \
--cc=blauwirbel@gmail.com \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=odanet@caramail.com \
--cc=qemu-devel@nongnu.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.