[Aboriginal] Fun with powerpc, and USE_UNSTABLE is now USE_ALT

Rob Landley rob at landley.net
Tue Oct 18 19:44:00 PDT 2011

The powerpc system call interface changed recently:

commit 86250b9d12caa1a3dee12a7cf638b7dd70eaadb6
Author: Ian Munsie <imunsie at au1.ibm.com>
Date:   Wed Aug 25 18:50:28 2010 +0000

    powerpc: Wire up direct socket system calls
    This patch wires up the various socket system calls on PowerPC so that
    userspace can call them directly, rather than by going through the
    multiplexed socketcall system call.
    Signed-off-by: Ian Munsie <imunsie at au1.ibm.com>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

Which means that dropbear and some of the network stuff in busybox
use that new system call when built against kernel headers with that
commit (2.6.36 and newer, I think), and if you try to run those
binaries on older kernels you get "unsupported syscall" error.
(I noticed this with dropbear server mode.)

It's easy enough to build against an older kernel version, for a
definition of "easy" that works around kernel.org not having archival
versions back up yet:

  cd ~/linux/linux
  git archive v2.6.35 --prefix=linux/ | bzip2 > \

And then yanking everything but alt-linux-pmacorder.patch from
sources/patches because the perl removal patches keep breakig every
other release.  (I really want to get that upstream...)

I did a blog entry about this, and added a FAQ entry, and it also pointed
out that the sources and patches are all prefixed with "alt-" but the
control variables (in config and download.sh) are UNSTABLE, and that's
inconsistent naming, and since there's nothing unstable about building
with an _old_ version of the kernel I made it USE_ALT in config and
ALT= in ./download.sh and then fixed up the rest of the plumbing.  (Not
checked in yet, testing...)

Anyway, that's why there's currently a dropbearmulti-powerpc-old binary in
extras. :)

Poking at the 3.1-rc10 kernel too, while I'm there...


More information about the Aboriginal mailing list