[comp.sys.sgi] Kernal Change Affecting f77 Compile?

smd@rehder.larc.nasa.gov (Steve Dahmen) (12/04/90)

To accomodate special shared memory and semaphore requirements,
of a new piece of software,
we recently modified our kernal on our 4D/320 VGX.  This is the only
unusual change we made to the system (besides fixing a flickering
console).  A program that used to compile (with the default kernal),
no longer compiles.  I was hoping if anyone could offer a suggestion as to WHY?

CHANGES MADE TO KERNAL:

in file shm:
symbolname     old     new
SHMMNI		100 	4000
SHMSEG		  6	2000
SHMALL		512	4096

in file sem:
SEMMNI		 10      500
SEMMNS		 60     3000

COMPILE DATA:

f77 -g align16 -c exec1.f

Warning on line 1579 of exec1.f: branch to inner block, statement 140
    (included for completeness' sake... we didn't write the code :-)
ugen: internal: error in write, writing 1568 bytes instead of 8192 bytes
ugen: internal: error in write, writing 3120 bytes instead of 8192 bytes

According to our local kernal guru, the changes should not have
affected a compile.    This was verified as we successfully compiled
the code on another machine with a kernal modified exactly as above.
When we reset to the default kernal, again a successful compile with
no errors.

Since we don't need the shared memory extentions right away, there is
no urgency here; we'll just stick with the regular kernal; but perhaps
MIPS would be interested/knowledgeable about this error?

-- 
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Steve Dahmen, Systems Analyst                         (804) 864-4519 (W)
M/S 365,  NASA Langley Research Center                    
Hampton, Virginia  23665                        smd@rehder.larc.nasa.gov

calvin@dinkum.wpd.sgi.com (Calvin H. Vu) (12/05/90)

Write error in ugen most certainly indicates an out-of-disk-space condition.
I think the new kernel uses more disk space in the root filesystem than
the old one and causes your program to fail to compile since there is not
enough disk space in the /tmp directory for ugen to save the temporary
files.

There is an environment variable TMPDIR which you can set to any directory
you like and it will be used by all compilers to save the temporary files.

For example:

setenv TMPDIR /usr/tmp

will cause /usr/tmp to be used as the temporary directory for intermediate
files.

Hope it helps,

- calvin
--
-----------------------------------------------------------------------------
Calvin H. Vu			   | "We are each of us angels with only one
Silicon Graphics Computer Systems  | wing.  And we can only fly embracing
calvin@sgi.com   (415) 962-3679	   | each other."