From owner-freebsd-arm@FreeBSD.ORG Tue Apr 30 13:45:40 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A18A3601; Tue, 30 Apr 2013 13:45:40 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from smtp3.cerberusmail.co.uk (smtp3.cerberusmail.co.uk [46.37.32.63]) by mx1.freebsd.org (Postfix) with ESMTP id 655221388; Tue, 30 Apr 2013 13:45:40 +0000 (UTC) Received: from 46-37-55-90.dsl.cnl.uk.net ([46.37.55.90] helo=bender.lan) by smtp3.cerberusmail.co.uk with smtp (Exim 4.76) (envelope-from ) id 1UXAal-0001aG-46; Tue, 30 Apr 2013 14:27:36 +0100 Date: Tue, 30 Apr 2013 14:27:01 +0100 From: Andrew Turner To: Grzegorz Bernacki Subject: Re: RFC: Patches with AXP support and pmap&smp fixes. Message-ID: <20130430142701.5bbfec2b@bender.lan> In-Reply-To: <517E8610.5050204@semihalf.com> References: <517E8610.5050204@semihalf.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable X-SA-Score: 2.0 X-SA-Report: "relay01.cerberus.net.uk", classified this message as SPAM. SPAM Score: 2.0 Scan Date: Tue, 30 Apr 2013 14:27:36 +0100 pts rule name description ---- ---------------------- -------------------------------------------------- 2.0 HELO_LH_HOME HELO_LH_HOME 0.0 TVD_RCVD_IP TVD_RCVD_IP Please consult your outgoing E-mail supplier's "E-mail Acceptable Use Policy" for further details. Cc: freebsd-arm@freebsd.org, Olivier Houchard X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Apr 2013 13:45:40 -0000 On Mon, 29 Apr 2013 16:39:12 +0200 Grzegorz Bernacki wrote: > Hi, >=20 > 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 >=20 > 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-ini= tialization-procedure.patch >=20 > This patch fixes race condition in pcpu_init function. pcpu_init=20 > performs operation on signly-linked tail queue and the queue can be=20 > corrupted by secondary cpus initialization. =46rom 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