Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Sep 2013 11:28:07 -0400
From:      George Mitchell <george+freebsd@m5p.com>
To:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: What's the recipe?
Message-ID:  <5235D207.5070400@m5p.com>
In-Reply-To: <522229C0.5030504@m5p.com>
References:  <522229C0.5030504@m5p.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------000600030505060805040308
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

On 08/31/13 13:37, George Mitchell wrote:
> Have you built a working Raspberry Pi image recently?  If so, for the
> benefit of the rest of us, could you share a few secrets?
>
> 1. What system did you do the build on?  If it was an i386 or amd64,
> what svn version was it built with?

Built on amd64, svn version r255361M.  (Two changes: I still distrust
SCHED_ULE, and there's a patch [attached] required for the ARM xdev
build to complete.)
>
> 2. What did you have in /etc/src.conf and /etc/make.conf, both for
> building the build system itself and for building the RPi?

I finally bit the bullet and went to clang.  /etc/src.conf is empty;
/etc/make.conf contains "WITH_PKGNG=yes".
>
> 3. What svn version of /usr/src did you use in building the RPi image?
>
Same as above (r255361M).

> 4. Did you use crochet?  If so, what was the last commit in your git
> log?
commit b154a2f1252eaa5f4d821439d0d9005cea94e580
Merge: a6f4cc5 8d03c23
Author: Tim Kientzle <kientzle@acm.org>
Date:   Sat Aug 17 12:00:52 2013 -0700

>
> When I say "working," I'm hoping for the ability to run stably for a
> number of days, running NFS and CUPS.  I've been doing this since
> January with a precompiled image I downloaded then which worked
> wonderfully with one of my printers, but not the other one.  Now
> there's a patch that enables both printers to work, and I would love
> to build a new image.  So I've been thrashing around trying to find
> the answers to the questions above without success.  Thanks for any
> help you can give!                                         -- George

This build is marginally stable.  I've been working for a week to get
a complete build of print/cups and I'm not quite there.  From the RPi,
/usr/ports is an NFS mount from another machine with version 326306 of
the ports tree (just before the iconv incident).  The RPi likes to get
messages of this sort:

http://www.m5p.com/~george/pi/DSCN1282.JPG

primarily during the period that portmaster is discovering everybody's
dependencies.  (Oddly, if I make it to the build stage, the build
completes about 90% of the time.  devel/glib20 built, including its
dependencies on perl and python, in one overnight session.)

Once, instead of the fatal kernel mode prefetch abort, I got:

panic: __rw_wlock_hard: recursing but non-recursive rw pmap pw @ 
/usr/src/sys/arm/arm/pmap-v6.c:1406
KDB: enter: panic [ thread pid 906 tid 100076 ]
stopped at $d: ldrb r15, [r15, 15, ror r15]

(Sorry for the transcription by hand; I have an AdaFruit serial cable
on order.)

My current problem is that x11/pixman fails to build:

===>  Building for pixman-0.30.0
/usr/bin/make  all-recursive
Making all in pixman
   CC     pixman.lo
   CC     pixman-access.lo
   CC     pixman-access-accessors.lo
   CC     pixman-bits-image.lo
   CC     pixman-combine32.lo
   CC     pixman-combine-float.lo
   CC     pixman-conical-gradient.lo
   CC     pixman-filter.lo
   CC     pixman-x86.lo
   CC     pixman-mips.lo
   CC     pixman-arm.lo
   CC     pixman-ppc.lo
   CC     pixman-edge.lo
   CC     pixman-edge-accessors.lo
   CC     pixman-fast-path.lo
   CC     pixman-glyph.lo
   CC     pixman-general.lo
   CC     pixman-gradient-walker.lo
   CC     pixman-image.lo
   CC     pixman-implementation.lo
pixman-implementation.c:124:38: warning: comparison of constant 64 with 
expression of type 'const pixman_op_t' is always false 
[-Wtautological-constant-out-of-range-compare]
             if ((info->op == op || info->op == PIXMAN_OP_any)           &&
                                    ~~~~~~~~ ^  ~~~~~~~~~~~~~
1 warning generated.
   CC     pixman-linear-gradient.lo
   CC     pixman-matrix.lo
   CC     pixman-noop.lo
   CC     pixman-radial-gradient.lo
   CC     pixman-region16.lo
   CC     pixman-region32.lo
   CC     pixman-solid-fill.lo
   CC     pixman-timer.lo
   CC     pixman-trap.lo
   CC     pixman-utils.lo
   CC     pixman-arm-neon.lo
   CPPAS  pixman-arm-neon-asm.lo
/usr/include/float.h: Assembler messages:
/usr/include/float.h:43: Error: bad instruction `extern int 
__flt_rounds(void)'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_r'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'orig_w'
./pixman-arm-neon-asm.h:708: Warning: ignoring redefinition of register 
alias 'dummy'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'dst_w'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'src'
./pixman-arm-neon-asm.h:947: Warning: ignoring redefinition of register 
alias 'mask'
pixman-arm-neon-asm.S:3623: Warning: ignoring redefinition of register 
alias 'tmp1'
pixman-arm-neon-asm.S:3623: Warning: ignoring redefinition of register 
alias 'tmp2'
pixman-arm-neon-asm.S:3627: Warning: ignoring redefinition of register 
alias 'tmp1'
pixman-arm-neon-asm.S:3627: Warning: ignoring redefinition of register 
alias 'tmp2'
pixman-arm-neon-asm.S:3631: Warning: ignoring redefinition of register 
alias 'tmp1'
pixman-arm-neon-asm.S:3631: Warning: ignoring redefinition of register 
alias 'tmp2'
pixman-arm-neon-asm.S:3635: Warning: ignoring redefinition of register 
alias 'tmp1'
pixman-arm-neon-asm.S:3635: Warning: ignoring redefinition of register 
alias 'tmp2'
cc: error: assembler command failed with exit code 1 (use -v to see 
invocation)

Any suggestions?                                           -- George

--------------000600030505060805040308
Content-Type: text/plain; charset=us-ascii;
 name="dev_net.c.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="dev_net.c.patch"

--- /usr/src/sys/boot/common/dev_net.c.orig	2013-08-30 13:25:49.000000000 -0400
+++ /usr/src/sys/boot/common/dev_net.c	2013-08-31 08:27:47.000000000 -0400
@@ -325,7 +325,7 @@
 #endif
 
 	d = socktodesc(sock);
-	sprintf(temp, "%6D", d->myea, ":");
+	sprintf(temp, "%02x:%02x:%02x:%02x:%02x:%02x", d->myea[0], d->myea[1], d->myea[2], d->myea[3], d->myea[4], d->myea[5]);
 	setenv("boot.netif.ip", inet_ntoa(myip), 1);
 	setenv("boot.netif.netmask", intoa(netmask), 1);
 	setenv("boot.netif.gateway", inet_ntoa(gateip), 1);

--------------000600030505060805040308--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5235D207.5070400>