From: Joshua Kinard <kumba@gentoo.org>
To: linux-mips@linux-mips.org
Subject: Re: IP30: SMP Help
Date: Mon, 10 Nov 2014 03:17:29 -0500 [thread overview]
Message-ID: <54607499.2070806@gentoo.org> (raw)
In-Reply-To: <5457187D.6030708@gentoo.org>
On 11/03/2014 00:54, Joshua Kinard wrote:
>
> I've recently acquired a dual R14000 CPU for the Octane, so I am trying to get
> SMP working again, but I can't get things setup properly. I've attached both
> ip30-irq.c and ip30-smp.c -- does anyone see any immediate problems (or just
> where I am doing it wrong)?
>
> Most reboot cycles with this code panics because init exited with a code of 0xa
> or 0xb (which matches w/ SIGSEGV or SIGBUS). Randomly, I can acquire a dash
> shell by passing init=/bin/dash. I can't do much in it, though. A basic 'ls'
> either segfaults or triggers a SIGBUS. If I execute 'ls' enough times, it
> eventually works. Can't get much farther beyond that.
I take it no one has any feedback or tips on this?
I think one of the problems is I'm not syncing the CPU timers (IP7) correctly.
The old IP30 SMP code used a timer broadcast trick yo do this, sharing a
single IRQ, #63. However, 63 is one of the hardware error IRQs. Still not
sure how that ever worked.
I've tried using the sync-r4k module...that just hangs in the sync function.
atomics seemed messed up (I wonder if PR61538 has something to do...). Also
tried re-implementing the timer broadcast but that just hangs because the two
CPUs get into a deadlock situation w/ each trying to tell the other about the
timer broadcast event. Not even sure if I should be using
spin_lock/spin_unlock or spin_lock_irqsave/spin_unlock_irqrestore for the HEART
irq code or SMP IRQ code. Each MIPS SMP machine seems to use a completely
different mechanism in the kernel. IP27 doesn't even enable the CPU timer
IRQs, it looks, and relies solely on the HUB timer present on each nodeboard.
So, yeah, out of ideas.
--
Joshua Kinard
Gentoo/MIPS
kumba@gentoo.org
4096R/D25D95E3 2011-03-28
"The past tempts us, the present confuses us, the future frightens us. And our
lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
next prev parent reply other threads:[~2014-11-10 8:17 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-03 5:54 IP30: SMP Help Joshua Kinard
2014-11-10 8:17 ` Joshua Kinard [this message]
2014-11-18 9:30 ` Joshua Kinard
2014-11-18 10:05 ` Maciej W. Rozycki
2014-11-18 12:37 ` Joshua Kinard
2014-11-18 13:10 ` Maciej W. Rozycki
2014-11-19 10:59 ` Joshua Kinard
2014-11-19 12:06 ` Maciej W. Rozycki
2014-11-19 15:22 ` Ralf Baechle
2014-11-21 6:13 ` Joshua Kinard
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=54607499.2070806@gentoo.org \
--to=kumba@gentoo.org \
--cc=linux-mips@linux-mips.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.