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

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

SUN-SPOTS DIGEST          Sunday, 28 August 1988      Volume 6 : Issue 203

Today's Topics:
                      Re: Transputer products on Sun
             Problems with broadcast storms when booting Suns
                compiler bug in SunOS3.4 with -f68881 flag
                        remote command strangeness
                   Problem with system(3f) on SunOS 4.0
                   /usr/5bin/m4 is broken on SunOS 4.0
                   cc & dvipage problem with SunOS 4.0
                      questions on sun3/280+sunOS4.0
                             Emacs under 4.0?
                        mkfile(8) and sticky bits?
                          Clock losing 30 days?
                           psraster, bug fixes

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:    Wed, 24 Aug 88 07:22:52 EDT
From:    Mike Jipping <jipping@cs.hope.edu>
Subject: Re: Transputer products on Sun

> If anyone has news/hints/pointers on transputer products which can plug
> onto the VME bus of a Sun 3/280, or as an external box connected via SCSI
> port or anything to a 3/[50,60], please forward me a copy.  The only
> company I know now is Niche, but I believe there should be more.  Thank
> you.

Several companies offer transputer products -- most on PCs.  Microway and
Computer System Architects (CSA) are two I know of.  Of these, I know that
CSA also offers VME connections to their products -- but no SCSI that I
know of.  They have what they call a "Hypercube Special" -- 16 nodes + a
host "gateway" + languages (OCCAM, C) -- for $30,000.  You need a little
extra hardware to be completely configurable -- i.e., to get a
non-Hypercube configuration.

The sales rep that I had spoken with claimed that Sun NFS support is
forth- coming (I believe the words were "coming soon" :-).  They support
the 386i, and all their products run under DOS on the 386i as well as on a
machine with a VME bus.  

CSA's phone is (801) 374-2300.
	-- Mike

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

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

Date:    Wed, 24 Aug 88 17:04:13 EDT
From:    smb@research.att.com
Subject: Problems with broadcast storms when booting Suns

We're having a problem with broadcast storms when our diskless Suns are
booting.  Specifically, at some point in the booting process after /vmunix
is loaded, the machines send out broadcast Ethernet packets with a
non-broadcast IP address.  The destination IP address is in fact the
address of the YP server; the packet itself contains an RPC call to
gethostbyname for (of all things) the server itself.

Once this packet hits the net, every other Sun on the cable decides to be
a good citizen and forward it.  And when 40 or 50 hosts decide to
Etherspeak at once, chaos results.

A quick glance at the kernel shows no way the ARP code will do this.  I
tend to suspect a configuration error on our part, since we have very few
diskless machines -- most of our workstations have small SCSI Wren IIIs
for /, /tmp, swap, etc.

Any thoughts?  We're running SunOS 3.4 on all of our machines.

	--Steve Bellovin
	{att,ucbvax}!ulysses!smb
	smb@ulysses.att.com

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

Date:    25 Aug 88 07:20:34 GMT
From:    munnari!cad.oz.au!shand@uunet.uu.net (Mark Shand)
Subject: compiler bug in SunOS3.4 with -f68881 flag

Check out the prog at the end here on your sun 3/60 running 3.4 with mc68881:
Compile with plain old
	cc
and all is well.  You get
	(int)(mpu*10000) = 300	mpu*10000 = 300
Compile with
	cc -f68881
and you get
	(int)(mpu*10000) = 299	mpu*10000 = 300
hideous isn't it?

Let's look at the assembler of the two.  How do they differ?
10a11
> 	fmovem	#LSS25,a6@(-LFF25:l)
18,22c19,25
< 	movl	a6@(-0x8),d0
< 	movl	a6@(-0x4),d1
< 	lea	L2000001,a0
< 	jsr	Fmuld
< 	movl	d1,sp@-
---
> 	fmoved	a6@(-0x8),fp0
> 	fmuld	#0r1.00000000000000000e+04,fp0
> 	fmoved	fp0,sp@-
> 	fmoved	a6@(-0x8),fp0
> 	fmuld	#0r1.00000000000000000e+04,fp0
> 	fintrzx	fp0,fp0
> 	fmovel	fp0,d0
24,29d26
< 	movl	a6@(-0x8),d0
< 	movl	a6@(-0x4),d1
< 	lea	L2000001,a0
< 	jsr	Fmuld
< 	jsr	Fintd
< 	movl	d0,sp@-
40c37
< 	LP25 =	0x18
---
> 	LP25 =	0x14
42d38
< L2000001:	.long	0x40c38800,0x0
43a40
> 	.globl	f68881_used
It seems to me that the `fintrzx' should be a `fintx'.
And its my second last day at this job and all I want to do is finalize a
few things before I leave.  Oh hell.  I hope this one's been fixed in 4.0.
[[ I checked.  4.0 exhibits the same behavior.  --wnl ]]

Here's the offensive item:

#include <stdio.h>

main()
{
	double mpu;

	mpu = ((double) 3 / (double) 1) / (double) 100;
	printf("(int)(mpu*10000) = %d\tmpu*10000 = %g\n",
		(int)(mpu*10000),
		mpu*10000);
}

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

Date:    Thu, 25 Aug 88 11:27:27 EDT
From:    Sharon O. Beskenis <sdo@phoebus.larc.nasa.gov>
Subject: remote command strangeness

We have a network of Suns, Vaxen, and ISIs here at NASA LaRC.  On each of
these systems, I have a .rhosts file set up to allow rlogin, rsh, rcp from
any of the other machines.  I have no problems when executing rsh, etc.
between two non-Sun machines.  A problem arises, however, when I attempt
an rsh on any of our Suns such as phoebus from any other system as
follows:

	rsh phoebus cat .login

I get this message, "ioctl: Operation not supported on socket", followed
by the contents of .login on phoebus.  rsh phoebus ps ax would give me the
same silly message followed by the output of ps ax on phoebus.  rcp
commands to the Suns give the same message BUT they do NOT work.  rcp from
the Suns to these non-Sun machines does work, however.  rlogins work fine
without any strange comments both to and from the Suns.

SInce I do not have any source, I would appreciate it if anyone can shed
some light on the matter.

Thanks!

Sharon Beskenis
PRC Kentron
NASA LaRC
MS 478
Hampton, VA 23665
(804)865-3535
sdo@csab.larc.nasa.gov

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

Date:    25 Aug 88 04:50:06 GMT
From:    munnari!natmlab.dms.oz.au!ronb@uunet.uu.net (Ron Baxter)
Subject: Problem with system(3f) on SunOS 4.0

DESCRIPTION
The following happens with SunOS 4.0 on a Sun 4/110C with version 1.1 of
f77.

When a Fortran program calls the system(3F) subrooutine, the load stage
fails with _units undefined.  This also happens if a Fortran main program
calls a C routine that then uses system(3).  There is no problem with a C
main program that uses system(3).

DEMONSTRATION
The following script shows a simple fortran program that produces the
problem.

Script started on Thu Aug 25 13:57:07 1988
1 dmsyip% cat hello.f
	write(*,*)'hello world'
	call system("who")
	end
2 dmsyip% 
2 dmsyip% f77 hello.f
hello.f:
 MAIN:
ld: Undefined symbol 
   _units 
3 dmsyip% exit
4 dmsyip% 
script done on Thu Aug 25 13:58:07 1988

FIX
I found some source code for system.c and renamed it systm to avoid the
name entirely.

	Ron Baxter, CSIRO Div Maths & Stats,
	PO Box 218, Lindfield, NSW, Australia.
	Phone:	+61 2 467 6059		
	Email:	ronb@natmlab.oz.au

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

Date:    25 Aug 88 04:46:58 GMT
From:    munnari!natmlab.dms.oz.au!ronb@uunet.uu.net (Ron Baxter)
Subject: /usr/5bin/m4 is broken on SunOS 4.0

PROBLEM
The following happens on SunOS 4.0 on a Sun 4/110C.

SunOS 4.0 has a broken /usr/5bin/m4 that returns nothing but a newline in
response to the builtin macro "incr".  This did not happen with
Sys4-3.2_rev2.

DEMONSTRATION
The following script shows that /usr/bin/m4 responds correctly to incr(7),
while /usr/5bin/m4 does not.

Script started on Thu Aug 25 13:45:40 1988
1 dmsyip% 
1 dmsyip% echo "incr(7)" | /usr/bin/m4
8
2 dmsyip% 
2 dmsyip% echo "incr(7)" | /usr/5bin/m4

3 dmsyip% exit
4 dmsyip% 
script done on Thu Aug 25 13:46:40 1988

FIX
Bring back the binary of /usr/5bin/m4 from the Sys4-3.2_rev2 tape.

	Ron Baxter, CSIRO Div Maths & Stats,
	PO Box 218, Lindfield, NSW, Australia.
	Phone:	+61 2 467 6059		
	Email:	ronb@natmlab.oz.au

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

Date:    Thu, 25 Aug 88 09:13:08 CDT
From:    deleone@cs.wisc.edu (Renato De Leone)
Subject: cc & dvipage problem with SunOS 4.0

I have problems with cc and dvipage  under SunOS 4.0 on a SUN 4/110.  I
receive the following error:

Undefined:
_jcsetpgrp
_win_keymap_set_imask_from_std_bind
_win_keymap_set_smask
_win_keymap_set_smask_class
_win_keymap_get_smask
_win_keymap_unset_smask
_svc_fdset
_svc_getreqset

(BTW I am linking the libraries -lsuntool -lsunwindow -lpixrect)

Any idea ???? Thanks in advance

Renato De Leone
arpa :  deleone@cs.wisc.edu
Telephone:  (608) 262-5083

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

Date:    Thu, 25 Aug 88 10:00:20 EDT
From:    Ronald G Minnich <rminnich@super.org>
Subject: questions on sun3/280+sunOS4.0

We have a mixed network of Sun 3's, all but one running 3.5, the new one
running 4.0. We want to try 4.0 out for a while on just one machine before
committing to it. 

A specific question is yellow pages. the 4.0 machine can not use any of
the 3.5 machine's yellow pages servers, but must use its own. It does not
look like any of the udp port numbers have changed; anybody have a clue as
to what is going on here?  It appears that the 4.0 machine cannot find the
port mapper, as rpcinfo won't even work to the local machine! Is there
some simple fix?  (Junk yellow pages? ...)

In a slightly related question, i notice that the key in the ypmap for
services.byname is portnumber/protocol, e.g. the key for the map is the
thing you are looking for. This seems strange to me, since it means
getservbyname has to essentially do a linear search of the ypmap instead
of /etc/services which has got to be slower. Any good reason for this?
Seems that the key ought to be the service, e.g.  for ntp the key should
be 'ntp', not '123/udp'. 

ron

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

Date:    Wed, 24 Aug 88 15:03:10 BST
From:    Paul Hudson <mcvax!moncam!paul@uunet.uu.net>
Subject: Emacs under 4.0?

Emacs won't compile under 4.0 if you've installed the fixes to the X11
stuff.  This produces two initialised variables in dispnew.c
(in_update_screen, change_screen_size_update). These end up in the pure
text after dumping, but emacs attempts to modify them. Removing the
initialisation makes everything work.

Paul Hudson 

Snail mail: Monotype ADG	Email:	...!ukc!acorn!moncam!paul
	    Science Park,		paul@moncam.co.uk
	    Milton Road,	"Sun Microsysytems:
	    Cambridge,		 The Company is Arrogant (TM)"
	    CB4 4FQ

[[ Which emacs?  Gnu?  Unipress?  CCA?  --wnl ]]

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

Date:    24 Aug 88 23:55:33 GMT
From:    jeff@tc.fluke.com (Jeff Stearns)
Subject: mkfile(8) and sticky bits?

Why does mkfile (8) set the sticky bit on the files it creates?

		 Jeff Stearns
	 Domain: jeff@tc.fluke.COM
	  Voice: +1 206 356 5064
    If you must: {uw-beaver,microsoft,sun}!fluke!jeff
	   USPS: John Fluke Mfg. Co. / P.O. Box C9090 / Everett WA  98206

[[ For 4.0, the sticky bit has significance.  Go read the manual page for
mkfile(8) and sticky(8).  Mkfile is designed to create a file suitable for
use as an NFS swap area.  After you read sticky(8), it should be apparent
why mkfile sets it.  --wnl ]]

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

Date:    9 Aug 88 05:25:08 GMT
From:    mit-amt!turk%mit-amt.MEDIA.MIT.EDU@eddie.mit.edu (Matthew Turk)
Subject: Clock losing 30 days?

Every time I reboot my 3/160, I get the message

  WARNING: clock lost 30 days  -- CHECK AND RESET THE DATE!

...and sure enough it has.  Anyone know how to fix this?  Thanks....

[[ Checked your clock's battery lately?  Maybe it's dead.  --wnl ]]

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

Date:    Wed, 24 Aug 88 20:04:41 +0300
From:    leonid@TAURUS.BITNET
Subject: psraster, bug fixes

Here are some minor bug fixes to the psraster program, and a new
PostScript Prologue with better memory reuse. The diffs fixes the
BoundingBox line, and the malfunction when no parameters are supplied.

Leonid
____________________

#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#       psraster.c.diff
#       psraster.ps
# This archive created: Wed Aug 24 19:55:45 1988
export PATH; PATH=/bin:/usr/bin:$PATH
if test -f 'psraster.c.diff'
then
    echo shar: "will not over-write existing file 'psraster.c.diff'"
else
cat << \SHAR_EOF > 'psraster.c.diff'
*** /tmp/geta25986      Wed Aug 24 19:30:53 1988
--- /tmp/getb25986      Wed Aug 24 19:31:03 1988
***************
*** 117,123 ****
        Canvas.off_y = -1;


!       for (; optind < argc; optind++) {

                /*
                 * Process argc/argv.
--- 117,123 ----
        Canvas.off_y = -1;


!       for (; optind < argc || optind == 1; optind++) {

                /*
                 * Process argc/argv.
***************
*** 374,380 ****
        (void) fprintf(stderr, "Image size %d %d, offset %d %d\n",
                  Bounds.size_x, Bounds.size_y, Bounds.off_x, Bounds.off_y);
  #endif
!       (void) fprintf(outfile, "%%%%BoundingBox [ %d %d %d %d ]\n",
                       Bounds.off_x, Bounds.off_y,
                       Bounds.off_x + Bounds.size_x,
                       Bounds.off_y + Bounds.size_y);
--- 374,380 ----
        (void) fprintf(stderr, "Image size %d %d, offset %d %d\n",
                  Bounds.size_x, Bounds.size_y, Bounds.off_x, Bounds.off_y);
  #endif
!       (void) fprintf(outfile, "%%%%BoundingBox: %d %d %d %d\n",
                       Bounds.off_x, Bounds.off_y,
                       Bounds.off_x + Bounds.size_x,
                       Bounds.off_y + Bounds.size_y);
SHAR_EOF
fi
if test -f 'psraster.ps'
then
    echo shar: "will not over-write existing file 'psraster.ps'"
else
cat << \SHAR_EOF > 'psraster.ps'
%%Start_Prologue
%%Prologue_Version: @(#)psraster.ps     2.3     leonid@math.tau.ac.IL   88/08/24
% Prologue for psraster command which converts SUN standard raster imager
% into PostScript. The program uses repeated bytes encoding and following
% are PostScript routines to decode the format.
% Lasst changes From Wilson M. Michaels <Michaels@MCC.COM>

/ScanString 128 string def      % String used to hold binary data.

/ByteString 1 string def        % String used to get a one byte number.

/FillString {                   % size size value FillString string
    exch ScanString exch        % size value string size
    dup {                         % repeat "size" times.
        1 sub                     % size value string index
        2 copy                    % size value string index string index
        4 index                   % size value string index string index value
        put                     % size value string index
    } repeat                    % Exit from loop leaves a 0 on the stack as inde
    4 -1 roll                   % value string 0 size
    getinterval                 % value string
    exch pop                    % string
} bind def

/GetImageRow {
    currentfile                 % Get the "count" byte from currentfile
    ByteString readhexstring pop 0 get
    dup 128 lt
    {                           % if "count" < 128
                                % Make a string the right length
        ScanString exch         % string size
        0 exch                  % string 0 size
        getinterval             % string
        currentfile exch
        readhexstring pop       % string

    }
    {                           % if "count" >128
        128 sub                 % fix the count
        dup
        currentfile ByteString
        readhexstring pop 0 get    % and the value
        FillString
    } ifelse
} bind def

%%EndPrologue
SHAR_EOF
fi
exit 0
#       End of shell archive

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

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