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 ***********************