RFC: Patches with AXP support and pmap&smp fixes.

Andrew Turner andrew at fubar.geek.nz
Tue Apr 30 13:45:40 UTC 2013


On Mon, 29 Apr 2013 16:39:12 +0200
Grzegorz Bernacki <gjb at semihalf.com> wrote:

> Hi,
> 
> I am going to submit some changes related to Armada XP support and
> some general ARM fixes. You can find them at:
> http://people.freebsd.org/~gber/armada
> 
> It would be good if someone could review changes in generic ARM code
> i.e.: 1)
> http://people.freebsd.org/~gber/armada/0004-arm-smp-Fix-AP-processors-initialization-procedure.patch
> 
> This patch fixes race condition in pcpu_init function. pcpu_init 
> performs operation on signly-linked tail queue and the queue can be 
> corrupted by secondary cpus initialization.

From this patch I can infer you have used FreeBSD ARM with SMP. Have
you tried with WITNESS enabled? If not can you try?

There is a known issue where accessing curthread is non-atomic when it
is required to be. In it's current state mutexes may fail when they are
unlocked. Olivier Houchard had a patch a few months ago to rework how
the data is stored. My understanding is this helped but I have not seen
or tried the patch.

Olivier, is the above correct, and are we able to get this work into
the tree so we can work on making SMP stable?

Andrew


More information about the freebsd-arm mailing list