From owner-freebsd-arm@FreeBSD.ORG Sun Nov 17 04:29:44 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D87227E7 for ; Sun, 17 Nov 2013 04:29:44 +0000 (UTC) Received: from mail-pb0-f46.google.com (mail-pb0-f46.google.com [209.85.160.46]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A171D2733 for ; Sun, 17 Nov 2013 04:29:44 +0000 (UTC) Received: by mail-pb0-f46.google.com with SMTP id wz17so173848pbc.33 for ; Sat, 16 Nov 2013 20:29:38 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:content-type:mime-version:subject:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=pctDjK1K2JBhy86bgAg7Bjhl7nrxngcYHLKwEGScQv4=; b=nICXHYPk24LPnItzW71fqIF2yIn9ntT6p0/3VYHX9swkaoIj7CSbu6YWXj/oPHCyx4 kbu9T6cZwrvC6JS2b9OYo/e75BDlisD4UTz13SX5aod0WokMV66VshyFtPONchhHkr9T ADQ5JKthblgd2gwHmMrPirzd+cWPEPJ+e7LSRp9qB49DdsbTZNNSjHXQ2WyBSHKQ7x4C yc7pKS7g4mlZT0K/PXyxQqFYqP1vMZAVBZkFdHF1a9MpwRCIzFP0Fam+WNYKniroJIJB xHXdJd89aJOewWZ/O54+AJ78LX0ov+woSN/UbejABL3POfXJZ+EwRiCemyDdmPWvLort rK/g== X-Gm-Message-State: ALoCoQlwmD49TxU778SeFGqfUXwDYPyZ7qwoEvMYvq7qI5JfCAz+9Jz+I6JoWRv7PMUrXwRmuJfX X-Received: by 10.66.119.136 with SMTP id ku8mr14694112pab.121.1384662578748; Sat, 16 Nov 2013 20:29:38 -0800 (PST) Received: from [192.168.2.126] (99-74-169-43.lightspeed.sntcca.sbcglobal.net. [99.74.169.43]) by mx.google.com with ESMTPSA id zq10sm16465786pab.6.2013.11.16.20.29.37 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 16 Nov 2013 20:29:38 -0800 (PST) Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.0 \(1822\)) Subject: Re: change in ARM uboot API From: Tim Kientzle In-Reply-To: Date: Sat, 16 Nov 2013 20:27:21 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: References: To: Leif Lindholm X-Mailer: Apple Mail (2.1822) Cc: freebsd-arm@freebsd.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Nov 2013 04:29:44 -0000 On Nov 16, 2013, at 9:53 AM, Leif Lindholm = wrote: > Hi, >=20 > (not subscribed from this address, so please cc on any response) >=20 > I came across a bit of an issue with the ARM uboot GRUB port today, > which I believe will also affect the FreeBSD loader: > = http://git.denx.de/cgi-bin/gitweb.cgi?p=3Du-boot.git;a=3Dcommit;h=3Dfe1378= a961e508b31b1f29a2bb08ba1dac063155 >=20 > In short, the global data pointer has now moved from r8 to r9, and > since no API bump was made as a result of this, software now needs to > preserve both of these registers across calls into u-boot. >=20 > If = http://svnweb.freebsd.org/base/head/sys/boot/arm/uboot/start.S?view=3Dmark= up > is the correct version to inspect, the current loader is affected. Thank you. I=92ll update that code to preserve both registers. Cheers, Tim Kientzle From owner-freebsd-arm@FreeBSD.ORG Mon Nov 18 09:17:15 2013 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 63FBB19D; Mon, 18 Nov 2013 09:17:15 +0000 (UTC) Received: from worker01.tb.des.no (worker01.tb.des.no [41.154.2.147]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8E1362944; Mon, 18 Nov 2013 09:17:14 +0000 (UTC) Received: from worker01.tb.des.no (localhost [127.0.0.1]) by worker01.tb.des.no (8.14.5/8.14.5) with ESMTP id rAI9HAnh088346; Mon, 18 Nov 2013 11:17:10 +0200 (SAST) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by worker01.tb.des.no (8.14.5/8.14.5/Submit) id rAI9HAw0088180; Mon, 18 Nov 2013 09:17:10 GMT (envelope-from tinderbox@freebsd.org) Date: Mon, 18 Nov 2013 09:17:10 GMT Message-Id: <201311180917.rAI9HAw0088180@worker01.tb.des.no> X-Authentication-Warning: worker01.tb.des.no: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Subject: [releng_10 tinderbox] failure on arm/arm Precedence: bulk X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Nov 2013 09:17:15 -0000 TB --- 2013-11-18 08:40:42 - tinderbox 2.20 running on worker01.tb.des.no TB --- 2013-11-18 08:40:42 - FreeBSD worker01.tb.des.no 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2013-11-18 08:40:42 - starting RELENG_10 tinderbox run for arm/arm TB --- 2013-11-18 08:40:42 - cleaning the object tree TB --- 2013-11-18 08:40:42 - /usr/local/bin/svn stat /src TB --- 2013-11-18 08:41:32 - At svn revision 258293 TB --- 2013-11-18 08:41:33 - building world TB --- 2013-11-18 08:41:33 - CROSS_BUILD_TESTING=YES TB --- 2013-11-18 08:41:33 - MAKEOBJDIRPREFIX=/obj TB --- 2013-11-18 08:41:33 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-11-18 08:41:33 - SRCCONF=/dev/null TB --- 2013-11-18 08:41:33 - TARGET=arm TB --- 2013-11-18 08:41:33 - TARGET_ARCH=arm TB --- 2013-11-18 08:41:33 - TZ=UTC TB --- 2013-11-18 08:41:33 - __MAKE_CONF=/dev/null TB --- 2013-11-18 08:41:33 - cd /src TB --- 2013-11-18 08:41:33 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Mon Nov 18 08:41:44 UTC 2013 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools [...] ranlib libclangparse.a ===> lib/clang/libclangsema (all) c++ -O2 -pipe -I/src/lib/clang/libclangsema/../../../contrib/llvm/include -I/src/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/include -I/src/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/lib/Sema -I. -I/src/lib/clang/libclangsema/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DNDEBUG -fno-strict-aliasing -DLLVM_DEFAULT_TARGET_TRIPLE=\"arm-gnueabi-freebsd10.0\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"/obj/arm.arm/src/tmp\" -I/obj/arm.arm/src/tmp/legacy/usr/include -fno-exceptions -fno-rtti -c /src/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp -o AnalysisBasedWarnings.o /src/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h: In member function 'bool clang::RecursiveASTVisitor::TraverseStmt(clang::Stmt*) [with Derived = ::FallthroughMapper]': /src/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h:523: internal compiler error: in var_ann, at tree-flow-inline.h:127 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. *** Error code 1 Stop. bmake[3]: stopped in /src/lib/clang/libclangsema *** Error code 1 Stop. bmake[2]: stopped in /src/lib/clang *** Error code 1 Stop. bmake[1]: stopped in /src *** Error code 1 Stop. bmake: stopped in /src *** [buildworld] Error code 1 Stop in /src. TB --- 2013-11-18 09:17:09 - WARNING: /usr/bin/make returned exit code 1 TB --- 2013-11-18 09:17:09 - ERROR: failed to build world TB --- 2013-11-18 09:17:09 - 1682.97 user 506.18 system 2186.48 real http://tinderbox.des.no/tinderbox-freebsd10-build-RELENG_10-arm-arm.full From owner-freebsd-arm@FreeBSD.ORG Mon Nov 18 11:06:46 2013 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 879B5970 for ; Mon, 18 Nov 2013 11:06:46 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5D96B207A for ; Mon, 18 Nov 2013 11:06:46 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rAIB6kbT008973 for ; Mon, 18 Nov 2013 11:06:46 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rAIB6j83008971 for freebsd-arm@FreeBSD.org; Mon, 18 Nov 2013 11:06:45 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 18 Nov 2013 11:06:45 GMT Message-Id: <201311181106.rAIB6j83008971@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-arm@FreeBSD.org Subject: Current problem reports assigned to freebsd-arm@FreeBSD.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Nov 2013 11:06:46 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o arm/183926 arm Crash when ctrl-c while process is enter o arm/183740 arm mutex on some arm hardware requires dcache enabled o arm/183668 arm Panic when read unalign in ddb o arm/182544 arm [patch] ARM busdma_machdep-v6.c o arm/182060 arm make buildworld fails on Raspberry PI o arm/181722 arm gdb on ARM unable to sensibly debug core file from ass o arm/181718 arm threads caused hung on ARM/RPI o arm/181601 arm Sporadic failure of root mount on ARM/Raspberry o arm/180080 arm Unmapped buffers on ARMv7 big-RAM boards o arm/179688 arm [patch] [rpi] serial console eats some characters at m o arm/179532 arm wireless networking on ARM o arm/178495 arm buildworld fail on arm/raspberry pi o arm/177687 arm gdb gets installed but does not know the EABI version o arm/177686 arm assertion failed in ld-elf.so.1 when invoking telnet w o arm/177685 arm [kernel] [patch] Correct return type and usage of at91 o arm/177538 arm tunefs(8) and mount(8) can not access a newfs(8)'d fil o arm/175803 arm building xdev for arm failing o arm/175605 arm please fix build binutils-2.23.1 in raspberry pi o arm/173617 arm Dreamplug exhibits eSATA file corruption using network o kern/171096 arm [arm][xscale][ixp]Allow 16bit access on PCI bus o arm/166256 arm build fail in pmap.c o arm/162159 arm [panic] USB errors leading to panic on DockStar 9.0-RC o arm/161110 arm /usr/src/sys/arm/include/signal.h is bad o arm/161044 arm devel/icu does not build on arm o arm/158950 arm arm/sheevaplug fails fsx when mmap operations are enab o arm/155894 arm [patch] Enable at91 booting from SDHC (high capacity) p arm/155214 arm [patch] MMC/SD IO slow on Atmel ARM with modern large o arm/154227 arm [geli] using GELI leads to panic on ARM o arm/153380 arm Panic / translation fault with wlan on ARM o arm/150581 arm [irq] Unknown error generates IRQ address decoding err o arm/134368 arm [new driver] [patch] nslu2_led driver for the LEDs on 31 problems total. From owner-freebsd-arm@FreeBSD.ORG Tue Nov 19 10:10:01 2013 Return-Path: Delivered-To: freebsd-arm@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 027305E5 for ; Tue, 19 Nov 2013 10:10:00 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BE7A72251 for ; Tue, 19 Nov 2013 10:10:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rAJAA0EI067506 for ; Tue, 19 Nov 2013 10:10:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rAJAA08Q067505; Tue, 19 Nov 2013 10:10:00 GMT (envelope-from gnats) Resent-Date: Tue, 19 Nov 2013 10:10:00 GMT Resent-Message-Id: <201311191010.rAJAA08Q067505@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-arm@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Matthias Meyser Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A9D0D5B7 for ; Tue, 19 Nov 2013 10:07:57 +0000 (UTC) Received: from oldred.freebsd.org (oldred.freebsd.org [8.8.178.121]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 802302239 for ; Tue, 19 Nov 2013 10:07:57 +0000 (UTC) Received: from oldred.freebsd.org ([127.0.1.6]) by oldred.freebsd.org (8.14.5/8.14.7) with ESMTP id rAJA7vWx052476 for ; Tue, 19 Nov 2013 10:07:57 GMT (envelope-from nobody@oldred.freebsd.org) Received: (from nobody@localhost) by oldred.freebsd.org (8.14.5/8.14.5/Submit) id rAJA7vod052473; Tue, 19 Nov 2013 10:07:57 GMT (envelope-from nobody) Message-Id: <201311191007.rAJA7vod052473@oldred.freebsd.org> Date: Tue, 19 Nov 2013 10:07:57 GMT From: Matthias Meyser To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: arm/184078: cross installworld missing include files X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 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, 19 Nov 2013 10:10:01 -0000 >Number: 184078 >Category: arm >Synopsis: cross installworld missing include files >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-arm >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Nov 19 10:10:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: Matthias Meyser >Release: 9.2-PRERELEASE #0 r255142 >Organization: XeNET GmbH >Environment: FreeBSD iser01.lan.xenet.de 9.2-PRERELEASE FreeBSD 9.2-PRERELEASE #0 r255142: Mon Sep 2 18:18:09 CEST 2013 root@iser01.lan.xenet.de:/usr/obj/usr/src/sys/ISER01 i386 >Description: If I crosscompile for arm (Beaglebone Black) with a recent stable-10 sources and then do an cross installworld / installkernel "/usr/include/c++/4.2/" contains no files. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: From owner-freebsd-arm@FreeBSD.ORG Wed Nov 20 00:50:01 2013 Return-Path: Delivered-To: freebsd-arm@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A2F4A390 for ; Wed, 20 Nov 2013 00:50:01 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 913242A0E for ; Wed, 20 Nov 2013 00:50:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rAK0o19b067575 for ; Wed, 20 Nov 2013 00:50:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rAK0o0SQ067560; Wed, 20 Nov 2013 00:50:00 GMT (envelope-from gnats) Date: Wed, 20 Nov 2013 00:50:00 GMT Message-Id: <201311200050.rAK0o0SQ067560@freefall.freebsd.org> To: freebsd-arm@FreeBSD.org Cc: From: Howard Su Subject: Re: arm/183926: Crash when ctrl-c while process is enter X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list Reply-To: Howard Su List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Nov 2013 00:50:01 -0000 The following reply was made to PR arm/183926; it has been noted by GNATS. From: Howard Su To: bug-followup@freebsd.org Cc: Subject: Re: arm/183926: Crash when ctrl-c while process is enter Date: Wed, 20 Nov 2013 08:42:24 +0800 --001a11343d08fbe31b04eb910db8 Content-Type: text/plain; charset=ISO-8859-1 it was an artifact of experimental code. This is confirmed by me and Ian@so that this is not able to reproduce in stock kernel. -- -Howard --001a11343d08fbe31b04eb910db8 Content-Type: text/html; charset=ISO-8859-1 it was an artifact of experimental code. This is confirmed by me and Ian@ so that this is not able to reproduce in stock kernel.

--
-Howard
--001a11343d08fbe31b04eb910db8-- From owner-freebsd-arm@FreeBSD.ORG Wed Nov 20 16:00:01 2013 Return-Path: Delivered-To: freebsd-arm@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 92C19D4A for ; Wed, 20 Nov 2013 16:00:01 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6902E2559 for ; Wed, 20 Nov 2013 16:00:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rAKG01G3077281 for ; Wed, 20 Nov 2013 16:00:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rAKG01Hn077279; Wed, 20 Nov 2013 16:00:01 GMT (envelope-from gnats) Date: Wed, 20 Nov 2013 16:00:01 GMT Message-Id: <201311201600.rAKG01Hn077279@freefall.freebsd.org> To: freebsd-arm@FreeBSD.org Cc: From: dfilter@FreeBSD.ORG (dfilter service) Subject: Re: arm/183740: commit references a PR X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list Reply-To: dfilter service List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Nov 2013 16:00:01 -0000 The following reply was made to PR arm/183740; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: arm/183740: commit references a PR Date: Wed, 20 Nov 2013 15:53:57 +0000 (UTC) Author: ian Date: Wed Nov 20 15:53:50 2013 New Revision: 258392 URL: http://svnweb.freebsd.org/changeset/base/258392 Log: Call cpu_setup() immediately after the page tables are installed. This enables data cache and other chip-specific features. It was previously done via an early SYSINIT, but it was being done after pmap and vm setup, and those setups need to use mutexes. On some modern ARM platforms, the ldrex/strex instructions that implement mutexes require the data cache to be enabled. A nice side effect of enabling caching earlier is that it eliminates the multi-second pause that used to happen early in boot while physical memory and pmap and vm were being set up. On boards with 1 GB or more of ram this pause was very noticible, sometimes 5-6 seconds. PR: arm/183740 Modified: head/sys/arm/arm/machdep.c Modified: head/sys/arm/arm/machdep.c ============================================================================== --- head/sys/arm/arm/machdep.c Wed Nov 20 13:22:22 2013 (r258391) +++ head/sys/arm/arm/machdep.c Wed Nov 20 15:53:50 2013 (r258392) @@ -361,7 +361,6 @@ cpu_startup(void *dummy) #endif #endif - cpu_setup(""); identify_arm_cpu(); printf("real memory = %ju (%ju MB)\n", (uintmax_t)ptoa(physmem), @@ -1431,6 +1430,12 @@ initarm(struct arm_boot_params *abp) cpu_domains(DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL * 2)); /* + * Now that proper page tables are installed, call cpu_setup() to enable + * instruction and data caches and other chip-specific features. + */ + cpu_setup(""); + + /* * Only after the SOC registers block is mapped we can perform device * tree fixups, as they may attempt to read parameters from hardware. */ _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-freebsd-arm@FreeBSD.ORG Wed Nov 20 23:22:30 2013 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04F8C28D; Wed, 20 Nov 2013 23:22:30 +0000 (UTC) Received: from worker01.tb.des.no (worker01.tb.des.no [41.154.2.147]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3E3592137; Wed, 20 Nov 2013 23:22:28 +0000 (UTC) Received: from worker01.tb.des.no (localhost [127.0.0.1]) by worker01.tb.des.no (8.14.5/8.14.5) with ESMTP id rAKNMPw9072462; Thu, 21 Nov 2013 01:22:25 +0200 (SAST) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by worker01.tb.des.no (8.14.5/8.14.5/Submit) id rAKNMPee072461; Wed, 20 Nov 2013 23:22:25 GMT (envelope-from tinderbox@freebsd.org) Date: Wed, 20 Nov 2013 23:22:25 GMT Message-Id: <201311202322.rAKNMPee072461@worker01.tb.des.no> X-Authentication-Warning: worker01.tb.des.no: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Subject: [releng_10 tinderbox] failure on arm/arm Precedence: bulk X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Nov 2013 23:22:30 -0000 TB --- 2013-11-20 22:00:43 - tinderbox 2.20 running on worker01.tb.des.no TB --- 2013-11-20 22:00:43 - FreeBSD worker01.tb.des.no 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2013-11-20 22:00:43 - starting RELENG_10 tinderbox run for arm/arm TB --- 2013-11-20 22:00:43 - cleaning the object tree TB --- 2013-11-20 22:00:43 - /usr/local/bin/svn stat /src TB --- 2013-11-20 22:01:36 - At svn revision 258405 TB --- 2013-11-20 22:01:37 - building world TB --- 2013-11-20 22:01:37 - CROSS_BUILD_TESTING=YES TB --- 2013-11-20 22:01:37 - MAKEOBJDIRPREFIX=/obj TB --- 2013-11-20 22:01:37 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-11-20 22:01:37 - SRCCONF=/dev/null TB --- 2013-11-20 22:01:37 - TARGET=arm TB --- 2013-11-20 22:01:37 - TARGET_ARCH=arm TB --- 2013-11-20 22:01:37 - TZ=UTC TB --- 2013-11-20 22:01:37 - __MAKE_CONF=/dev/null TB --- 2013-11-20 22:01:37 - cd /src TB --- 2013-11-20 22:01:37 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Wed Nov 20 22:01:48 UTC 2013 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools [...] c++ -O2 -pipe -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/tools/clang/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC -I. -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DNDEBUG -fno-strict-aliasing -DLLVM_DEFAULT_TARGET_TRIPLE=\"arm-gnueabi-freebsd10.0\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"/obj/arm.arm/src/tmp\" -I/obj/arm.arm/src/tmp/legacy/usr/include -fno-exceptions -fno-rtti -c /src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp -o PPCSelectionDAGInfo.o c++ -O2 -pipe -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/tools/clang/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC -I. -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DNDEBUG -fno-strict-aliasing -DLLVM_DEFAULT_TARGET_TRIPLE=\"arm-gnueabi-freebsd10.0\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"/obj/arm.arm/src/tmp\" -I/obj/arm.arm/src/tmp/legacy/usr/include -fno-exceptions -fno-rtti -c /src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC/PPCSubtarget.cpp -o PPCSubtarget.o c++ -O2 -pipe -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/tools/clang/include -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC -I. -I/src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/../../lib/clang/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DNDEBUG -fno-strict-aliasing -DLLVM_DEFAULT_TARGET_TRIPLE=\"arm-gnueabi-freebsd10.0\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd10.0\" -DDEFAULT_SYSROOT=\"/obj/arm.arm/src/tmp\" -I/obj/arm.arm/src/tmp/legacy/usr/include -fno-exceptions -fno-rtti -c /src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp -o PPCTargetMachine.o /src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.h: In destructor 'virtual llvm::PPCTargetMachine::~PPCTargetMachine()': /src/lib/clang/libllvmpowerpccodegen/../../../contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.h:30: internal compiler error: Segmentation fault: 11 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. *** Error code 1 Stop. bmake[3]: stopped in /src/lib/clang/libllvmpowerpccodegen *** Error code 1 Stop. bmake[2]: stopped in /src/lib/clang *** Error code 1 Stop. bmake[1]: stopped in /src *** Error code 1 Stop. bmake: stopped in /src *** [buildworld] Error code 1 Stop in /src. TB --- 2013-11-20 23:22:25 - WARNING: /usr/bin/make returned exit code 1 TB --- 2013-11-20 23:22:25 - ERROR: failed to build world TB --- 2013-11-20 23:22:25 - 4060.55 user 859.74 system 4902.35 real http://tinderbox.des.no/tinderbox-freebsd10-build-RELENG_10-arm-arm.full From owner-freebsd-arm@FreeBSD.ORG Thu Nov 21 13:32:21 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4ACDFFAC for ; Thu, 21 Nov 2013 13:32:21 +0000 (UTC) Received: from master.backend3.mail.corp.hostcomm.ru (master.backend3.mail.corp.hostcomm.ru [89.104.90.63]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CDECC27E6 for ; Thu, 21 Nov 2013 13:32:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.corp.hostcomm.ru; s=y2013-b1-a; h=Content-Type:Subject:To:MIME-Version:From:Date:Message-ID; bh=X+3pnyUrWYMZY43biGCc8s2npqNZU/KeFDdWITUTVig=; b=uwNDv0AhKbPipHPlgFl9d8PlPw53v/09n05mJroM4NiIeDzIw7HtUaASToFx9oaDmdySjsCG7qh3HiOEsKau9wSKPfriXh0afOmO8XXvgjF9bjZTNJyTUnNKOzRRzHYC3nKRaeePRdKZmHhFfGVZvpO7IKzbMAJiYbPLeacEIFA=; Received: from authenticated user by master.backend3.mail.corp.hostcomm.ru with esmtpa id 1VjUHI-000LkI-4m; Thu, 21 Nov 2013 13:26:40 +0000 Message-ID: <528E0A1B.9030207@hostcomm.ru> Date: Thu, 21 Nov 2013 17:26:51 +0400 From: Andrew Grishkov User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.0 MIME-Version: 1.0 To: freebsd-arm@freebsd.org Subject: raspberry-PI & analog sound Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha1; boundary="------------ms020602080506090906060102" X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Nov 2013 13:32:21 -0000 This is a cryptographically signed message in MIME format. --------------ms020602080506090906060102 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Sup guys! Does Freebsd-CURRENT supports analog audio on raspberry-PI rev.= B? --------------ms020602080506090906060102 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIKTzCC BRowggQCoAMCAQICEG0Z6qcZT2ozIuYiMnqqcd4wDQYJKoZIhvcNAQEFBQAwga4xCzAJBgNV BAYTAlVTMQswCQYDVQQIEwJVVDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkxHjAcBgNVBAoT FVRoZSBVU0VSVFJVU1QgTmV0d29yazEhMB8GA1UECxMYaHR0cDovL3d3dy51c2VydHJ1c3Qu Y29tMTYwNAYDVQQDEy1VVE4tVVNFUkZpcnN0LUNsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQg RW1haWwwHhcNMTEwNDI4MDAwMDAwWhcNMjAwNTMwMTA0ODM4WjCBkzELMAkGA1UEBhMCR0Ix GzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE ChMRQ09NT0RPIENBIExpbWl0ZWQxOTA3BgNVBAMTMENPTU9ETyBDbGllbnQgQXV0aGVudGlj YXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAJKEhFtLV5jUXi+LpOFAyKNTWF9mZfEyTvefMn1V0HhMVbdClOD5J3EHxcZppLkyxPFA GpDMJ1Zifxe1cWmu5SAb5MtjXmDKokH2auGj/7jfH0htZUOMKi4rYzh337EXrMLaggLW1DJq 1GdvIBOPXDX65VSAr9hxCh03CgJQU2yVHakQFLSZlVkSMf8JotJM3FLb3uJAAVtIaN3FSrTg 7SQfOq9xXwfjrL8UO7AlcWg99A/WF1hGFYE8aIuLgw9teiFX5jSw2zJ+40rhpVJyZCaRTqWS D//gsWD9Gm9oUZljjRqLpcxCm5t9ImPTqaD8zp6Q30QZ9FxbNboW86eb/8ECAwEAAaOCAUsw ggFHMB8GA1UdIwQYMBaAFImCZ33EnSZwAEu0UEh83j2uBG59MB0GA1UdDgQWBBR6E04AdFvG eGNkJ8Ev4qBbvHnFezAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADARBgNV HSAECjAIMAYGBFUdIAAwWAYDVR0fBFEwTzBNoEugSYZHaHR0cDovL2NybC51c2VydHJ1c3Qu Y29tL1VUTi1VU0VSRmlyc3QtQ2xpZW50QXV0aGVudGljYXRpb25hbmRFbWFpbC5jcmwwdAYI KwYBBQUHAQEEaDBmMD0GCCsGAQUFBzAChjFodHRwOi8vY3J0LnVzZXJ0cnVzdC5jb20vVVRO QWRkVHJ1c3RDbGllbnRfQ0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1 c3QuY29tMA0GCSqGSIb3DQEBBQUAA4IBAQCF1r54V1VtM39EUv5C1QaoAQOAivsNsv1Kv/av QUn1G1rF0q0bc24+6SZ85kyYwTAo38v7QjyhJT4KddbQPTmGZtGhm7VNm2+vKGwdr+XqdFqo 2rHA8XV6L566k3nK/uKRHlZ0sviN0+BDchvtj/1gOSBH+4uvOmVIPJg9pSW/ve9g4EnlFsjr P0OD8ODuDcHTzTNfm9C9YGqzO/761Mk6PB/tm/+bSTO+Qik5g+4zaS6CnUVNqGnagBsePdIa XXxHmaWbCG0SmYbWXVcHG6cwvktJRLiQfsrReTjrtDP6oDpdJlieYVUYtCHVmdXgQ0BCML7q peeU0rD+83X5f27nMIIFLTCCBBWgAwIBAgIQESTEucNp/WqP67FK/+Re/zANBgkqhkiG9w0B AQUFADCBkzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxOTA3BgNVBAMTMENP TU9ETyBDbGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTAeFw0xMjEy MTAwMDAwMDBaFw0xMzEyMTAyMzU5NTlaMCcxJTAjBgkqhkiG9w0BCQEWFmEuZ3Jpc2hrb3ZA aG9zdGNvbW0ucnUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD0v//lo9fI3aCB 2Ce6CfzOLmMa7NQl7OkI/CWbOlMbmyPRKdu3ESkBGLvcVUlC5dH2px+FeWYi50kTQNtH2+L2 eVIcR5SKfBqo3boGnmvv28MUetEuiN8BPYuJoUwJLHuGAXZ7eRZxKK4SwmQonU+RZnyH70+2 cMN+W1DQMWLQjipb2SbDjpi4I7kgUvkZ9x1nSAQUVhoGq1r9t0d/y9IN/BwBks2Cmvq2MszR VA6ZmNU19BlDwPKiqDha190rGlraWnuVVEUNUAzLWo3+bE//KO/Pg52zRudQz/285eL2Jkcs TxXacDU/PWKSo200Fj+SKlGdbbYGE+QEPAj9/zQRAgMBAAGjggHmMIIB4jAfBgNVHSMEGDAW gBR6E04AdFvGeGNkJ8Ev4qBbvHnFezAdBgNVHQ4EFgQUKmlK2QCo6CbC2pQSGP8xpL3yyNAw DgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwIAYDVR0lBBkwFwYIKwYBBQUHAwQGCysG AQQBsjEBAwUCMBEGCWCGSAGG+EIBAQQEAwIFIDBGBgNVHSAEPzA9MDsGDCsGAQQBsjEBAgEB ATArMCkGCCsGAQUFBwIBFh1odHRwczovL3NlY3VyZS5jb21vZG8ubmV0L0NQUzBXBgNVHR8E UDBOMEygSqBIhkZodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9DbGllbnRBdXRoZW50 aWNhdGlvbmFuZFNlY3VyZUVtYWlsQ0EuY3JsMIGIBggrBgEFBQcBAQR8MHowUgYIKwYBBQUH MAKGRmh0dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET0NsaWVudEF1dGhlbnRpY2F0aW9u YW5kU2VjdXJlRW1haWxDQS5jcnQwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmNvbW9kb2Nh LmNvbTAhBgNVHREEGjAYgRZhLmdyaXNoa292QGhvc3Rjb21tLnJ1MA0GCSqGSIb3DQEBBQUA A4IBAQA6/51/BD/9lczEsKwE/mJ4cPKBX1xXcRufcE/2jov2Lju1P7nEE3q9dVdsSWxh35j/ z/XmGN+qeq/yUhoru5g2St45V/mFCEajcdTu8DVAD6wBunZLF61yKwJIZ+YY4kLZ7MhVyfSl amuyZxiZFdUuX5SClZ32HWwjeJ6xTrn80e35yyTYgr0jvsOcBMOq7nUncB5Ld7tSI1YoPTSh 6BpBn3KB519YYbyhr7opdUPogfkVbpV1J5DDsHzCsEO68W2fLE4J8rIfPDzqdoSHWMP96zoo uHHgwstMaDYipkxDQmTiZJrc9Z37waSS3HTZkP7Rx8V5qy9U0dEGFfqRfIR8MYIEGTCCBBUC AQEwgagwgZMxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMTkwNwYDVQQDEzBD T01PRE8gQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0ECEBEkxLnD af1qj+uxSv/kXv8wCQYFKw4DAhoFAKCCAkUwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAc BgkqhkiG9w0BCQUxDxcNMTMxMTIxMTMyNjUxWjAjBgkqhkiG9w0BCQQxFgQUY0qzHWWfwj+g 1zodNO9cKvy7Aj8wbAYJKoZIhvcNAQkPMV8wXTALBglghkgBZQMEASowCwYJYIZIAWUDBAEC MAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzAN BggqhkiG9w0DAgIBKDCBuQYJKwYBBAGCNxAEMYGrMIGoMIGTMQswCQYDVQQGEwJHQjEbMBkG A1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFD T01PRE8gQ0EgTGltaXRlZDE5MDcGA1UEAxMwQ09NT0RPIENsaWVudCBBdXRoZW50aWNhdGlv biBhbmQgU2VjdXJlIEVtYWlsIENBAhARJMS5w2n9ao/rsUr/5F7/MIG7BgsqhkiG9w0BCRAC CzGBq6CBqDCBkzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQ MA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxOTA3BgNVBAMT MENPTU9ETyBDbGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIQESTE ucNp/WqP67FK/+Re/zANBgkqhkiG9w0BAQEFAASCAQABjM4QJc5RQztWxSeSg+RXgdRenkvQ YWSH1jO8tEaY/yTKn27ZZnZLlTaezUtfu4w35gtIXFcRGnZU8JFPUskR04tgSHeXb1thbcLg qpJ9LLrA8i9dnXraJQFlGBmadpA8ePh2+Lh7NqhQxkE03t7Mkc3oRvYS+Be13HCkemVtT19I lo1Nb3v+hrJt3H3mVvOpRZBi9rfGdhbG1TMlSKzIovcyI2Mmi2Vsxt4LDCJS+FtPDkAEM50E /Y7bA9owBgcDLT2zxrS2qmUhS6j2Tkc3NTkx+12rbgLF+2P0jRTNqmfOHmce74shzwFB6OkW RddaT3BTj3BGQqNuwh7kr4MjAAAAAAAA --------------ms020602080506090906060102-- From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 00:04:57 2013 Return-Path: Delivered-To: arm@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 639) id C86971B8; Fri, 22 Nov 2013 00:04:57 +0000 (UTC) Date: Fri, 22 Nov 2013 00:04:57 +0000 From: Olivier Houchard To: arm@freebsd.org Subject: arm SMP fix Message-ID: <20131122000457.GA44039@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="ZGiS0Q5IWpPtfppv" Content-Disposition: inline User-Agent: Mutt/1.5.22 (2013-10-16) X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 00:04:57 -0000 --ZGiS0Q5IWpPtfppv Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi all, Attached is the first draft to a patch that fixes SMP for me, it seems to work fine on my Pandaboard. The problem is, as it is currently implemented, curthread is basically defined as get_pcpu()->pc_curthread. If we get interrupted between the moment we got the struct pcpu, and the moment we derefence it to get the curthread pointer, and migrated to another core, we would get the wrong curthread, and that's not good. The proposed fix does the following : - use the register we used to use for pcpu for curthread - get the pcpu address by reading the cpu id from the CPUID register, and just use it as an index for the __pcpu array. It breaks the KBI, which is unfortunate, but I think it is no big deal for arm right now. Any review, comment, and testing, even on UP boards, would be very welcome. Regards, Olivier --ZGiS0Q5IWpPtfppv Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="arm_smp_fix.diff" Index: include/asmacros.h =================================================================== --- include/asmacros.h (revision 258395) +++ include/asmacros.h (working copy) @@ -236,15 +236,15 @@ #ifdef _ARM_ARCH_6 #define AST_LOCALS #define GET_CURTHREAD_PTR(tmp) \ - mrc p15, 0, tmp, c13, c0, 4; \ - add tmp, tmp, #(PC_CURTHREAD) + mrc p15, 0, tmp, c13, c0, 4 #else #define AST_LOCALS ;\ .Lcurthread: ;\ .word _C_LABEL(__pcpu) + PC_CURTHREAD #define GET_CURTHREAD_PTR(tmp) \ - ldr tmp, .Lcurthread + ldr tmp, .Lcurthread \ + ldr tmp, [tmp] #endif #define DO_AST \ @@ -257,7 +257,6 @@ bne 2f /* Nope, get out now */ ;\ bic r4, r4, #(I32_bit|F32_bit) ;\ 1: GET_CURTHREAD_PTR(r5) ;\ - ldr r5, [r5] ;\ ldr r1, [r5, #(TD_FLAGS)] ;\ and r1, r1, #(TDF_ASTPENDING|TDF_NEEDRESCHED) ;\ teq r1, #0x00000000 ;\ Index: include/pcpu.h =================================================================== --- include/pcpu.h (revision 258395) +++ include/pcpu.h (working copy) @@ -62,22 +62,32 @@ extern struct pcpu *pcpup; #if ARM_ARCH_6 || ARM_ARCH_7A /* or ARM_TP_ADDRESS mark REMOVE ME NOTE */ -static inline struct pcpu * -get_pcpu(void) + +#define CPU_MASK (0x15) + +#define get_pcpu() __extension__ ({ \ + int id; \ + __asm __volatile("mrc p15, 0, %0, c0, c0, 5" : "=r" (id)); \ + (pcpup + (id & CPU_MASK)); \ + }) + +static inline struct thread * +get_curthread(void) { - void *pcpu; + void *ret; - __asm __volatile("mrc p15, 0, %0, c13, c0, 4" : "=r" (pcpu)); - return (pcpu); + __asm __volatile("mrc p15, 0, %0, c13, c0, 4" : "=r" (ret)); + return (ret); } static inline void -set_pcpu(void *pcpu) +set_curthread(struct thread *td) { - __asm __volatile("mcr p15, 0, %0, c13, c0, 4" : : "r" (pcpu)); + __asm __volatile("mcr p15, 0, %0, c13, c0, 4" : : "r" (td)); } + static inline void * get_tls(void) { @@ -93,6 +103,9 @@ __asm __volatile("mcr p15, 0, %0, c13, c0, 3" : : "r" (tls)); } + +#define curthread get_curthread() + #else #define get_pcpu() pcpup #endif Index: arm/copystr.S =================================================================== --- arm/copystr.S (revision 258395) +++ arm/copystr.S (working copy) @@ -53,7 +53,7 @@ #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ mrc p15, 0, tmp, c13, c0, 4; \ - add tmp, tmp, #(PC_CURPCB) + add tmp, tmp, #(TD_PCB) #else .Lpcb: .word _C_LABEL(__pcpu) + PC_CURPCB Index: arm/genassym.c =================================================================== --- arm/genassym.c (revision 258395) +++ arm/genassym.c (working copy) @@ -139,3 +139,4 @@ ASSYM(MAXCOMLEN, MAXCOMLEN); ASSYM(NIRQ, NIRQ); +ASSYM(PCPU_SIZE, sizeof(struct pcpu)); Index: arm/mp_machdep.c =================================================================== --- arm/mp_machdep.c (revision 258395) +++ arm/mp_machdep.c (working copy) @@ -177,7 +177,6 @@ cpu_tlb_flushID(); pc = &__pcpu[cpu]; - set_pcpu(pc); /* * pcpu_init() updates queue, so it should not be executed in parallel @@ -203,6 +202,7 @@ KASSERT(PCPU_GET(idlethread) != NULL, ("no idle thread")); pc->pc_curthread = pc->pc_idlethread; pc->pc_curpcb = pc->pc_idlethread->td_pcb; + set_curthread(pc->pc_idlethread); #ifdef VFP pc->pc_cpu = cpu; Index: arm/machdep.c =================================================================== --- arm/machdep.c (revision 258395) +++ arm/machdep.c (working copy) @@ -870,7 +870,7 @@ pcpu0_init(void) { #if ARM_ARCH_6 || ARM_ARCH_7A || defined(CPU_MV_PJ4B) - set_pcpu(pcpup); + set_curthread(&thread0); #endif pcpu_init(pcpup, 0, sizeof(struct pcpu)); PCPU_SET(curthread, &thread0); Index: arm/fusu.S =================================================================== --- arm/fusu.S (revision 258395) +++ arm/fusu.S (working copy) @@ -42,7 +42,7 @@ #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ mrc p15, 0, tmp, c13, c0, 4; \ - add tmp, tmp, #(PC_CURPCB) + add tmp, tmp, #(TD_PCB) #else .Lcurpcb: .word _C_LABEL(__pcpu) + PC_CURPCB Index: arm/swtch.S =================================================================== --- arm/swtch.S (revision 258395) +++ arm/swtch.S (working copy) @@ -89,16 +89,22 @@ #define DOMAIN_CLIENT 0x01 #ifdef _ARM_ARCH_6 -#define GET_PCPU(tmp) \ - mrc p15, 0, tmp, c13, c0, 4; +#define GET_PCPU(tmp, tmp2) \ + mrc p15, 0, tmp, c0, c0, 5; \ + and tmp, tmp, #0xf; \ + ldr tmp2, .Lcurpcpu+4; \ + mul tmp, tmp, tmp2; \ + ldr tmp2, .Lcurpcpu; \ + add tmp, tmp, tmp2; #else -.Lcurpcpu: - .word _C_LABEL(__pcpu) -#define GET_PCPU(tmp) \ +#define GET_PCPU(tmp, tmp2) \ ldr tmp, .Lcurpcpu #endif +.Lcurpcpu: + .word _C_LABEL(__pcpu) + .word PCPU_SIZE .Lcpufuncs: .word _C_LABEL(cpufuncs) .Lblocked_lock: @@ -112,7 +118,7 @@ * r5 = newtd */ - GET_PCPU(r7) + GET_PCPU(r7, r9) #ifdef VFP /* @@ -191,10 +197,15 @@ ldr r13, [r7, #(PCB_SP)] #endif + GET_PCPU(r6, r4) + /* Hook in a new pcb */ + str r7, [r6, #PC_CURPCB] /* We have a new curthread now so make a note it */ - GET_CURTHREAD_PTR(r6) + add r6, r6, #PC_CURTHREAD str r5, [r6] - +#ifndef ARM_TP_ADDRESS + mcr p15, 0, r5, c13, c0, 4 +#endif /* Set the new tp */ ldr r6, [r5, #(TD_MD + MD_TP)] #ifdef ARM_TP_ADDRESS @@ -207,9 +218,6 @@ #else mcr p15, 0, r6, c13, c0, 3 #endif - /* Hook in a new pcb */ - GET_PCPU(r6) - str r7, [r6, #PC_CURPCB] add sp, sp, #4; ldmfd sp!, {r4-r7, pc} @@ -231,11 +239,14 @@ /* Process is now on a processor. */ /* We have a new curthread now so make a note it */ - GET_CURTHREAD_PTR(r7) + GET_PCPU(r7, r2) + add r7, r7, #PC_CURTHREAD str r1, [r7] +#ifndef ARM_TP_ADDRESS + mcr p15, 0, r1, c13, c0, 4 +#endif /* Hook in a new pcb */ - GET_PCPU(r7) ldr r2, [r1, #TD_PCB] str r2, [r7, #PC_CURPCB] @@ -315,7 +326,7 @@ * a future exception will bounce the backup settings in the fp unit. * XXX vfp_store can't change r4 */ - GET_PCPU(r7) + GET_PCPU(r7, r8) ldr r8, [r7, #(PC_VFPCTHREAD)] cmp r4, r8 /* old thread used vfp? */ bne 1f /* no, don't save */ @@ -439,7 +450,7 @@ str r6, [r4, #TD_LOCK] #if defined(SCHED_ULE) && defined(SMP) ldr r6, .Lblocked_lock - GET_CURTHREAD_PTR(r3) + mrc p15, 0, r3, c13, c0, 4 1: ldr r4, [r3, #TD_LOCK] @@ -516,7 +527,7 @@ * registers and state, and modify the control as needed. * a future exception will bounce the backup settings in the fp unit. */ - GET_PCPU(r7) + GET_PCPU(r7, r4) ldr r4, [r7, #(PC_VFPCTHREAD)] /* vfp thread */ ldr r2, [r7, #(PC_CURTHREAD)] /* current thread */ cmp r4, r2 Index: arm/bcopyinout.S =================================================================== --- arm/bcopyinout.S (revision 258395) +++ arm/bcopyinout.S (working copy) @@ -57,7 +57,7 @@ #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ mrc p15, 0, tmp, c13, c0, 4; \ - add tmp, tmp, #(PC_CURPCB) + add tmp, tmp, #(TD_PCB) #else .Lcurpcb: .word _C_LABEL(__pcpu) + PC_CURPCB Index: arm/pmap-v6.c =================================================================== --- arm/pmap-v6.c (revision 258395) +++ arm/pmap-v6.c (working copy) @@ -1978,7 +1978,7 @@ cpu_tlb_flushID(); cpu_cpwait(); if (vector_page < KERNBASE) { - struct pcb *curpcb = PCPU_GET(curpcb); + struct pcb *curpcb = curthread->td_pcb; pcb = thread0.td_pcb; if (pmap_is_current(pmap)) { /* Index: arm/vfp.c =================================================================== --- arm/vfp.c (revision 258395) +++ arm/vfp.c (working copy) @@ -140,12 +140,15 @@ u_int fpexc; struct pcb *curpcb; struct thread *vfptd; + int i; if (!vfp_exists) return 1; /* vfp does not exist */ fpexc = fmrx(VFPEXC); /* read the vfp exception reg */ if (fpexc & VFPEXC_EN) { + i = disable_interrupts(I32_bit|F32_bit); vfptd = PCPU_GET(vfpcthread); + restore_interrupts(i); /* did the kernel call the vfp or exception that expect us * to emulate the command. Newer hardware does not require * emulation, so we don't emulate yet. @@ -173,7 +176,7 @@ } fpexc |= VFPEXC_EN; fmxr(VFPEXC, fpexc); /* enable the vfp and repeat command */ - curpcb = PCPU_GET(curpcb); + curpcb = curthread->td_pcb; /* If we were the last process to use the VFP, the process did not * use a VFP on another processor, then the registers in the VFP * will still be ours and are current. Eventually, we will make the @@ -183,7 +186,9 @@ #ifdef SMP curpcb->pcb_vfpcpu = PCPU_GET(cpu); #endif - PCPU_SET(vfpcthread, PCPU_GET(curthread)); + i = disable_interrupts(I32_bit|F32_bit); + PCPU_SET(vfpcthread, curthread); + restore_interrupts(i); return 0; } @@ -218,7 +223,6 @@ "ldr %0, [%1]\n" /* set old vfpscr */ "mcr p10, 7, %0, cr1, c0, 0\n" : "=&r" (vfpscr) : "r" (vfpsave), "r" (is_d32) : "cc"); - PCPU_SET(vfpcthread, PCPU_GET(curthread)); } } @@ -265,6 +269,12 @@ { u_int tmp = 0; + /* + * No need to protect the access to vfpcthread by disabling + * interrupts, since it's called from cpu_throw(), who is called + * with interrupts disabled. + */ + PCPU_SET(vfpcthread, 0); /* permanent forget about reg */ tmp = fmrx(VFPEXC); tmp &= ~VFPEXC_EN; /* turn off VFP hardware */ Index: arm/bcopyinout_xscale.S =================================================================== --- arm/bcopyinout_xscale.S (revision 258395) +++ arm/bcopyinout_xscale.S (working copy) @@ -44,7 +44,7 @@ #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ mrc p15, 0, tmp, c13, c0, 4; \ - add tmp, tmp, #(PC_CURPCB) + add tmp, tmp, #(TD_PCB) #else .Lcurpcb: .word _C_LABEL(__pcpu) + PC_CURPCB --ZGiS0Q5IWpPtfppv-- From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 07:19:25 2013 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5B3B8DA1; Fri, 22 Nov 2013 07:19:25 +0000 (UTC) Received: from mail.bsdpad.com (mail.bsdpad.com [109.107.176.56]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 16FAF2DE3; Fri, 22 Nov 2013 07:19:21 +0000 (UTC) Received: from mail.bsdpad.com ([109.107.176.56]) by mail.bsdpad.com with smtp (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1Vjl3c-0002ok-MN; Fri, 22 Nov 2013 11:21:40 +0400 Received: by mail.bsdpad.com (nbSMTP-1.00) for uid 1001 br@mail.bsdpad.com; Fri, 22 Nov 2013 11:21:40 +0400 (MSK) Date: Fri, 22 Nov 2013 11:21:40 +0400 From: Ruslan Bukin To: Olivier Houchard Subject: Re: arm SMP fix Message-ID: <20131122072140.GA709@mail.bsdpad.com> References: <20131122000457.GA44039@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20131122000457.GA44039@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: arm@freebsd.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 07:19:25 -0000 On Fri, Nov 22, 2013 at 12:04:57AM +0000, Olivier Houchard wrote: > Hi all, > > Attached is the first draft to a patch that fixes SMP for me, it seems to > work fine on my Pandaboard. > The problem is, as it is currently implemented, curthread is basically > defined as get_pcpu()->pc_curthread. If we get interrupted between the moment > we got the struct pcpu, and the moment we derefence it to get the curthread > pointer, and migrated to another core, we would get the wrong curthread, and > that's not good. > The proposed fix does the following : > - use the register we used to use for pcpu for curthread > - get the pcpu address by reading the cpu id from the CPUID register, and > just use it as an index for the __pcpu array. > > It breaks the KBI, which is unfortunate, but I think it is no big deal for > arm right now. > > Any review, comment, and testing, even on UP boards, would be very welcome. > > Regards, > > Olivier what type of media for root you used? just a quick test on exynos5250 one time I booted OK with patch and SMP enabled, two other attempts got panics (probably during usb ethernet load) http://pastebin.com/H129SMKX http://pastebin.com/szkBjaT5 -Ruslan From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 11:32:27 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BBE63BD for ; Fri, 22 Nov 2013 11:32:27 +0000 (UTC) Received: from mail-ie0-x246.google.com (mail-ie0-x246.google.com [IPv6:2607:f8b0:4001:c03::246]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 769422CA5 for ; Fri, 22 Nov 2013 11:32:27 +0000 (UTC) Received: by mail-ie0-f198.google.com with SMTP id tp5so3467971ieb.9 for ; Fri, 22 Nov 2013 03:32:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:message-id:date:subject:from:to:content-type; bh=+lf4wG9IPr/0mjyij5dGuta8GArf6qYsb2Bdfy+YGEc=; b=rGeg6CquUR0RWu0/2vUWp4MmjpvBZFviyl0y+ZZiRhBeBPRVOLMolJqnJP/VFUH80e FE1yS1upk6UOO3W9EITHoiJ2IWGPc1gB3+ol8H4oHAXWcjqjSLNgvh986uA0eNU2GPhF fZ9zUjmxyIabeLDAzgcPgL8Zi8Gfm47itTnSdFXjQepmwYb4YXY+ovejirJw3KLGZdB0 uY35FZfr2cjSiVJbQFhdwTl3MFx5FAAifxjQAsFuxSfX2UHk8RJMJCJp1CuD4kdr81UC wXoBzfabpTn7lvIqUdZWCgqx3ZgKZ0y1GnXQd4NcL1XJ+9Yf+5l2C5HZAPSS3ZlUcsft PmqQ== MIME-Version: 1.0 X-Received: by 10.182.118.194 with SMTP id ko2mr3987602obb.32.1385119946383; Fri, 22 Nov 2013 03:32:26 -0800 (PST) Message-ID: <089e0118378460293b04ebc25e3c@google.com> Date: Fri, 22 Nov 2013 11:32:26 +0000 Subject: www.freebsd.org From: Ciara Millar To: freebsd-arm@freebsd.org Content-Type: text/plain; charset=windows-1252; format=flowed; delsp=yes Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.16 X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 11:32:27 -0000 PGRpdiBkaXI9Imx0ciI+PHNwYW4gIA0Kc3R5bGU9ImZvbnQtZmFtaWx5OmFyaWFsLHNhbnMtc2Vy aWY7Zm9udC1zaXplOjEzcHgiPkhpLDwvc3Bhbj48YnIgIA0Kc3R5bGU9ImZvbnQtZmFtaWx5OmFy aWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEzcHgiPjxkaXYgIA0KY2xhc3M9ImdtYWlsX3F1b3Rl IiAgDQpzdHlsZT0iZm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTNweCI+ PGRpdiB0ZXh0PSIjMDAwMDAwIiAgDQpiZ2NvbG9yPSIjRkZGRkZGIj4NCjxkaXY+PHA+SSBjYW1l IGFjcm9zcyB5b3VyIHdlYnNpdGUgYW5kIHdhbnRlZCB0byBzZW5kIHlvdSBhIHF1aWNrIG5vdGUu ICANCldpdGggYSBmZXcgc2ltcGxlIGNoYW5nZXMgdG8gbWFrZSB5b3VyIHNpdGUgbW9yZSBTRU8t ZnJpZW5kbHkgSZJtIHN1cmUgeW91ICANCmNhbiBjb252ZXJ0IG1vcmUgdmlzaXRvcnMgaW50byBs ZWFkcyBhbmQgZ2V0IGl0IHBsYWNlZCBoaWdoZXIgaW4gdGhlICANCm9yZ2FuaWMgc2VhcmNoIHJl c3VsdHMsIGZvciBrZXl3b3JkcyB0aGF0IG1hdHRlciB0byB5b3UgdGhlIG1vc3QuPC9wPg0KPC9k aXY+PGRpdj48cD5XZZJyZSBhbiBBdXN0cmFsaWFuIGJhc2VkIGNvbXBhbnkgd2l0aCBhIGdyZWF0 IGluLWhvdXNlICANCnRlY2huaWNhbCB0ZWFtIHdobyByZWFsbHkga25vdyB0aGVpciBzdHVmZiBh Ym91dCBzZWFyY2ggZW5naW5lICANCm9wdGltaXphdGlvbi6gPC9wPjwvZGl2PjxkaXY+PHA+V291 bGQgeW91IGxpa2UgYSBiaXQgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCAgDQpob3cgdG8gZ2l2ZSB5 b3VyIHdlYnNpdGUgYSBib29zdCB3aXRoIGJldHRlciBTRU8/PGJyPg0KPC9wPjwvZGl2PjxkaXY+ PHA+oDwvcD48L2Rpdj48ZGl2PjxwPkJlc3QgUmVnYXJkczwvcD48L2Rpdj48ZGl2PjxwPkNpYXJh ICANCk1pbGxhcjxicj5TRU8vV2ViIFNwZWNpYWxpc3Q8L3A+PC9kaXY+PGRpdj48L2Rpdj48ZGl2 PjxzcGFuICANCnN0eWxlPSJmb250LXNpemU6Ny41cHQiPjwvc3Bhbj48cD48Yj48c3BhbiAgDQpz dHlsZT0iZm9udC1zaXplOjcuNXB0O2NvbG9yOnJnYigxMTEsMTY4LDIyMCkiPkFVUyBIZWFkcXVh cnRlcjxicj4NCjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo3LjVwdDtjb2xvcjpy Z2IoMTExLDE2OCwyMjApIj5BdXN0cmFsaWFuICANClRlY2hub2xvZ3kgUGFyaywgTG9jb21vdGl2 ZSBTdHJlZXQsIEV2ZWxlaWdooDxicj5OU1cgIA0KMjAxNTxicj48Yj48YnI+SW50ZXJuYXRpb25h bCBIZWFkcXVhcnRlcjxicj48L2I+NTAxIDE5dGggU3RyZWV0LCBOLlcuLCAgDQpXYXNoaW5ndG9u LCBELkMuIDIwNDMxPC9zcGFuPjwvcD4NCjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pg0K From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 16:56:29 2013 Return-Path: Delivered-To: arm@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7426042F for ; Fri, 22 Nov 2013 16:56:29 +0000 (UTC) Received: from kanar.ci0.org (kanar.ci0.org [88.191.150.159]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D8FA620A6 for ; Fri, 22 Nov 2013 16:56:25 +0000 (UTC) Received: from kanar.ci0.org (pluxor@localhost [127.0.0.1]) by kanar.ci0.org (8.14.5/8.14.5) with ESMTP id rAMGhx0c015521; Fri, 22 Nov 2013 17:43:59 +0100 (CET) (envelope-from cognet@ci0.org) Received: (from doginou@localhost) by kanar.ci0.org (8.14.5/8.14.5/Submit) id rAMGhwp5015520; Fri, 22 Nov 2013 17:43:58 +0100 (CET) (envelope-from cognet@ci0.org) X-Authentication-Warning: kanar.ci0.org: doginou set sender to cognet@ci0.org using -f Date: Fri, 22 Nov 2013 17:43:58 +0100 From: Olivier Houchard To: Ruslan Bukin Subject: Re: arm SMP fix Message-ID: <20131122164358.GA15486@ci0.org> References: <20131122000457.GA44039@freebsd.org> <20131122072140.GA709@mail.bsdpad.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20131122072140.GA709@mail.bsdpad.com> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: arm@FreeBSD.ORG X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 16:56:29 -0000 On Fri, Nov 22, 2013 at 11:21:40AM +0400, Ruslan Bukin wrote: > On Fri, Nov 22, 2013 at 12:04:57AM +0000, Olivier Houchard wrote: > > Hi all, > > > > Attached is the first draft to a patch that fixes SMP for me, it seems to > > work fine on my Pandaboard. > > The problem is, as it is currently implemented, curthread is basically > > defined as get_pcpu()->pc_curthread. If we get interrupted between the moment > > we got the struct pcpu, and the moment we derefence it to get the curthread > > pointer, and migrated to another core, we would get the wrong curthread, and > > that's not good. > > The proposed fix does the following : > > - use the register we used to use for pcpu for curthread > > - get the pcpu address by reading the cpu id from the CPUID register, and > > just use it as an index for the __pcpu array. > > > > It breaks the KBI, which is unfortunate, but I think it is no big deal for > > arm right now. > > > > Any review, comment, and testing, even on UP boards, would be very welcome. > > > > Regards, > > > > Olivier > > what type of media for root you used? > > just a quick test on exynos5250 > > one time I booted OK with patch and SMP enabled, > two other attempts got panics > (probably during usb ethernet load) > > http://pastebin.com/H129SMKX > http://pastebin.com/szkBjaT5 > Hi, I'm netbooting using the Pandaboard usb ethernet adapter too. As you're not alone in reporting that my patch doesn't work, I guess I can't just pretend it's your fault :) Are you getting the same thing without the patch ? Regards, Olivier From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 17:48:04 2013 Return-Path: Delivered-To: arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DFC2B3E9 for ; Fri, 22 Nov 2013 17:48:04 +0000 (UTC) Received: from mail.bsdpad.com (mail.bsdpad.com [109.107.176.56]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9A8EE2375 for ; Fri, 22 Nov 2013 17:48:01 +0000 (UTC) Received: from mail.bsdpad.com ([109.107.176.56]) by mail.bsdpad.com with smtp (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1Vjurx-000Ftq-NJ; Fri, 22 Nov 2013 21:50:17 +0400 Received: by mail.bsdpad.com (nbSMTP-1.00) for uid 1001 br@mail.bsdpad.com; Fri, 22 Nov 2013 21:50:17 +0400 (MSK) Date: Fri, 22 Nov 2013 21:50:17 +0400 From: Ruslan Bukin To: Olivier Houchard Subject: Re: arm SMP fix Message-ID: <20131122175017.GA52512@mail.bsdpad.com> References: <20131122000457.GA44039@freebsd.org> <20131122072140.GA709@mail.bsdpad.com> <20131122164358.GA15486@ci0.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20131122164358.GA15486@ci0.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: arm@FreeBSD.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 17:48:04 -0000 On Fri, Nov 22, 2013 at 05:43:58PM +0100, Olivier Houchard wrote: > On Fri, Nov 22, 2013 at 11:21:40AM +0400, Ruslan Bukin wrote: > > On Fri, Nov 22, 2013 at 12:04:57AM +0000, Olivier Houchard wrote: > > > Any review, comment, and testing, even on UP boards, would be very welcome. > > > > > > Regards, > > > > > > Olivier > > > > what type of media for root you used? > > > > just a quick test on exynos5250 > > > > one time I booted OK with patch and SMP enabled, > > two other attempts got panics > > (probably during usb ethernet load) > > > > http://pastebin.com/H129SMKX > > http://pastebin.com/szkBjaT5 > > > > Hi, > > I'm netbooting using the Pandaboard usb ethernet adapter too. > As you're not alone in reporting that my patch doesn't work, I guess I can't > just pretend it's your fault :) > Are you getting the same thing without the patch ? > sorry I meant usb flash, not the ethernet. I will try use ethernet insted of da0 for root later. with no patch and SMP enabled I have another kind of panics, like: [...] Starting cron. panic: mutex pmap not owned at /usr/home/br/dev/head/sys/arm/arm/pmap-v6.c:4184 cpuid = 1 [...] [...] Starting Network: ue0. ue0: flags=8802 metric 0 mtu 1500 options=80008 ether 00:00:00:00:00:00 media: Ethernet autoselect (100baseTX ) status: active nd6 options=29 panic: userret: Returning with -1 locks held cpuid = 1 [...] From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 21:39:02 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CDD62B48; Fri, 22 Nov 2013 21:39:02 +0000 (UTC) Received: from mail-qe0-x229.google.com (mail-qe0-x229.google.com [IPv6:2607:f8b0:400d:c02::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 704B32FB1; Fri, 22 Nov 2013 21:39:02 +0000 (UTC) Received: by mail-qe0-f41.google.com with SMTP id x7so1447487qeu.0 for ; Fri, 22 Nov 2013 13:39:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=upA3l79iC9rvuQRwEZGqJglu1DdtOVjxNgpklV3B/F8=; b=zMJ1og9ibWBDy9QKZb64RDfhH7e8PgwmhfDXQ/197eQLwP2QGvnnkNenSUIzSqnM2i E6LWWk9y5Ij2CMoVS5UNtnHoaXg+EJmCvNr+3Rh9doXUAMuviLySJAW3d2mcoxlQcYlI xldmK9PTJQatnGKV7ZArek99pT7WuB97AEMTfyqYgGQ9fVFXYzF29HjG+O8dl8kRqh/s Zx/bDjgHW04C55T9ioT700WNtF5wYKfqxAW/vEW5+4uhRspDPq4XzASv9rWiTYc64V9T QgVwF/H53zU86ZyJXhSGpwbUqGrzaWSaNjOWLB/824qsd100PnfL5tFcM7F+w+PTn4qI 8FGg== MIME-Version: 1.0 X-Received: by 10.49.127.205 with SMTP id ni13mr24215584qeb.40.1385156341718; Fri, 22 Nov 2013 13:39:01 -0800 (PST) Sender: carpeddiem@gmail.com Received: by 10.224.87.135 with HTTP; Fri, 22 Nov 2013 13:39:01 -0800 (PST) In-Reply-To: References: Date: Fri, 22 Nov 2013 16:39:01 -0500 X-Google-Sender-Auth: VTXcp06mn9OHktBviLVhwZEQ7HA Message-ID: Subject: Re: NETDUMP ARM alignment fault fix From: Ed Maste To: Boris Astardzhiev Content-Type: text/plain; charset=ISO-8859-1 Cc: Attilio Rao , "freebsd-net@freebsd.org" , freebsd-arm@freebsd.org X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 21:39:02 -0000 On 14 November 2013 01:34, Boris Astardzhiev wrote: > Hi, > > I've experienced some alignment faults using NETDUMP on the Sheevaplug ARM > board. > The function in question is netdump_send_arp(). I've attached a simple fix > to it and I'm posting it > as it might be of use to someone. Thanks for the patch. I've committed a simplified version in r258488. From owner-freebsd-arm@FreeBSD.ORG Fri Nov 22 21:50:27 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB745D4 for ; Fri, 22 Nov 2013 21:50:27 +0000 (UTC) Received: from mail-wi0-x236.google.com (mail-wi0-x236.google.com [IPv6:2a00:1450:400c:c05::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5AB512092 for ; Fri, 22 Nov 2013 21:50:27 +0000 (UTC) Received: by mail-wi0-f182.google.com with SMTP id en1so3241584wid.15 for ; Fri, 22 Nov 2013 13:50:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=GB9R7ofkeJDVfXYdim/c7d4n003SOinfqqyPB8iSLbE=; b=fMw7iqpXPOgvjHD4j5SHmZTbhLXMCEs9L4rvyk77AMGtyDsmMAFLFam8c+2SJA4FW8 QtclRSuGRQHuN/8SI8kR4EMBacMVD34qC39/kcozcd2Pyn94jAnHjooMplDzlxa6UMY+ 5hLRwCGTjE1NRseAuwwD+Q/PxzsyXqjZfyQPnVQGly6FjxmYlto3SU9CW++3U3muKpan 3HdkTwpV66tUFIWKLsWIJwPcjhyslDGJI0tVxO+zG9UpDQ728NmseeL6FNWMy8LbILI/ bsA/OF093dZCRYeE885Ocwgz5GjKA2sn7IxLeVX2fJZfi25bKQsbEJnWfF3nsydBL338 676w== X-Received: by 10.180.183.72 with SMTP id ek8mr4389749wic.31.1385157025763; Fri, 22 Nov 2013 13:50:25 -0800 (PST) Received: from [192.168.0.10] (log77-7-88-185-146-198.fbx.proxad.net. [88.185.146.198]) by mx.google.com with ESMTPSA id b7sm20130004wiz.8.2013.11.22.13.50.25 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 22 Nov 2013 13:50:25 -0800 (PST) Message-ID: <528FD1A6.8020106@gmail.com> Date: Fri, 22 Nov 2013 22:50:30 +0100 From: Nicolas Matringe User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 MIME-Version: 1.0 To: freebsd-arm@freebsd.org Subject: Qt4 compilation error on BeagleBoneBlack Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 21:50:27 -0000 My c++ compiler chokes on Qt4 code, it seems that it produces invalid assembler. Is it a problem with the compiler or the source code ? System is 10.0-CURRENT #0 r253898 /tmp/qdatetime-U6VjCK.s: Assembler messages: /tmp/qdatetime-U6VjCK.s:190: rdhi, rdlo and rm must all be different /tmp/qdatetime-U6VjCK.s:4779: rdhi, rdlo and rm must all be different /tmp/qdatetime-U6VjCK.s:4784: Error: selected processor does not support `movw r2,#49096' /tmp/qdatetime-U6VjCK.s:4819: rdhi, rdlo and rm must all be different /tmp/qdatetime-U6VjCK.s:4823: Error: selected processor does not support `movw r2,#49096' /tmp/qdatetime-U6VjCK.s:5129: rdhi, rdlo and rm must all be different /tmp/qdatetime-U6VjCK.s:5133: Error: selected processor does not support `movw r2,#49096' /tmp/qdatetime-U6VjCK.s:5313: Error: selected processor does not support `movw r3,#49096' /tmp/qdatetime-U6VjCK.s:6577: rdhi, rdlo and rm must all be different /tmp/qdatetime-U6VjCK.s:6996: rdhi, rdlo and rm must all be different c++: error: assembler command failed with exit code 1 (use -v to see invocation) *** Error code 1 Thanks Nicolas