Re: OT: SheevaPlug-Distributor in DE

From: Christian Weisgerber <naddy(at)mips.inka.de>
Date: Thu, 24 Sep 2009 19:27:39 +0000 (UTC)

Bernd Walter <ticso(at)cicely.de> wrote:

> Ich musste für FreeBSD damals folgenden einbauen:
> http://www.cicely.de/~ticso/openvpn-arm-patch
> Ohne dem schlägt bereits der eigene Selbsttest fehl.
> Google meinte, dass Linux-ARM genauso betroffen ist.
> Problem ist, dass ARM auch 8 und 16bit Variablen auf ein 4-Byte alignment
> haben will.
> Ein struct mit 2 8bit Variablen belegt dann 8 Bytes,

Nie und nimmer. Ich glaube nicht, dass ein BSD-Kernel auf sowas
laufen würde. ARM verlangt das schon gar nicht, und dass die ARM-ABI
das verlangt, nehme ich dir nicht ab.

Etwas Googeln in Linux-Land führt zu Erwähnungen einer "alten" ABI,
bei der
(1) ein struct/union als Ganzes auf 4 Byte ausgerichtet sein muss und
(2) mindestens 4 Byte groß ist.
Innerhalb gilt ganz normales Natural Alignment.

Das kann ich glauben und ich kann mir ein paar Fälle vorstellen,
wo das Probleme bereitet.

Verwendet FreeBSD/arm diese ABI? (Ich habe kein Zugriff auf ein
System und kenne mich in gcc/config nicht gut genug aus.)
OpenBSD/arm tut das jedenfalls nicht. Im Linux-Land sehe ich
Geschnatter zu "EABI", die diese Beschränkung auch nicht mehr hat.

-- 
Christian "naddy" Weisgerber                          naddy(at)mips.inka.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 24 Sep 2009 - 21:27:52 CEST

search this site