From:     Digestifier <Linux-Admin-Request@senator-bedfellow.mit.edu>
To:       Linux-Admin@senator-bedfellow.mit.edu
Reply-To: Linux-Admin@senator-bedfellow.mit.edu
Date:     Sun, 8 May 94 19:15:40 EDT
Subject:  Linux-Admin Digest #626

Linux-Admin Digest #626, Volume #1                Sun, 8 May 94 19:15:40 EDT

Contents:
  Re: Getting rid of zombies (Matthew Dillon)
  Re: More than two IDE under Linux? (Oleg Zabluda)
  Re: mgetty-0.20 problem (Timothy Murphy)
  Re: MultiProccessor Support? (Ron Smits)
  Re: SLIP Server Setup (Erik Olson)
  Re: HELP! How to install two ethernet cards? (David Anthony Besancon)
  Re: SLS install via NFS broken? (Dan Wilder)
  scsidisk: I/O error: dev 0810, sector 0 ???? (Howard "the Duck" Taylor)
  Re: sendmsg system call? (Mr KAA Smith)
  df doesn't show correct info (stos)
  Re: SLIP Server Setup (Dan Swartzendruber)
  Re: Kernel 1.1.12 compile problems (Dave Goldsmith)
  Re: mgetty-0.20 problem (H. Peter Anvin N9ITP)

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

From: dillon@apollo.west.oic.com (Matthew Dillon)
Subject: Re: Getting rid of zombies
Date: 6 May 1994 08:48:22 -0700

In article <rkwtgs.234.2DCA173A@pukrs3.puk.ac.za> rkwtgs@pukrs3.puk.ac.za (Theo Scott) writes:
:In article <2q9jdd$gp3@apollo.west.oic.com> dillon@apollo.west.oic.com (Matthew Dillon) writes:
:>    I think).  Killing the parent will kill all zombies under it.  Of
:>    course, if you are getting zombie processes then there is probably
:>    a bug in the parent :-)
:
:>                                        -Matt
:Bug ? I do get zombies all the time,  SUN-OS and AIX 3.2.x.
:As far as I can tell this is normal behavior when a child exit before
:the parent. 
:
:You get red of zombies by trapping SIGCHLD. Then you must kill the 
:children in the same order they were created.
:
:Theo
: 
:     +-----------------------------------------------------------------+
:     |    Theo Scott                      Dept. Computer Science       |
:     |    Tel: +27 +148 +99-2531          Potchefstroom University     |
:     +-----------------------------------------------------------------+
:     |  DOS  = "Can't live with it, but can't live without it"         |
:     |  UNIX = DOS - "Can't live with it" + RISC - CISC -64k + TCP +   |
:     |         ICMP + NNTP + UDP + C - "System mostly hangs" + NFS +   |
:     |         core + ...                                              |
:     +-----------------------------------------------------------------+

    You get rid of zombies through the wait() family of system calls --
    wait(), waitpid(), wait3(), and wait4().  SIGCHLD is a convenient
    way of handling them, but not a requirement, and the only time you see 
    zombies in the process table is if the parent hasn't read their exit
    status (using wait*()) yet.  Once the exit status is read with wait*(),
    the zombie goes away.

    If the zombie doesn't go away quickly, there is likely a bug in the
    parent... it's not reading the child's exit code.

                                                -Matt

-- 

    Matthew Dillon              dillon@apollo.west.oic.com
    1005 Apollo Way
    Incline Village, NV. 89451  ham: KC6LVW (no mail drop)
    USA                         Sandel-Avery Engineering (702)831-8000
    [always include a portion of the original email in any response!]


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

From: zabluda@math.psu.edu (Oleg Zabluda)
Subject: Re: More than two IDE under Linux?
Date: 8 May 1994 17:04:29 GMT

Siyad Ma (siyad@leland.Stanford.EDU) wrote:
: Has anybody tried to use 2 IDE controllers to access 4 IDE drives
: under Linux? How can you do it? Can you create something like
: /dev/hdc? and /dev/hdd?

: Siyad

Get atdisk2 patch. Your harddrives will be /dev/hd1a ...
I am using it right now.
Oleg.


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

From: tim@maths.tcd.ie (Timothy Murphy)
Crossposted-To: comp.os.linux.help
Subject: Re: mgetty-0.20 problem
Date: 8 May 1994 18:00:27 +0100

chandra@marigold.cs.odu.edu (Sekhar Chandra) writes:

>Id "s2" respawning too fast:disables for 5 minutes

>I am using the following entry in /etc/inittab

>s2:45:respawn:/usr/local/sbin/mgetty 19200 ttyS1 

Aren't you meant to say "mgetty -s 19200" ?
Perhaps it doesn't matter?

>ps  -x does not show mgetty process. I have done reboot few times
>with no result.

I think you are meant to give a debug level, eg

s2:45:respawn:/usr/local/sbin/mgetty -x 3 -s 19200 ttyS1 

This produces a log file /tmp/mg_log.ttys2.

I don't know if this is relevant,
but I found that my policy.h in mgetty sources
was looking for ascii lockfiles
while in fact they were binary.
However, this didn't cause respawning.



-- 
Timothy Murphy  
e-mail: tim@maths.tcd.ie
tel: +353-1-2842366
s-mail: School of Mathematics, Trinity College, Dublin 2, Ireland

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

From: ron@draconia.hacktic.nl (Ron Smits)
Subject: Re: MultiProccessor Support?
Date: 8 May 1994 09:50:33 GMT

X window startup procedure (x@pops.navo.navy.mil) wrote:
: In article 7rr@charm.magnus.acs.ohio-state.edu, ewalton@magnus.acs.ohio-state.edu (Elaine Walton) writes:
: >Let me try.  Multiprocessors (MPUs) are either tightly (common memory) or
: >loosely (interprocess communication--like a pipe) coupled.  Loosely coupled 
: >MPUs don't require compiler interfacing--there are no shared (or "contended") 
: >data regions.  In fact, a network is very simply a loosely coupled MPU.
: >
: >However, for tightly coupled MPUs process distribution can be managed solely by
: >the OS.  Using a fork() (a loosely coupled connection) an MPU calls the OS to
: >pass the I/O pipe data through shared queues (standard semiphore control is a
: >must).  Yet, threads are different matter.  The compiler MUST lock all 
: >critically sectioned shared data.  Otherwise, there will be no control.  
: >Consider the following example:
: >
: >          Thread #1                      Thread #2
: >        --------------                ----------------
: >CPU TIME1  MOV AX, SharedData             ??????
: >        2  ADD AX, #20                    MOV AX, SharedData
: >        3  MOV SharedData, AX             SUB AX, #30
: >        4   ????????????                  MOV SharedData, AX
: >
: >If SharedData began with #50, what would be the result?  Even the Pentium's
: >cache snooping won't help here.  The compiler must tell the other processors to
: >wait for that section of memory.  Under normal circumstances, the case above
: >will probably not happen, unless several processors are working on matrix
: >arithmetic.  HOWEVER, its that possibility of data corruption is really
: >annoying. ;)
: >-Sean

[ Large part deleted ]

One  popular Unix version using MPU  (Don't  look at my second mailing
address I  don't want to  make an advertisement)  has the MPU handling
completly in the kernel. You don't need a special compiler.

we are  talking about  a tightly coupled  MPU  system here. The kernel
will handle it using extra sets of  locks called MUTEX locks (MUTually
EXclusive). All kernel structures   have   these locks  added.     The
scheduler will  start processes on  a processor  if that  processor is
available and there  are processes in  the  process table that  do NOT
have a MUTEX lock from another process are NOT put to sleep because of
waiting for resources to become available (usually this is waiting for
IO or waiting for the availability of a device)

When  a process is  running, all data like  .text, .shrd  and .lib are
considered  sharable and read-only.  When a process  wants to change a
page like that The data in the page  is immediatly copied to a private
page, this is called COW Copy On Write.

This is of  course an extremly short and  very global description. But
it works ver well and IMHO it's a very elegant solution

  --



                Ron Smits
                ron@draconia.hacktic.nl
                Ron.Smits@Netherlands.NCR.COM

/*-( My opinions are my opinions, My boss's opinions are his opinions )-*/
/*-(                They might not be the same                        )-*/

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

From: erik@hilo.phys.washington.edu (Erik Olson)
Subject: Re: SLIP Server Setup
Date: 6 May 1994 00:32:41 GMT

Uri Blumenthal (uri@watson.ibm.com) wrote:
:>In article <2q3bo1$phv@chopin.udel.edu>, duggan@chopin.udel.edu (Richard Duggan) writes:
:>> DIP: Dialup IP Protocol Driver version 3.3.7-uri (05 Apr 94)
:>> Written by Fred N. van Kempen, MicroWalt Corporation
:>> 
:>> Your IP address is 128.175.122.97   Server address is 128.175.122.99.  
:>> Starting SLIP
:>> 
:>> DIP:  tty_notlocal cannot setid:  Operation not permitted
:>> DIP:  tty_notlocal cannot TIOCSCTTY:  Bad file number
:>> DIP:  tty:  set_state:  Bad file number
:>> DIP:  tty_notlocal cannot clr CLOCAL:  Bad file number
:>> NO CARRIER
:>> I have no idea what these error messages mean.  I don't even know if 
:>> it's doing the same thing when I use DIP.  What foolish thing have I missed?

:>Maybe your DIP (on server side) isn't set-UID root?

I have had this exact bug happen to me as well, even with it suid root.
I traced the souce and found that tty_notlocal is called before tty_open,
causing the bad file number error.  I think it's a bug.
On dip-lilo, tty_notlocal isn't called.  I have no idea which variants
introduced (or removed?) the call, so I have no idea whether it really should
be in there.

   - Erik

---
Erik D. Olson                                olson@phys.washington.edu
Grad Student                            erik@marge.phys.washington.edu

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

From: besancon@whale.st.usm.edu (David Anthony Besancon)
Subject: Re: HELP! How to install two ethernet cards?
Date: 8 May 1994 12:46:47 -0500

in /usr/src/linux/drivers/net/Space.c you need to add a change a few lines
to have it autodetect the cards.
CODE FOR Space.c (to add, not entire program)

/* "eth0" defaults to autoprobe (== 0), other use a base of 0xffe0 (== -0x20),
   which means "don't probe".  These entries exist to only to provide empty
   slots which may be enabled at boot-time. */

static struct device eth3_dev = {
    "eth3", 0,0,0,0,0xffe0 /* I/O base*/, 0,0,0,0, NEXT_DEV, ethif_probe };
static struct device eth2_dev = {
    "eth2", 0,0,0,0,0xffe0 /* I/O base*/, 0,0,0,0, &eth3_dev, ethif_probe };
static struct device eth1_dev = {
    "eth1", 0,0,0,0,0xffe0 /* I/O base*/, 0,0,0,0, &eth2_dev, ethif_probe };

/***************************************************************************
  for the other ethernet devices you can either hardcode the address
  or change the 0xffe0 to 0 to enable autoprobe.
***************************************************************************/


static struct device eth0_dev = {
    "eth0", 0, 0, 0, 0, ETH0_ADDR, ETH0_IRQ, 0, 0, 0, &eth1_dev, ethif_probe };

#   undef NEXT_DEV
#   define NEXT_DEV     (&eth0_dev)

hope this helps

david.

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

From: danw@hebron.connected.com (Dan Wilder)
Subject: Re: SLS install via NFS broken?
Date: 8 May 1994 10:55:21 -0700

joef@spdc.COM (Joe Fomenko) writes:


>Has anyone been able to install the modular SLS via an NFS (Sun) server?

>Booting from the SLS A1 disk apparently does not auto probe my 
>3C503 NIC (out-of-the-box setup), so the ifconfig fails in rc.net???  :(

Check the kernel notes and see if the 3c503 driver is in, likely it
is not.  If this is the case, you need to build a bootdisk that has
3c503 in, or get somebody (preferably who has SLS so their bootdisk
for sure works with SLS root) to build you a bootdisk with 3c503 in.
Boot disk would most likely get too big with all possible drivers in,
don't remember what SLS does, Slackware comes with about 6 different
boot images gzipped, you choose and use RAWWRITE.EXE to make your
choice.  Still not all possible drivers, but closer.

---
Dan Wilder

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

From: taylor@stimpy.eecis.udel.edu (Howard "the Duck" Taylor)
Subject: scsidisk: I/O error: dev 0810, sector 0 ????
Date: 6 May 1994 01:06:14 GMT


hi all -
        my scsi disk crashed hard today.  I had X up, and someone else
popped to another VT, and typed "startx"   :(

trivial info:  linux 1.0, slack 1.1.2, X2.0, adaptec 152x 

at that point - the system rebooted and stopped at:
        scsi: 1 hosts
line from the kernel.  

now - I have mounted the disk on another linux box, and each time the
new box boots, I get this:


==============================================================================
[... early kernel output]
scsi: detected 3 SCSI disks 1 tape 0 cdroms total
sd1: READ CAPACITY failed.
sd1: status = 1   message = 00  host = 0  driver = 28
sd1: extended sense code = 2
sd1: block size assumed to be 512 bytes, disk size 1 GB
[... some other kernel output]
Partition Check:
   [... other disks]
   scsidisk I/O error: dev 0810, sector 0
        unable to read partition table of device 0810
   sdc: sdc1 sdc2 sdc3 sdc4
   [... other disks]
==============================================================================

just for those interested:
        sdc1    linux native 250MB
        sdc2    linux swap   16MB
        sdc3    linux swap   16MB
        sdc4    linux native 350MB

I was able to successfully mount sdc1 and sdc4 - and back them up   - phew!

then - I tried to rewrite the partition table - still got the I/O error.
then - I did a low level format from the adaptec 1540cf bios routine,
rewrote the partition table - still got the I/O error.....

I am clueless at this point. any ideas out there?

thanks muchly,
Howie
-- 
=============================================================================
Howard Taylor <taylor@ee.udel.edu>
Dept of Electrical Engineering
University of Delaware

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

From: kasmi2@nella33.cc.monash.edu.au (Mr KAA Smith)
Subject: Re: sendmsg system call?
Date: 6 May 1994 01:11:29 GMT

jha@kidd.vet.purdue.edu (John Aughey) writes:

>Does anyone know if the sendmsg system call has been implemented in
>Linux yet?  My manual pages says it has not been implemented YET.
>If you know how I can get this system call, please mail me.

>jha
>-- 

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>

and you're away!

you can then use msgsnd, msgrcv and msgctl.

I had to write a message queue based server (used shared mem, too).  No
probs.  The only thing lacking was an ipcs and ipcrm binary, but after
hunting through a slackware distribution on a site that mirrors it, I
found the binaries....suggest you get them..I think it was in the
util.tgz package in the 'a' disks.

Regards,
  Keith

3rd Year Info. Sys
Monash Uni, Caulfield
Victoria, Australia

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

From: stos@titan.ucs.umass.edu (stos)
Subject: df doesn't show correct info
Date: 5 May 1994 16:32:55 -0400

The command "df" isn't showing me the correct info.
example:
---
fantasia:~# df
Filesystem         1024-blocks  Used Available Capacity Mounted on
/dev/hda2             204801  191182     3379     98%   /
/dev/hda1             102386   85984    16402     84%   /dosc
/dev/hda4              12210   10715      885     92%   /usr/local/bin
fantasia:~#
---

there is about 10 megs which is not being recognized. Is there anything
that I can do about this. Is a "feature" so that some extra space is
always there for temp storage or is something corrupt?

thanks 
-stos


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

From: dswartz@pugsley.osf.org (Dan Swartzendruber)
Subject: Re: SLIP Server Setup
Date: 8 May 1994 20:07:22 GMT

In article <2qc379$t88@news.u.washington.edu> erik@hilo.phys.washington.edu (Erik Olson) writes:
>Uri Blumenthal (uri@watson.ibm.com) wrote:
>:>In article <2q3bo1$phv@chopin.udel.edu>, duggan@chopin.udel.edu (Richard Duggan) writes:
>
>I have had this exact bug happen to me as well, even with it suid root.
>I traced the souce and found that tty_notlocal is called before tty_open,
>causing the bad file number error.  I think it's a bug.
>On dip-lilo, tty_notlocal isn't called.  I have no idea which variants
>introduced (or removed?) the call, so I have no idea whether it really should
>be in there.

As I understand it, without that tty_notlocal() stuff, dip won't
detect the hangup when (if) the modem connection goes down.  This
is especially annoying when using SLIP server setup, as it leaves
that modem line in an unusable state until the sysadmin notices
and kills the dip.  This functionality was introduced in the uri
variant of dip.  I'm uploaded a version with this (and another
similar bug) fixed to sunsite as:

/pub/Linux/system/Network/callers/dip-337.uri.dswartz.gz

I've been running this code for incoming and outgoing connections
for over a month with no problems.  I didn't really like having
to introduce yet another DIP variant, but maybe Uri can be
prevailed on to merge my changes back in.

-- 

#include <std_disclaimer.h>

Dan S.

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

From: cs65x4@sdcc8.ucsd.edu (Dave Goldsmith)
Subject: Re: Kernel 1.1.12 compile problems
Date: 8 May 94 18:45:01 GMT

In article <CpFz31.H3n@info.bris.ac.uk> Mark.Fernyhough@bristol.ac.uk writes:
>I can't seem to be able to compile 1.1.12, i get the error
>
>net/net.o: Undefined symbol _rarp_ioctl referenced from text segment
>fs/filesystems.a(proc.o): Undefined symbol _rarp_get_info referenced from text segment
>make: *** [tools/zSystem] Error 1

1) You need to add the following lines to the net/inet/Makefile in order to
   add in support for RARP if CONFIG_INET_RARP is defined:

ifdef CONFIG_INET_RARP

OBJS    := $(OBJS) rarp.o

endif

2) In order to compile succesfully if CONFIG_INET_RARP is NOT defined, you
   need to modify fs/proc/net.c and net/inet/sock.c   In both files, you
   need to surround the RARP-related code with (#ifdef CONFIG_INET_RARP ...
   #endif) so that if you do not define CONFIG_INET_RARP, the calls to 
   rarp_ioctl and rarp_get_info will not be made, otherwise you get the
   above mentioned "Undefined symbol" error.

3) If you have already tried to compile the kernel, and got this error,
   after changing the 3 mentioned files, remove net/inet/inet.o, net/net.o
   and net/network.a   This will cause themake command to go back and
   regenerate the inet.o file which will compile and include the
   net/inet/rarp.o file if CONFIG_INET_RARP was defined.

Dave Goldsmith
cs65x4@icse1.ucsd.edu

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

Crossposted-To: comp.os.linux.help
From: hpa@ahab.eecs.nwu.edu (H. Peter Anvin N9ITP)
Subject: Re: mgetty-0.20 problem
Reply-To: hpa@nwu.edu (H. Peter Anvin)
Date: Sun, 8 May 1994 19:16:22 GMT

Followup to:  <2qj5rb$s8n@hamilton.maths.tcd.ie>
By author:    tim@maths.tcd.ie (Timothy Murphy)
In newsgroup: comp.os.linux.help
> 
> I don't know if this is relevant,
> but I found that my policy.h in mgetty sources
> was looking for ascii lockfiles
> while in fact they were binary.
> However, this didn't cause respawning.
> 

I think the recommended lock files on Linux are ASCII lockfiles.
Seyon compiles to use binary ones by default; you have to change that
in the sources, unfortunately (I think it is config.h but I don't
remember for sure).

Your problem is most likely with the command line syntax, which should
be:

mgetty -x <debug-level> -s <speed> -i <issue-file> <device>

For example:

mgetty -x 2 -s 38400 -i /etc/issue.modem ttyS2

        /hpa
-- 
INTERNET: hpa@nwu.edu               FINGER/TALK: hpa@ahab.eecs.nwu.edu
IBM MAIL: I0050052 at IBMMAIL       HAM RADIO:   N9ITP or SM4TKN
FIDONET:  1:115/511 or 1:115/512    STORMNET:    181:294/101
To the memory of Richard Nixon we will now dedicate 18 1/2 minutes of silence.

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


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: Linux-Admin-Request@NEWS-DIGESTS.MIT.EDU

You can send mail to the entire list (and comp.os.linux.admin) via:

    Internet: Linux-Admin@NEWS-DIGESTS.MIT.EDU

Linux may be obtained via one of these FTP sites:
    nic.funet.fi				pub/OS/Linux
    tsx-11.mit.edu				pub/linux
    sunsite.unc.edu				pub/Linux

End of Linux-Admin Digest
******************************
