Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84 SMI; site sun.uucp Path: utzoo!linus!decvax!decwrl!sun!mojo From: mojo@sun.uucp (Joseph Moran) Newsgroups: net.unix-wizards,net.works Subject: Re: Question on odd Sun behaviour Message-ID: <2741@sun.uucp> Date: Sun, 1-Sep-85 20:26:24 EDT Article-I.D.: sun.2741 Posted: Sun Sep 1 20:26:24 1985 Date-Received: Mon, 2-Sep-85 09:21:45 EDT References: <415@dcl-cs.UUCP> Reply-To: mojo@sun.UUCP (Joseph Moran) Organization: Sun Microsystems, Inc. Lines: 27 Xref: linus net.unix-wizards:11838 net.works:869 Summary: In article <415@dcl-cs.UUCP> de@dcl-cs.UUCP (David England) writes: >A couple of times now our Sun 120 has done a reboot after this, apparently >harmless, command line (it didn't use to do this); >% cat file | csvax lpr > >where csvax is a remote machine entry in /usr/host. > >The machine goes into KERNEL mode, does a traceback, gives a panic: Address >error, then reboots. > Well, as it turns out when the Sun kernel copies data out to the user address space, it doesn't always check data alignment. If a fault occurs during the move, the kernel is supposed to detect that this fault was not really a kernel fault, rather it is to be treated as a user fault and the system call should return EFAULT or something like that. In the 1.x kernels, the address error fault code was not doing this, and thus a bad pointer to certain system calls could cause an address error panic. The address error kernel bug is fixed in Sun release 2.0. Thus I'm hoping that you are running a 1.x kernel. As to what system call had a misaligned pointer in your example you got me. I'd look at a crash dump to look what's happening there. If you get a 2.0 system and you have the same system call parameters, the system call will just fail instead of panic'ing the kernel. Joe Moran