Subject: Linux-Development Digest #387
From: Digestifier <Linux-Development-Request@senator-bedfellow.MIT.EDU>
To: Linux-Development@senator-bedfellow.MIT.EDU
Reply-To: Linux-Development@senator-bedfellow.MIT.EDU
Date:     Wed, 19 Jan 94 06:13:08 EST

Linux-Development Digest #387, Volume #1         Wed, 19 Jan 94 06:13:08 EST

Contents:
  Re: Subnetting on non byte boundaries (Gregory Gulik)
  Re: Kernal global makefile suggestions. (Jorge Cwik)
  Re: Term bug (?) (R. Stewart Ellis)
  Re: pl14p serial code broken ! (Rene COUGNENC)
  Re: pl14p serial code broken ! (Rene COUGNENC)
  Re: pl14p serial code broken ! (Rene COUGNENC)
  e2fsprogs-0.4a / fsck / pl-14p prob. (Gary Anderson)
  Re: Better than Xmag ? (Benjamin Weste Pearre)
  Re: [ANSWER] PL14n and PL14o ext2 problems (Neal Becker)
  Re: Still: Undefined symbol ___setfpucw (Mitchum DSouza)
  How do I access I/O ports above 0x3ff in user mode? (William R. Dieter)

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

From: gulik@mink.cig.mot.com (Gregory Gulik)
Subject: Re: Subnetting on non byte boundaries
Date: 18 Jan 1994 22:09:14 GMT

In article <758577697.38snx@work.invlogic.com>,
Mike McLagan <mmclagan@work.invlogic.com> wrote:
>Hi,
>
>   I have a situation where I would like to divide the 1 class C address I 
>have into a number of subnets.  The docs/HOWTO say that subnetting is
>supported, but only on byte boundaries.  Does anyone know if there's a plan
>or a way to get to use non-byte boundaries for subnetting?  How much work
>is involved in it?
>
>   Specifically, I'd like to create:
>
>   222.222.222.10
>   222.222.222.20
>   222.222.222.30
>   222.222.222.00
>    
>   as subnets with up to 14 hosts each, and use a subnet mask of
>   255.255.255.240.
>
>   Any assistance would be greatly appreciated.

I did exactly this on my network at home.  It seemd to work ok
with pl14o.

Now, if only SLIP didn't crash every couple days.....

-- 

-greg

gulik@cig.mot.com  (Gregory Gulik)  [NeXT] [MIME]

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

From: jorge@laser.satlink.net (Jorge Cwik)
Subject: Re: Kernal global makefile suggestions.
Date: Tue, 18 Jan 94 11:06:08 ARG

eric@tantalus.nrl.navy.mil (Eric Youngdale) writes:

> drew@kinglear.cs.colorado.edu writes:
> >Eric said that there are hooks in the linker for C++ global constructors
> >which would allow us to do configuration entirely at link time, since the
> >initialization functions called would be dependant on which .o files linked
> >in.
> >
> >IMHO, this is the cleanest, potentially fastest, and therefore best 
> >solution.  Unfortunately, as far as I can tell no one has done anything with
> >this proposal, like actually writing some test code.
> 
>       I started in on it, and I gave some diffs to Donald so that he could
> see how it was done.  The diffs are a bit dated now unfortunately, but
> I was thinking of letting it go until after 1.0 before trying to get
> something like this in the distribution kernel.  I got really sidetracked
> by the cluster stuff, so I have not done anything at all with this since
> late November.

I understand the issue have been already mentioned, but wouldn't be
possible to support some kind of runtime configuration ?

While we know that a 'config.sys' file can't be read at boottime, it would
be possible to have a text configuration file embedded in the kernel image.
The kernel could provide access to this file for the drivers. A system
utility could 'extract' and 'store' the text file for editing. This file
should be divided by sections and entries, much as many other configuration
files.

It would probably require some work at the kernel level, but isn't worth
to avoid constant kernel recompiling ?

        Jorge


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

From: ellis@nova.gmi.edu (R. Stewart Ellis)
Subject: Re: Term bug (?)
Date: 19 Jan 94 04:54:09 GMT

Schultz_Russell@semail.jsc.nasa.gov (Schultz, Russell) writes:

 >In article <1994Jan18.133344.12520@aio.jsc.nasa.gov>
 >Schultz_Russell@semail.jsc.nasa.gov (Schultz, Russell) writes:

 >> A friend and i use the same account, and just recently tried running
 >> term at the same time.  Apparently the two processes competed.  I
 >> logged in first.  Then he logged in--set a tredir on port 4000 to his
 >> machine(it worked).  The terminal server kicked me off, so i re-dailed
 >> in, restarted term.  At this point, his tredir stopped working, and he
 >> had to restart term to get it to work.  
 >> 
 >> Does term assume it's the only instance running? or the only instance
 >> from that account?  Not that it's a real big problem, of course. :)

 >Perhaps I should elaborate a little more.

 >I have an account on the sun, my friend and I have 2 separate linux
 >boxes.
 >The tredir mentioned above was on the sun, so that telnets to its ports
 >show up on the linux box.  

 >I guess a better question would be--how does TERM/TREDIR or whichever
 >of its fun little parts determine who belongs to who on a multi-users
 >and/or multi-login environment?  

There is a command line switch that allows you to set up dedicated sockets
which would prevent this, although I have never had occasion to do this.

 >Russ.

 >btw, I got a semi-berative e-mail from somebody denouncing my use of
 >this group for a question such as this.  I can only assume that TERM is
 >a mostly LINUX product, and development means development of LINUX type
 >products--hence this would be the proper group.  Comments on this? or
 >is this an operating-system-development-questions-only kinda group?

I really wonder this too.  Evidently this group is for kernel type stuff.  I
am not sure the best place for term stuff.  We ought to get our own
newsgroup, probably in comp.protocols.  Many of us use term without a linux
box in sight.

-- 
  R.Stewart(Stew) Ellis, Assoc.Prof., (Off)313-762-9765   ___________________
  Humanities & Social Science,  GMI Eng.& Mgmt. Inst.    /   _____  ______ 
  Flint, MI 48504      ellis@nova.gmi.edu               /        / /  /  / /
  Gopher,News and  modem   maintainer, all around hack /________/ /  /  / /

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

From: rene@renux.frmug.fr.net (Rene COUGNENC)
Subject: Re: pl14p serial code broken !
Date: 17 Jan 1994 14:30:55 GMT
Reply-To: cougnenc@itesec.ensta.fr

Ce brave Bobby Tadlock ecrit:

> >Now, pl14p hangs in rs_interrupt() :

> stuff deleted !

> Thats funny , Ive been running the pl14p kernel for several days ( I installed
> the kernel clean) and I have been dailing in and out as well as faxing in and
> out alot and Ive had no problems, in fact the new serial code works far better

Well, my machine whithout these few lines of patches is still alive now,
but I can reproduce the crash when I want, just recompile whith the two
patches in serial.c and tty_io.c, dial out, (works fine on dialout, even
on dialin when there has been no dialouts before.)

        But the sequence:      

                                dialout on dialout device;
                                hangup ;
                                incoming call on dialin device;

        Immediately crash the kernel whith the message
        release_dev: tty_table[67] was NULL

>in fact the new serial code works far better
> than any of the old stuff.  My systems doesnt lockup and if I dialin and hangup

Yes, that's right, the serial paches now added to the standard Alpha kernels
makes a big difference, it is just the last 4 ou 6 lines added in patch 'p' 
that breaks them. ( on my machine at least, it is a slow 386, perhaps this
is a race condition that fast computers don't have ).

--
 linux linux linux linux -[ cougnenc@renux.frmug.fr.net ]- linux linux linux 

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

From: rene@renux.frmug.fr.net (Rene COUGNENC)
Subject: Re: pl14p serial code broken !
Date: 17 Jan 1994 20:45:19 GMT
Reply-To: cougnenc@itesec.ensta.fr

Ce brave Eric Youngdale ecrit:

> In article <1994Jan17.124726.1808@bbs.com> greg@bbs.com (Greg Menounos) writes:
> >In article <2hbqtj$3h@renux.frmug.fr.net>,
> >>Now, pl14p hangs in rs_interrupt() :
> >
> >     Ditto for me.  The system would consistently hang.  I downgraded
> >the serial patches to 14o and it's been working fine since.  After the
> >hang, I would also see the following message:

>       It would be good if people would report which version of gcc they are
> using. It is possible that older versions of gcc will not compile the kernel
> properly leading to problems.


Yes, I was thinking about that... But not about old relases, since I am
using GCC 2.5.8. :-)

There is definitifely something curious happening whith the small modification
about serial/tty_io in 'p' patch, since the same compiler, whithout these
patches, produces a good working kernel.

I recompiled a plain pl14p whith full debugging options for serial.c and
tty_io.c, and I'll try to log the problem.  (It is not easy since I can't
have this machine down very long, and users don't like to be disconnected
by a kernal panic... This box is here to show that Linux is working  :) )

For now I just tried 2 minutes this kernel, and another ( or related to )
problem came up:


This is what happens when the machine is just freshly booted, and if I
just turn the modem OFF and ON:

Jan 17 16:33:17 renux vmunix: opening tty67...
Jan 17 16:33:17 renux vmunix: opening tty67...
Jan 17 16:33:58 renux vmunix: ttys3 CD now on...DR...
Jan 17 16:33:58 renux vmunix: ttys3 CD now on...DR...
Jan 17 16:33:58 renux vmunix: ttys3 CD now off...tty67 hangup...
Jan 17 16:33:58 renux vmunix: ttys3 CD now off...tty67 hangup...
Jan 17 16:33:58 renux vmunix: release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:33:59 renux vmunix: opening tty8...
Jan 17 16:33:59 renux vmunix: opening tty8...
Jan 17 16:33:59 renux vmunix: release_dev of tty8 (tty count=2)...
Jan 17 16:33:59 renux vmunix: release_dev of tty8 (tty count=2)...
Jan 17 16:33:59 renux vmunix: opening tty67...
Jan 17 16:33:59 renux vmunix: opening tty67...
Jan 17 16:34:00 renux vmunix: ttys3 CD now on...DR...
Jan 17 16:34:00 renux vmunix: ttys3 CD now on...DR...
Jan 17 16:34:00 renux vmunix: ttys3 CD now off...tty67 hangup...
Jan 17 16:34:00 renux vmunix: ttys3 CD now off...tty67 hangup...
Jan 17 16:34:00 renux vmunix: error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...
Jan 17 16:34:00 renux vmunix: opening tty67...error -512 in opening tty67...release_dev of tty67 (tty count=1)...freeing tty structure...

And it loops like this, I stopped the machine after 5000 or more lines like 
that to avoid filling my partition whith the syslog file...
                      

--
 linux linux linux linux -[ cougnenc@renux.frmug.fr.net ]- linux linux linux 

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

From: rene@renux.frmug.fr.net (Rene COUGNENC)
Subject: Re: pl14p serial code broken !
Date: 17 Jan 1994 21:30:53 GMT
Reply-To: cougnenc@itesec.ensta.fr

Ce brave Rene COUGNENC ecrit:

> There is definitifely something curious happening whith the small modification
> about serial/tty_io in 'p' patch, since the same compiler, whithout these


Ok, I have repeated easily the crash. The dump has not been logged by
syslog but I have noted EIP:  010: 0016DDAB, in this kernel this is:

0016db08 t _rs_sched_event
0016db38 t _receive_chars
0016dc68 t _transmit_chars
0016dd88 t _check_modem_status       <<--
0016de78 t _figure_RS_timer
0016dee8 t _rs_interrupt
0016e068 t _handle_rs_break


I just rebooted, dialed out, received some data, and the other end hanged up,
this is normal.

n 17 22:00:16 renux vmunix: DR...DR...DR...DR...DR...DR...DR...DR...DR...DR...DR...DR...DR...DR.
Jan 17 22:00:22 renux vmunix: 67...release_dev of tty67 (tty count=2)...opening tty67...error -512
Jan 17 22:00:22 renux vmunix: 67...release_dev of tty67 (tty count=2)...opening tty67...error -512
(etc.. etc... thousands retries...)

The loop signaled before began, and a few seconds after that an unfortunate
user tried to login... Immediately, "unable to dereference pointer", etc
tty_table[67] was NULL, panic...

--
 linux linux linux linux -[ cougnenc@renux.frmug.fr.net ]- linux linux linux 

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

From: ganderson@clark.net (Gary Anderson)
Crossposted-To: comp.os.linux.help
Subject: e2fsprogs-0.4a / fsck / pl-14p prob.
Date: 19 Jan 1994 04:56:38 GMT

I just tried to switch from e2fsck-0.2b to the new fsck (0.4a) in the 
e2fsprogs package.
I had previously installed the bootutils, and the new 'shutdown'.  
No problems with my file system ever showed up using fsck 0.2b.
Now that I have installed pl-14p, fsck 0.2b still works fine, 
reports no problems.

But when I installed fsck 0.4a, i got several screens full of a 
couple of errors:
'bad file name - contains '/' or null.....' etc.  (went by pretty fast,
         couldn't catch it all), and
'inode xxxxx not used with links_count not null'

Yes, my root (and only) file system is mounted read-only with lilo, 
and is confirmed as read only by the kernel boot-up message.  
Fortunately, I had told fsck 0.4a to only check (not fix) errors.

After this, I've gone back to fsck 0.2b, and it still reports no
problems.

1.) Any ideas what's causing these errors ?
2.) Can I safely let fsck 0.4a fix these so-called 'errors' without 
    running the risk of trashing my root file-system ?
3.) What should I look for in / do with the files that I assume will 
    show up in the 'lost+found' directory ?
4.) If I let fsck 0.4a fix these 'errors', am I likely to end up 
    with it marking the rest of my disk space (63 megs right now) as
    unuseable ?

I looked at all the posts in the previous ext2fs problems thread, but none
of them seemed to address this sort of problem.

Any hints/clues/help/fixes would be GREATLY appreciated !

Gary
ganderson @ clark.net


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

Crossposted-To: comp.os.linux.help
From: bwpearre@tucson.Princeton.EDU (Benjamin Weste Pearre)
Subject: Re: Better than Xmag ?
Date: Tue, 18 Jan 1994 16:17:31 GMT


Ok here comes another cop-out reply.  I saw on an ancient Iris a
program that would magnify any point on the screen, using the mouse.
I am not sure about invocation, how the program would tell the
difference between trying to call it up and a normal click.  I wonder
if there is a hotkey that toggles between a mouse-trapping window that
will magnify and turning itself off...

Also, I don't know what the program was called, or how much it
depended on SGI's hardware.  Someone else out there must know what I
mean.

Come to think of it, xdvi has a built-in magnifying glass.  Is this
what is needed?  How about something like, the area around the mouse
pointer is put into a magnified box, but the mouse cursor remains
active to windows below the box?  I have a picture of a mouse pointer
in the middle of a magnifying glass, would this help?

No, I don't know how I would implement this, just spewing ideas.

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

From: neal@ctd.comsat.com (Neal Becker)
Subject: Re: [ANSWER] PL14n and PL14o ext2 problems
Date: 18 Jan 1994 18:00:57 GMT

Thanks for all that answered this question.  I have a pretty workable
system now using sysvinit (still some problems with switching
runlevels).

But isn't this /etc/fastboot pretty kludgy?  I though ext2 was
supposed to support a mark for clean devices.  If this was true it
should be possible to make e2fsck return a nice status code to say the
device was clean!  This would be far more reliable and a lot less work
that trying to modify every script for (sysvinit and others) for halt,
shutdown, reboot and telinit to always do the correct thing with
/etc/fastboot (just to make things even worse, that's /fastboot on
some setups).

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

From: Mitchum DSouza <m.dsouza@mrc-apu.cam.ac.uk>
Subject: Re: Still: Undefined symbol ___setfpucw
Date: 19 Jan 1994 05:30:48 -0500
Reply-To: m.dsouza@mrc-apu.cam.ac.uk


| I have followed the recent thread, but the suggestions did not help...
| 
| I am running linux 99p13 gcc-2.4.5 libc-4.4.4 and ldso-1.3.
| 
| I tried the following:
| 
| do not use "-g" option: it works, but is not acceptable, as I 
|   need debugging info in the executable
| world read permission on /usr/lib/crt0.o: i have it already
| link with -lieee: i did, it removed ___fpu_control error, 
|   but not ___setfpucw error

You probably need a new gcrt0.o. Get the extra-x.y.tar.gz from tsx-11.mit.edu
/pub/linux/packages/GCC and install that.

| I also have a general question on this subject: since this type of
| problem can always come up if one does not know his/her libraries'
| contents inside-out, there must be a way to search the libraries in
| common places like /usr/lib /usr/X11/lib etc. Is there a tool like
| this? If yes what it is? If no, what would be involved in building
| one?

Have you read the manpage that came with ld.so and/or ldconfig ?? If not then
do so.

Mitch

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

From: dieter@lexmark.com (William R. Dieter)
Subject: How do I access I/O ports above 0x3ff in user mode?
Date: Wed, 19 Jan 1994 05:36:08 GMT

I am experimenting with a token ring card, and I would like to
try playing with it in user mode before I write a real driver.
Unfortunately, most of the I/O ports are above 0x3ff, so ioperm() will
not work.  I noticed in /usr/src/linux/kernel/ioport.c, right after
ioperm(), there is a comment for the function sys_iopl() that says I can
use sys_iopl() to make these I/O ports accessable.

The problem is, I cannot find a man page for sys_iopl().  Does
anyone know how it works, where a man page is, or if there is a better
way to do this?  I didn't see anything in the kernel hacker's guide 
about accessing ports above 0x3ff...

Thanks,
Bill Dieter.
dieter@lexmark.com
-- 
dieter@lexmark.com

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


** 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-Development-Request@NEWS-DIGESTS.MIT.EDU

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

    Internet: Linux-Development@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-Development Digest
******************************
