Debian-Netinstall (31r0a) hängt bei "Debootstrap"

Jan 'RedBully' Seiffert redbully at cc.fh-luh.de
Fri Aug 26 18:37:33 CEST 2005


Jan-Benedict Glaw schrieb:
> On Fri, 2005-08-26 15:43:41 +0200, Jan 'RedBully' Seiffert 
> <redbully at cc.fh-luh.de> wrote:
> 
>> Sollte das ISO dann aber nicht Bla-netinst-i486 heissen? Naja
> 
> Zumindest vom userland her: ja.  Aber Debian hat im 386 flavour halt
>  diesen patch drin, der es erlaubt, i486 userland zu benutzen.
> 
Ach, der ist bei der CD schon mit drin? na dann is doch alles in Butter,
eigentlich...

>> Hmmm, was ist denn vom i386 zu i486 dazu gekommen, nen haufen
> 
> [...]
> 
>> * BSWAP - dreht die Endianess von 32Bit - ich habs zwar jetzt nicht
>>  hingekriegt, das mit dem Compiler auzuspucken, zur not steckt es 
>> in htonl(3) & ntohl(3) (libc) und den entsprechenden 
>> Kernelgegestuecken.
> 
> Der i486 bringt erstmals selbst atomare Instruktionen mit, mit denen
>  sich recht gut locking implementieren läßt. Das muß der Compiler
> auch garnicht selbst ausspucken. Es reicht, daß es als asm()
> statement in der libc steckt. xchg ist z.B. so einer...

Naja, ohne LOCK-Prefix wird keine Opertion auf x86 atomar.
XCHG gibt es seit 8086 (ob da schon mit LOCK-Prefix funktion, k.a.). Ist
noch INC und DEC mit LOCK im Angebot, auch seit 8086 (je nach dem, ob
LOCK schon zu 8086 gehoert, spaetestens aber ab 386, mir ist nicht
umsonst die Kinnlade runtergefallen, als ich mal nen Compaq-Dual-386
gesehen habe ;) ).
Oder meinst du jetzt XADD und den undokumentierten CMPXCHG im 486, den
nicht mal alle 486 haben (und der Opcode dann ab 586 ne andere Bedeutung
hat)? CMPXCHG gibts erst so richtig ab Pentium.

> Leider wird das an einigen zentralen Stellen in der libc benutzt. 
> Zudem steckt sowas dann in code pathes, die (von .ctors aus) noch 
> _vor_ main() laufen...
Naja, was die Frage aufwirft, wovon sie das Einfuegen dieser Befehle
abhaenging machen...
Was natuerlich wirklich darauf hinauslaufen kann, das da wirklich
irgendwo ein:
#ifdef __i486__
	asm("lock xadd %0, %1" ....

schlummert, was dann natuerlich auch bei "-march=486" einkompiliert wird.

Das haette dann aber warsch. schon etwas frueher bei Stefan anschlagen
muessen :)

> 
> MfG, JBG
> 
Gruss
	Jan

-- 
Thus spake the master programmer:
"Though a program be but three lines long,
someday it will have to be maintained."



More information about the Linux mailing list