[comp.sys.sun] Sun-Spots Digest, v6n158

Sun-Spots-Request@RICE.EDU (William LeFebvre) (08/02/88)

SUN-SPOTS DIGEST         Sunday, 31 July 1988         Volume 6 : Issue 158

Today's Topics:
              Re: login problem when NFS server crashes (3)
                           Re: tn3270 on a Sun4
                         Re: Experiences with 4.0
              Re: A question regarding setting subnet masks
                  Re: Level 2 interrupt problems (3/280)
                        Experiences with the Sun-4
                 Performance problem with 3/280 upgrade 
                 Problems with X11R2 xterm and SunOS 4.0
                   Changing Sun 3/110 LC to monochrome?
                            Other NFS Servers?
                              Disk for 386i?

Send contributions to:  sun-spots@rice.edu
Send subscription add/delete requests to:  sun-spots-request@rice.edu
Bitnet readers can subscribe directly with the CMS command:
    TELL LISTSERV AT RICE SUBSCRIBE SUNSPOTS My Full Name
Recent backissues are available via anonymous FTP from "titan.rice.edu".
For volume X, issue Y, "get sun-spots/vXnY".  They are also accessible
through the archive server:  mail the request "send sun-spots vXnY" to
"archive-server@rice.edu" or mail the word "help" to the same address
for more information.

----------------------------------------------------------------------

Date:    Tue, 19 Jul 88 10:43:51 EDT
From:    nesheim@think.com
Subject: Re: login problem when NFS server crashes (1)

The other way you loose when logging into a machine with nfs directories
of a crashed server mounted is if you have quotas turned on.  Login calls
/usr/ucb/quota, which attempts to contact the crashed server to find out
if you're over your disk quota.  This will happen even if your nfs
directories are not mounted in root!  root logins are not checked for
quotas, so they go nice and fast.

To avoid this mount all remote file systems not only "soft", but also
"noquota".  Or better yet rm /usr/ucb/quota and cp /bin/true
/usr/ucb/quota!

--- Bill Nesheim; Thinking Machines Corporation, Cambridge, MA +1 617-876-1111
    nesheim@think.com, {mit-eddie,ihnp4}!think!nesheim

[[ John Myers at CMU also pointed this out.  --wnl ]]

------------------------------

Date:    Tue, 19 Jul 88 13:15:23 EDT
From:    Mike Muuss <mike@brl.arpa>
Subject: Re: login problem when NFS server crashes (2)

The problem that you describe is quite real.  The way we have avoided this
problem at BRL depends on two factors:

1)  We use the Doug Kingston NFS modification that allows us to mount an
entire server machine's filesystem tree with a single NFS mount, and

2)  We mount each system as /n/machinename, so that there are no NFS
mounts lurking in the root directory.  This keeps the root directory very
small (for fast searching), and prevents getwd() from tripping over downed
servers.

If folks are unfamiliar with the Doug Kingston NFS modification, I would
be willing to provide source mods to the Digest -- they are only a few
lines long, and work fabulously.  It's the only way we can survive with
dozens of moby servers, here at BRL.

	Best,
	-Mike

------------------------------

Date:    Tue, 19 Jul 88 02:04:01 EST
From:    Dan Trinkle <trinkle@purdue.edu>
Subject: Re: login problem when NFS server crashes (3)

There are two solution to the pwd stat problem.  One is to put NFS mounts
in a separate subdirectory.  However, if you want to give precedence to
one NFS mount, this does not do much good.  The other method, as wnl
pointed out, is to sort the actual entries in the root directory.  Here is
a (hideous hack of a) shell script which does just that automatically.  It
must be run in single user mode.

-------------------- cut --------------------
#! /bin/sh
#
# Usage: shuffle-dirs [preferred mount points]
#	This script reorders the directory entries in /, putting all local
#	files (non-mount points), all local mount points, all preferred
#	mount points, then all remaining NFS mount points.  For the local
#	mount points and the NFS mount points, the order is determined by
#	/etc/fstab.  This script is highly dependent on the order in which
#	things are done.
#
#	ENTRIES - list of current / entries minus ".", "..", and "lost+found"
#	PREF - preferred NFS mount points (command line args)
#	LOCAL - local mount points
#	REMOTE - NFS mount points
#
#	TMPNAME - name of a non-existent file in / (the shorter the better)
#
#	Daniel Trinkle
#	Computer Science Department
#	Purdue University
#	January 13, 1988
#
TMPNAME=a
PATH=/bin:/$TMPNAME
export PATH

MNTTAB=etc/fstab
ROOTDIR=/
PROG=shuffle-dirs
USAGE="$PROG: [-d <rootdir>] [preferred NFS mount points]"

case $1 in
    -d) ROOTDIR=$2
        shift; shift
        ;;
esac

if [ -n "$ROOTDIR" -a -d "$ROOTDIR" ]; then
    cd $ROOTDIR
else
    echo "$PROG: Bad root directory: $ROOTDIR"
    echo "$USAGE"
    exit 1
fi

ENTRIES=`ls -f | sed -e '/^\.$/d' -e '/^\.\.$/d' -e '/^lost+found$/d'`
PREF=$*
LOCAL=`awk '{if ($3 == "4.2" && split($2,m,"/") == 2) print m[2]}' $MNTTAB`
REMOTE=`awk '{if ($3 == "nfs" && split($2,m,"/") == 2) print m[2]}' $MNTTAB`

if [ -f $TMPNAME -o -d $TMPNAME ] ; then
	echo "$0: $TMPNAME exists, I cannot continue."
	exit 1
fi

echo -n "Removing mount points:"
for f in $LOCAL $REMOTE ; do
	rmdir $f
	echo -n " $f"	
done
echo "."

echo -n "Shuffling remaining entries:"
for f in $ENTRIES ; do
	if [ -r $f ] ; then
		mv $f $TMPNAME; mv $TMPNAME $f
		echo -n " $f"
	fi
done
echo "."
mkdir $TMPNAME

echo -n "Creating local mount points:"
for f in $LOCAL ; do
	if [ ! -d $f ] ; then
		mkdir $f
		echo -n " $f"
	fi
done
echo "."

echo -n "Creating preferred NFS mount points:"
for f in $PREF ; do
	if [ ! -d $f ] ; then
		mkdir $f
		echo -n " $f"
	fi
done
echo "."

echo -n "Creating remaining NFS mount points:"
for f in $REMOTE ; do
	if [ ! -d $f ] ; then
		mkdir $f
		echo -n " $f"
	fi
done
echo "."
rmdir $TMPNAME
exit 0
-------------------- cut --------------------

     And yes, even a man page.

-------------------- cut --------------------
.TH SHUFFLE-DIRS 8L "July 7, 1988" "Purdue University"
.SH NAME
shuffle-dirs \- reorder directory entries in /
.SH SYNOPSIS
.B /etc/shuffle-dirs
[
.B \-d
.I root-directory
] [
.I pref-list
]
.PP
.SH DESCRIPTION
.I Shuffle-dirs
is a script that reorders directory entries
in /, specifically designed to move NFS
mount points to the end of the directory.  This prevents NFS timeouts for
remote servers when accessing local file systems.
.PP
It reorders entries by removing all mount points (determined by looking in
/etc/fstab), moving (in turn) each remaining entry to a bogus entry ("a" by
default) and moving it back (filling the first available directory slot),
creating all local mount points, creating preferred mount points
(specified by the white-space separated
.IR pref-list ),
and then
creating any remaining NFS mount points.  The order of the local and remain NFS
entries are determined by the order in /etc/fstab.
.PP
Only top level mount points (i.e. those in /) are manipulated.
.PP
The \fB\-d\fR option can be used to specify an alternate root directory.
All work is done relative to this root directory,
including the search for /etc/fstab.
This option is useful for manipulating the root directory of a
diskless client from the server.
.SH FILES
.ta 3i
/etc/fstab	list of local and NFS mounts
.ta
.SH BUGS
This whole things is a terrible hack (but it works) and is extremely dependent
on the way directories are structured.
.SH AUTHOR
Daniel Trinkle, Computer Science Department, Purdue University
-------------------- cut --------------------

Daniel Trinkle			trinkle@cs.purdue.edu			ARPA
Department of Computer Sciences	trinkle%purdue.edu@relay.cs.net		CSNET
Purdue University		{ucbvax,decvax}!purdue!trinkle		UUCP
West Lafayette, IN 47907	(317) 494-7844				PHONE

------------------------------

Date:    Mon, 18 Jul 88 08:11:48 EDT
From:    Mike Jipping <jipping@cs.hope.edu>
Subject: Re: tn3270 on a Sun4

John M. Vogtle:
> We're trying to bring up tn3270 on a Sun 4/110 runnning SunOS 4.0...

Most "old" (pre-4.0) communication products that use low-level I/O will
not work right with 4.0.  This is because the new OS uses the SYSV STREAMS
interface instead of the old style.  Yea -- they'll compile, but they'll
bomb!  That's why Sun is way behind on all it's 4.0-compatible
communications products.

	Mike Jipping
	Hope College
	Department of Computer Science
	jipping@cs.hope.edu

------------------------------

Date:    Tue, 19 Jul 88 09:27:02 EDT
From:    dpz@njin.rutgers.edu (David P. Zimmerman)
Subject: Re: Experiences with 4.0
Reference: v6n144

> From:    Tim Bray <tbray@watsol.waterloo.edu>
> 
> 2. Irritating nit with /bin/time
> 
> Namely, it's now /usr/bin/time.  This was the only place the 4.0 directory
> reorg bit me...

Uh, I don't see why this would break your validation suite.  /bin is just
a link to /usr/bin under 4.0.

	David P. Zimmerman
	Systems Programmer
	Rutgers University

------------------------------

Date:    Tue, 19 Jul 88 09:38:52 EDT
From:    dpz@njin.rutgers.edu (David P. Zimmerman)
Subject: Re: A question regarding setting subnet masks
Reference: v6n142

> From:    "R. Wayne Little, Sci. Pgmr/Analyst" <C0018@UMRVMB.BITNET>
> 
> How does one set a subnet mask on a SUN?
> ...
> It doesn't appear in the ifconfig(8) man page in the SUN doc....

Sounds like you're using SunOS 3.2 or earlier.  Ifconfig under 4.0 lets
you do what you want.  Since SunOS 3.3-3.5 have subnetting code, I assume
they allow the same thing - I'm not sure, we stuck with the stable,
unsubnetted 3.2 :-).  Unless you upgrade to a higher version of SunOS,
have source, or are *very* good at hacking binaries, the only out I see is
possibly to have a smart gateway sit between your Suns and the rest of
your net.

	David P. Zimmerman
	Systems Programmer
	Rutgers la dee dah

------------------------------

Date:    Tue, 19 Jul 88 09:49:51 EDT
From:    dpz@njin.rutgers.edu (David P. Zimmerman)
Subject: Re: Level 2 interrupt problems (3/280)
Reference: v6n143

Supposedly there is a bug with the IPC board driver that requires you to
always configure all 4 pc devices (pc0-pc3) into the kernel, even if you
only have one board.  Don't think it'll help your subnetting problem, but
I suspect those spurious interrupts should go away.

	David P. Zimmerman
	System Programerre
	Universitie Rutger

------------------------------

Date:    Tue, 19 Jul 88 16:00:17 EDT
From:    Dan Franklin <dan@wilma.bbn.com>
Subject: Experiences with the Sun-4

We tried porting a roughly 150,000-line C program to the Sun-4 a couple of
months ago, using the "Sun porting center" near us.  It was running some
variant of Sun OS 3.2 at the time.  We found two portability problems (a
failure to use varargs in one place, and an accidental structure alignment
dependency) and two other problems:

1. As with Tim Bray, we had a lot of regression tests comparing floating
point output values, and we were *quite* irritated to find them failing
for values between 0 and 1 due to the absence of the leading zero (that
is, getting ".1" instead of "0.1").  We weren't just irritated because of
the test scripts; we were also irritated because we may have to go back
and fix our floating-point print statements to insert a leading zero in
this circumstance.  I doubt very much that our customers will appreciate
having the difference between "12" and "0.12" be reduced to a single speck
on their listings!  This output change is so stupid and gratuitous that I
suspect Sun didn't decide to do it, but rather picked it up from some
brain-damaged AT&T change.

2. There was a problem involving fprintf calls which we never did figure
out.  The symptom was a core dump whose stack had _doprnt at the top; it
appeared that the arguments to _doprnt had gotten garbled.  But all
attempts to produce a small test case demonstrating the problem failed.
We had a similar problem with the version of the RCS code we use here.
Almost any change made the problem go away.

Mostly it went pretty smoothly; it was less than a day's work to verify
that we had no major problems facing us.  But I sure wish I knew what was
going on with these two problems.  Sun was, alas, no help with either one.

	Dan Franklin

------------------------------

Date:    Tue, 19 Jul 88 13:13:35 EDT
From:    doug@icase.arpa (Doug Peterson)
Subject: Performance problem with 3/280 upgrade 

We have just upgraded our server from a 3/180 to a 3/280, and have seen a
DECREASE in performance. We run Sun OS 3.5. The number of diskless clients
in both cases is the same. The e-net collision rate is much higher with
the new server, which may account for some of the decrease.

But I just received my copy of the May Sun STB, which has an article
describing how the cache works on a Sun 3/200 series machine. On page 826,
there is a statement to the effect that if the cache hit rate is
effectively zero, then performance of a 3/280 system will be less than a
3/280. As a server, handling lots of random client requests, I would think
that the cache hit rate would be very low.

Has anyone observed similar phenomenon?

Doug Peterson
Systems Manager
ICASE
Mail Stop 132C
NASA Langley Research Center
Hampton, VA 23665-5225
(804) 865-4090

------------------------------

Date:    Tue, 19 Jul 88 17:25:08 CDT
From:    clyde@emx.utexas.edu (Head UNIX Hacquer)
Subject: Problems with X11R2 xterm and SunOS 4.0

The X11R2 xterm fails when told to use any display other than 'unix:0.0'.
This is on a SUN 3/[56]0, running SunOS 4.0.  Witness the below debugging
session...

spica> dbx xterm
...
(dbx) catch 1
(dbx) run -display spica:0.0
Running: xterm -display spica:0.0 
stopped in main at line 244 in file "main.c"
  244   	int fd1 = -1;
(dbx) c
signal HUP (hangup) in close at 0x33ace
close+8:		rts
(dbx) where
close(0x52ad0) at 0x33ace
yp_unbind(0x529f0) at 0x34063
yp_get_default_domain(0x529f0, 0xeffe980) at 0x34219
_yp_dobind(0x529f0, 0xeffe980) at 0x33eb5
yp_match(0x529f0, 0x4b887, 0xeffe9b4, 0x4, 0xeffe9cc, 0xeffe9c8) at 0x3574f
getpwent(0x3ed, 0x51ea4) at 0x2fd59
getpwent(0xeffeb10, 0xeffef14, 0x3ed) at 0x2f973
getpwuid(0x3ed) at 0x2f36d
spawn(), line 1046 in "main.c"
main(argc = 0, argv = 0xefffc0c, 0xefffc18), line 549 in "main.c"
(dbx) quit

...

I have tried building xterm with and without optimization, the X libraries
with and without optimization, dynamic and static linking, and I get the
same error.

Anyone have any ideas?  I think that the Sun YP code is busted!

	-Clyde Hoover

------------------------------

Date:    Tue, 19 Jul 88 14:44:30 EDT
From:    segall@caip.rutgers.edu (Ed Segall)
Subject: Changing Sun 3/110 LC to monochrome?

I have a Sun 3/110 LC whose display is too fuzzy to use. Smalltalk on the
13" color screen causes severe eyestrain.  I wish to 'downgrade' to a
monchrome screen, like the ones on on the 3/50 or 3/60.  There doesn't
seem to be a straightforward way to do this, since only RGB video outputs
are available.  

Obvious possibilites are:

  Buy a whole new CPU and monitor that are set up for monochrome
  ---Too expensive

  "" ""  and sell the current CPU and montor to recoup costs
  ---Seems difficult.

  Buy an RGB to composite mixer and a monochrome monitor
  ---I don't know if the image quality will suffer

  Sell the whole thing and buy a 3/60
  ---This may be the best option if we can find a customer


Any comments or suggestions?

Thanks,
Ed Segall

uucp:   {...}!rutgers!caip.rutgers.edu!segall
arpa:   segall@caip.rutgers.edu

------------------------------

Date:    Tue, 19 Jul 88 06:34:31 EDT
From:    chuck@wooglin.scc.com (Charles Williams)
Subject: Other NFS Servers?

Does anybody have any experience using machines other than SUN's as NFS
servers?  For example, a VAX, or better yet a MultiMax from Encore
Computers?  If there is enough interest, a summary of all answers
received will be posted.

Please reply directly to:
chuck@wooglin.scc.com
	or
cwilliams@bluto.scc.com

Chuck Williams
Contel Federal Systems
<Standard Disclaimer, etc.>

------------------------------

Date:    Tue, 19 Jul 88 08:56 MDT
From:    "Samuel J. Cole" <SYSCOLE@chemistry.utah.edu>
Subject: Disk for 386i?

Greetings, Sun users!  Does any of you know whether it is possible to use
a 327-Mbyte disk/cartridge tape drive from a Sun 4/110 as a boot device
for a RR-250?

Thanks in advance for any help.

Sam Cole
Chemistry Computer Center
University of Utah
(801) 581-4696
Internet: cole@chemistry.utah.edu
Bitnet:   sjcole@UTAHCCA

------------------------------

End of SUN-Spots Digest
***********************