*BSD News Article 33675


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!spool.mu.edu!howland.reston.ans.net!pipex!sunic!trane.uninett.no!nac.no!eunet.no!nuug!EU.net!uunet!zib-berlin.de!gmdtub!ats
From: ats@first.gmd.de (Andreas Schulz)
Newsgroups: comp.os.386bsd.questions
Subject: Re: [FreeBSD] Anybody else using GPL_MATH ?
Message-ID: <5380@bigfoot.first.gmd.de>
Date: 31 Jul 94 23:11:27 GMT
References: <315124$le7@itu1.sun.ac.za>
Sender: news@bigfoot.first.gmd.de
Organization: GMD-FIRST
Lines: 26

In article <315124$le7@itu1.sun.ac.za>,
Andre Skarzynski <abs@cs.sun.ac.za> wrote:
>I am using FreeBSD-1.1.5.1RELEASE with the optional GPL MATH EMULATOR compiled
>in the kernel. Test programs pass without errors now, but now ps aux is now
>broken, or something is broken. When I do a ps aux, the started time for all
>proccesses shows as 1jan70 or at the epoch as far as I recall. Anyone else 
>have the same problem? 

Yes, i have searched and found the reason. The failure is that ps uses fixed
offsets into the user area to get the start times. Unluckily the user area
get larger and other offset for some fields if you are using the GPL MATH.
You need either to compile ps also with -DGPL_MATH_EMULATE defined or the
better fix is to throw out the conditional in /sys/i386/include/npx.h for
the padding. Only define one padding that is 140 bytes long, then recompile
your kernel and ps and maybe also libkvm and all programs that use libkvm.
Why 140 bytes instead of the 60 like it is now, this seems like another
failure for GPL_MATH_EMULATE, if i didn't miscount the struct in the new
math emulator, he needs more bytes then are currently reserved, so he
scribbles also in some of the adjacent structs in the user area :-).
I will try to get that now in to FreeBSD 2.0.

--
	  ATS ( ats@first.gmd.de or ats@cs.tu-berlin.de )

Andreas Schulz  GMD-FIRST     12489  Berlin-Adlershof  Rudower Chaussee 5
Gebaeude 13.7      Tel: +49-30-6392-1856	Germany/Europe