[comp.unix.sysv386] -Xp optionin ISC cc

lubkin@cs.rochester.edu (Saul Lubkin) (04/23/91)

The ISC cc links in some startup code from /lib -- I think crt[01].o
-- on invocation.  Apparantly, when "-Xp" is used, alternative POSIX
compliant startup code is used instead -- perhaps crtp[01].o, or 
something else.

/lib contains crt[01].o, crtn.o, crtp[01].o, mcrt[01].o, mcrtp1.o,
pcrt[01].o and pcrtp1.o.

Could someone enlighten me as to which of these are linked in when?

This is relevant to my trying to create a useable job control support
version of bash for ISC 2.2.  I have made a job control bash -- but it
causes a system panic when vpix is run under it.

				Sincerely,

				Saul Lubkin

kdenning@pcserver2.naitc.com (Karl Denninger) (04/24/91)

In article <1991Apr23.145657.8672@cs.rochester.edu> lubkin@cs.rochester.edu (Saul Lubkin) writes:
>The ISC cc links in some startup code from /lib -- I think crt[01].o
>-- on invocation.  Apparantly, when "-Xp" is used, alternative POSIX
>compliant startup code is used instead -- perhaps crtp[01].o, or 
>something else.
>
>/lib contains crt[01].o, crtn.o, crtp[01].o, mcrt[01].o, mcrtp1.o,
>pcrt[01].o and pcrtp1.o.
>
>Could someone enlighten me as to which of these are linked in when?
>
>This is relevant to my trying to create a useable job control support
>version of bash for ISC 2.2.  I have made a job control bash -- but it
>causes a system panic when vpix is run under it.
>
>				Sincerely,
>
>				Saul Lubkin

The panics aren't surprising to me.

Any application compiled on ISC with '-Xp' is likely to do this.  Trn 
does it.  Others do it.  The problem is with a null pointer dereference 
in the kernel routine "namei()".  There is an "unofficial" fix which was
posted to the net, but I have no idea if it does the "right thing" if it
detects the null dereference (it does stop the panics).

I have reported it.  The word is that it will be fixed in the 2.3 release,
which has no firm release date at this time, or a cost for upgrade.  There
are no current plans for a patch from what I have been told.

The bottom line:
	POSIX anything does not work at all on ISC 2.2.  Don't even bother
	trying; you'll end up like me (had a machine crashing daily for a
	week and a half before I realized that it was posix that had caused
	the troubles).

	It is likely to be months before there is a fix available for this
	problem.  I would (of course) like to see something sooner.

I've backed out all POSIX applications on both my home system and all
ISC machines here at Nielsen.  Panics aren't something that are a lot of 
fun on a system with 1.5GB of disk space (45 minute + reboot times bite).

--
Karl Denninger - AC Nielsen, Bannockburn IL (708) 317-3285
kdenning@nis.naitc.com

"The most dangerous command on any computer is the carriage return."
Disclaimer:  The opinions here are solely mine and may or may not reflect
  	     those of the company.

gemini@geminix.in-berlin.de (Uwe Doering) (04/25/91)

lubkin@cs.rochester.edu (Saul Lubkin) writes:

>/lib contains crt[01].o, crtn.o, crtp[01].o, mcrt[01].o, mcrtp1.o,
>pcrt[01].o and pcrtp1.o.
>
>Could someone enlighten me as to which of these are linked in when?
>
>This is relevant to my trying to create a useable job control support
>version of bash for ISC 2.2.  I have made a job control bash -- but it
>causes a system panic when vpix is run under it.

That's how I found out about the bug in the namei() kernel function
(NULL pointer dereference). I also tried to run VP/ix in kernel POSIX
mode, and the system paniced. I posted a binary patch to fix this
problem. With this patch installed, you will find that VP/ix no
longer causes a kernel panic, but it still won't work. If I remember
correctly, this is because VP/ix tries to open the serial ports with
the O_EXCL flag, which, in POSIX mode, obviously isn't allowed for
devices.

BTW, ISC told me that they already knew about the bug in namei(),
and that it is fixed in their current (internal) release. However,
they didn't tell me whether they intend to release a fix disk for
this problem, or whether we have to wait until the next major
release.

      Uwe
-- 
Uwe Doering  |  INET : gemini@geminix.in-berlin.de
Berlin       |----------------------------------------------------------------
Germany      |  UUCP : ...!unido!fub!geminix.in-berlin.de!gemini