Subject: Linux-Development Digest #258
From: Digestifier <[email-masked]>
To: [email-masked]
Date: Mon, 3 Oct 94 03:13:19 EDT

Linux-Development Digest #258, Volume #2          Mon, 3 Oct 94 03:13:19 EDT

Contents:
  Re: Telnet & ftp freeze! (Thomas E Zerucha)
  Re: VHDL for Linux...? (Guy Maor)
  Adaptec 2940 Support? (Michael_Nelson)
  Re: AX25 & KISS Amateur Radio Protocols in Linux? (Kelly L. Fulks)
  Xircom PCMCIA ethernet support? (Daniel J Thumim)
  Please send me biff (not xbiff) (Forest Gump)
  crash with 1.1.51 (was: crash with kernel 1.1.45) (Klaus Weidner)
  crash with 1.1.51 (was: crash with kernel 1.1.45) (Klaus Weidner)
  Re: ATI ULTRA + w/internal b-mouse (Viktor T. Toth)
  Re: Is there a memory allocation debugging tool for Linux? (David Fox)
  Re: crash with 1.1.51 (was: crash with kernel 1.1.45) (Michael_Nelson)
  Re: SCSI PCI Adaptec (Jim Lynch)
  Re: device driver for all three operating systems (Stephen Louis Ulmer)
  Re: ext2fs vs. Berkeley FFS (Rob Janssen)
  Re: Pioneer SCSI Adapter TMC-850MER (Benjamin Ryzman)
  convert num to string integrating math functions (Aulas)

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

From: [email-masked] (Thomas E Zerucha)
Crossposted-To: comp.os.linux.help,comp.os.linux.misc
Subject: Re: Telnet & ftp freeze!
Date: 1 Oct 1994 23:50:17 GMT

I have found the root cause of the  problem.  It is a call to sock_wmalloc
that keeps eating memory.  It eventually goes over the 32767 (in skbuff.h in
the linux includes).  It tends to return EAGAIN, assuming memory would be
made available eventually, which results in silent failure.  since ping,
and other utilities use different sockets, they start allocating at 0.
I can't even overallow, since it only goes to 65535 (although it is a long,
it fails at this point).

Perhaps it is not the "root" cause, since it may be the free that is failing,
or merely a fragmentation problem.  But it only seems to affect TCP based
protocols with PPP.

I hope someone knowledgeable can fix this.
---
[email-masked] - main email address

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

From: [email-masked] (Guy Maor)
Crossposted-To: comp.os.linux.misc,comp.lsi.cad,comp.lang.vhdl
Subject: Re: VHDL for Linux...?
Date: 29 Sep 1994 23:19:34 GMT

John Leslie ([email-masked]) wrote:
: > mainstream designs. The most common choices among people I know seems
: > to be:
: > 
: > Magic
: > IRSIM
: > Gemini
: > WireC
: > 

: Could somebody tell me firstly what these packages do and secondly where I can
: get them from (I think that could be a popular request). Versions for Windows
: or Linux or HP/UX would be preferred by me (especially linux). Thanks in
: advance...
: -- 
: John Leslie

I've used Magic and IRSIM, but neither is a VHDL tool.  Magic is a
simple but very easy to use layout editor.  It does on-the-fly DRC (it
uses the one variable, lambda method) and some autorouting.  I've
actually used it to produce a simple stack cpu.  It's pretty fast and
comes with a nice tutorial, but best of all is its low price - free.

IRSIM is a timing tool, a pretty simple one compared with commercial
ones, (like pearl - the only one I'm actually familiar with).  But it
works well with Magic - it does timing on the actual layout.  It can
do things like longest phase to phase delay, etc.

Anyway, you can get Linux binaries of these two from 
sunsite.unc.edu in 
/pub/Linux/apps/circuits (INDEX)
==============================================================================
irsim.tar.z              event-driven logic-level simulator for MOS circuits
magic63p3-run.tar.gz     VLSI graphical layout tool [bin]
magic63p3-src.tar.gz     VLSI graphical layout tool [src]

Magic requires X obviously.  These tools are great for learning how to
do VLSI CMOS design/layout.  I suspect they're mostly used by
university students.

Guy Maor
[email-masked]

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

From: [email-masked] (Michael_Nelson)
Subject: Adaptec 2940 Support?
Date: 2 Oct 1994 01:26:28 GMT
Reply-To: [email-masked]

I've got my roommate convinced to switch over to Linux from Unixware.  He's
running a Mylex P5/66 EISA/PCI motherboard and is using an Adaptec AHA-2940
PCI/SCSI card.  I can't find any evidence that the 2940 is yet supported by
Linux, though.  Is anyone working on a driver or kernel patch to support
this host adapter?

                                - Michael -

--
Michael Nelson                          [email-masked]
San Francisco, CA                           FAX: 1-415-621-2608

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

Subject: Re: AX25 & KISS Amateur Radio Protocols in Linux?
From: [email-masked] (Kelly L. Fulks)
Date: 29 Sep 94 15:06:55 -0600
Reply-To: [email-masked]

In article <[email-masked]>, [email-masked] (Josh Templin) writes:
|> : :  What's your call sign, Vassili???
|> : You can find it in the callbook...
|> I don't have one...otherwise I'd try looking it up...
|> 
|> Josh
|> 
Here is his information as retreived from callsign.cs.buffalo.edu port 2000:
Call-Sign: N2WID                    Class: TECHNICIAN
Real Name: VASSILI LEONOV           Birthday: SEP 8, 1964
Mailing Address: CS DEPT DUNY, STONY BROOK, NY  11794
Valid From: SEP 14, 1993            To: SEP 14, 2003

-- 
Kelly L. Fulks                    Reply to: @hap.arnold.af.mil:[email-masked] 
Scientific Programmer/Analyst             : [email-masked]
OAO Corporation                           : [email-masked]
Arnold Air Force Base, TN 37389           : [email-masked]

Amateur Radio: KC4RDJ@AB4ZB.#MIDTN.TN.USA.NA   
             : kc4rdj.ampr.org. [44.34.0.9]

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

From: [email-masked] (Daniel J Thumim)
Subject: Xircom PCMCIA ethernet support?
Date: 3 Oct 1994 03:45:27 GMT

Is there any chance of getting support for a Xircom CE10 PCMCIA
ethernet adapter?  I heard of problems with the parallel port
adapters, they don't give out the programming info.  Is this true
of the PCMCIA adapter too?  Now that there are kernel loadable
modules, and it is possible to develop drivers without releasing
source, does that change things?
If anyone has had direct contact with Xircom and can point me to
a contact over there, that would also be helpful.
I want to get linux running on a laptop with one of these, if
I'm successful there is a potential to get linux installed on
hundreds of laptops!
Thanks,
                                        -- |)aniel Thumim
                                        [email-masked]

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

From: [email-masked] (Forest Gump)
Subject: Please send me biff (not xbiff)
Date: 2 Oct 1994 21:21:15 GMT

Would someone please send me the command line version of biff (not xbiff)
for Linux?

UUencode or sources via email will be perfect.

Thanks,
jeff  [email-masked]

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

From: [email-masked] (Klaus Weidner)
Subject: crash with 1.1.51 (was: crash with kernel 1.1.45)
Date: Sun, 2 Oct 1994 12:42:04 GMT

[email-masked] (Scott Weinstein) writes:
>Ive been using my linux for a bit over a year. I just had my first
>full crash. This is with 1.1.45.

I am getting the same type of crashes with 1.1.51.
Curiously enough, 1.1.45 works flawlessly for me, I haven't had
any problems with it.

It seems to happen in free_pages, with lots of these messages
appearing for the separate processes. If I try to log in,
I get a password prompt, but when I hit return I get a panic.

As close as I can reproduce it, these were the kernel messages:

general protection: 0000
EIP:    0010:0011d0b0
EFLAGS: 00010046
eax: 67676767   ebx: 00178000   ecx: 67676767   edx: 00000010
esi: ffffc000   edi: 0000022f   ebp: 001c33e4   esp: 012bcc9c
ds: 0018   es: 0018   fs: 0000   gs: 0000   ss: 0018
Process vg_button (pid: 622, process nr: 16, stackpage=012bc000)
Stack: ???
Code: ???
Trying to free kernel page-directory: not good

Here's the relevant part of nm zSystem | sort:

0011cf34 t _try_to_free_page
0011cfd4 T _free_pages
0011d194 T ___get_free_pages
0011d354 T _show_free_areas
0011d424 t _try_to_unuse

I'm using gcc 2.5.8, gas 1.38 and ld 1.9l.4.

Klaus
-- 
\ mail: [email-masked], irc: tengu, http://www.muc.de/~klaus/
\ .signature error -- quote dumped

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

From: [email-masked] (Klaus Weidner)
Subject: crash with 1.1.51 (was: crash with kernel 1.1.45)
Date: Sun, 2 Oct 1994 17:41:19 GMT

[email-masked] (Scott Weinstein) writes:
>Ive been using my linux for a bit over a year. I just had my first
>full crash. This is with 1.1.45.

I am getting the same type of crashes with 1.1.51.
Curiously enough, 1.1.45 works flawlessly for me, I haven't had
any problems with it.

It seems to happen in free_pages, with lots of these messages
appearing for the separate processes. If I try to log in,
I get a password prompt, but when I hit return I get a panic.

As close as I can reproduce it, these were the kernel messages:

general protection: 0000
EIP:    0010:0011d0b0
EFLAGS: 00010046
eax: 67676767   ebx: 00178000   ecx: 67676767   edx: 00000010
esi: ffffc000   edi: 0000022f   ebp: 001c33e4   esp: 012bcc9c
ds: 0018   es: 0018   fs: 0000   gs: 0000   ss: 0018
Process vg_button (pid: 622, process nr: 16, stackpage=012bc000)
Stack: ???
Code: ???
Trying to free kernel page-directory: not good

Here's the relevant part of nm zSystem | sort:

0011cf34 t _try_to_free_page
0011cfd4 T _free_pages
0011d194 T ___get_free_pages
0011d354 T _show_free_areas
0011d424 t _try_to_unuse

I'm using gcc 2.5.8, gas 1.38 and ld 1.9l.4.

Klaus

-- 
\ mail: [email-masked], irc: tengu, http://www.muc.de/~klaus/
\ .signature error -- quote dumped

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

From: [email-masked] (Viktor T. Toth)
Subject: Re: ATI ULTRA + w/internal b-mouse
Date: Sat, 1 Oct 1994 10:46:06

In article <[email-masked]> [email-masked] (Chris Origer) writes:

>Hi, has anyone gotten the mouse that comes with the ati ultra + working.
>Its supposed to be ms inport compatible but nope, don't work. I tried
>the atixl and regular ms drivers and none work. With all of them I keep 
>getting invalid argument. The also don't show up in the boot messages (the
>driver initializing the mouse). Its set to use irq 5 and the primary
>addr range (23Ch to 23Fh). Could not find anyrhing in the how to either.
>Any help appreciated.

Recompile your kernel with Logitech (yep, that's right) mouse support. Worked 
for me.

Viktor

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

From: [email-masked] (David Fox)
Subject: Re: Is there a memory allocation debugging tool for Linux?
Date: 02 Oct 1994 16:51:29 GMT

In article <[email-masked]> [email-masked] (Henrik Juul Hansen) writes:

] "debug-malloc" 
] found at:
] oak.oakland.edu:/pub2/unix-c/languages/c/debug-malloc.tar.Z

I like debug-malloc quite a bit.  Here are some patches I wrote to
modernize it a bit:
=====================================================================
diff -u debug-malloc/orig/free.c debug-malloc/free.c
--- debug-malloc/orig/free.c    Wed Aug 10 11:44:27 1994
+++ debug-malloc/free.c Wed Aug 10 12:16:54 1994
@@ -56,6 +56,8 @@
                (void) malloc_chain_check(1);
        }
 
+       if (cptr == NULL) return;
+
        /*
         * verify that cptr is within the malloc region...
         */
diff -u debug-malloc/orig/malloc_chk.c debug-malloc/malloc_chk.c
--- debug-malloc/orig/malloc_chk.c      Wed Aug 10 11:44:50 1994
+++ debug-malloc/malloc_chk.c   Wed Aug 10 14:03:50 1994
@@ -206,6 +206,11 @@
                malloc_warning(func);
        }
 
+       if (!(mptr->flag & M_INUSE)) {
+         malloc_errno = M_CODE_REUSE;
+         malloc_warning(func);
+       }
+
        return;
 }
 
diff -u debug-malloc/orig/patchlevel debug-malloc/patchlevel
--- debug-malloc/orig/patchlevel        Wed Aug 10 11:44:26 1994
+++ debug-malloc/patchlevel     Thu Aug 11 07:25:13 1994
@@ -1 +1 @@
-1
+2
diff -u debug-malloc/orig/realloc.c debug-malloc/realloc.c
--- debug-malloc/orig/realloc.c Wed Aug 10 11:44:51 1994
+++ debug-malloc/realloc.c      Wed Aug 10 20:22:55 1994
@@ -63,6 +63,11 @@
        int                       r_size;
 
        /*
+        * Allow a null cptr.
+        */
+       if (cptr == 0) return malloc(size);
+
+       /*
         * IF malloc chain checking is on, go do it.
         */
        if( malloc_checking )
diff -u debug-malloc/orig/string.c debug-malloc/string.c
--- debug-malloc/orig/string.c  Wed Aug 10 11:44:51 1994
+++ debug-malloc/string.c       Wed Aug 10 12:28:03 1994
@@ -19,7 +19,7 @@
 char *
 strcat(str1,str2)
        register char   * str1;
-       register char   * str2;
+       register const char     * str2;
 {
        char            * rtn;
        int       len;
@@ -57,7 +57,7 @@
 
 char *
 strdup(str1)
-       register char   * str1;
+       register const char     * str1;
 {
        char            * malloc();
        char            * rtn;
@@ -80,11 +80,12 @@
 }
 
 char *
-strncat(str1,str2,len)
+strncat(str1,str2,len0)
        register char   * str1;
-       register char   * str2;
-       register int      len;
+       register const char     * str2;
+       register size_t   len0;
 {
+       int               len = len0;
        int               len1;
        int               len2;
        char            * rtn;
@@ -144,13 +145,14 @@
 }
 
 int
-strncmp(str1,str2,len)
-       register char   * str1;
-       register char   * str2;
-       register int      len;
-{
-       malloc_check_str("strncmp", str1);
-       malloc_check_str("strncmp", str2);
+strncmp(str1,str2,len0)
+       register const char     * str1;
+       register const char     * str2;
+       register size_t   len0;
+{
+       int               len = len0;
+       malloc_check_data("strncmp", str1, len0);
+       malloc_check_data("strncmp", str2, len0);
 
        while( --len && *str1 && (*str1 == *str2) )
        {
@@ -185,12 +187,13 @@
 }
 
 char *
-strncpy(str1,str2,len)
+strncpy(str1,str2,len0)
        register char   * str1;
-       register char   * str2;
-       register int      len;
+       register const char     * str2;
+       register size_t   len0;
 {
        int               i;
+       int               len = len0;
        extern int        malloc_checking;
        char            * rtn;
 
@@ -240,7 +243,7 @@
 
 char *
 strchr(str1,c)
-       register char   * str1;
+       register const char     * str1;
        register int      c;
 {
        malloc_check_str("strchr", str1);
@@ -260,7 +263,7 @@
 
 char *
 strrchr(str1,c)
-       register char   * str1;
+       register const char     * str1;
        register int      c;
 {
        register char   * rtn = (char *) 0;
@@ -281,7 +284,7 @@
 
 char *
 index(str1,c)
-       char            * str1;
+       const char              * str1;
        char              c;
 {
        return( strchr(str1,c) );
@@ -289,7 +292,7 @@
 
 char *
 rindex(str1,c)
-       char            * str1;
+       const char              * str1;
        char              c;
 {
        return( strrchr(str1,c) );
@@ -297,8 +300,8 @@
 
 char *
 strpbrk(str1,str2)
-       register char   * str1;
-       register char   * str2;
+       register const char     * str1;
+       register const char     * str2;
 {
        register char   * tmp;
 
@@ -325,10 +328,10 @@
        return(str1);
 }
 
-int
+size_t
 strspn(str1,str2)
-       register char   * str1;
-       register char   * str2;
+       register const char     * str1;
+       register const char     * str2;
 {
        register char   * tmp;
        char            * orig = str1;
@@ -351,10 +354,10 @@
        return( (int) (str1 - orig) );
 }
 
-int
+size_t
 strcspn(str1,str2)
-       register char   * str1;
-       register char   * str2;
+       register const char     * str1;
+       register const char     * str2;
 {
        register char   * tmp;
        char            * orig = str1;
@@ -412,7 +415,7 @@
 char *
 strtok(str1, str2)
        char    * str1;
-       char    * str2;
+       const char      * str2;
 {
        static char     * last;
        char            * strtoken();
diff -u debug-malloc/orig/testmalloc.c debug-malloc/testmalloc.c
--- debug-malloc/orig/testmalloc.c      Wed Aug 10 11:44:52 1994
+++ debug-malloc/testmalloc.c   Wed Aug 10 11:55:44 1994
@@ -15,7 +15,7 @@
 # ifdef SYS5
 # define random        rand
 # else
-# include <sys/vadvise.h>
+/*# include <sys/vadvise.h>*/
 # endif
 
 # include <stdio.h>
@@ -57,12 +57,12 @@
        char *malloc();
        char *sbrk();
        long atol();
-
+#if 0
 # ifndef SYS5
        /* your milage may vary... */
        vadvise( VA_ANOM );
 # endif
-
+#endif
        if (argc > 1)
                maxiter = atol (argv[1]);
        if (maxiter <= 0)
--
David Fox                                               xoF divaD
NYU Media Research Lab                     baL hcraeseR aideM UYN

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

From: [email-masked] (Michael_Nelson)
Subject: Re: crash with 1.1.51 (was: crash with kernel 1.1.45)
Date: 2 Oct 1994 22:19:22 GMT
Reply-To: [email-masked]

Klaus Weidner ([email-masked]) wrote:
-> [email-masked] (Scott Weinstein) writes:
-> >Ive been using my linux for a bit over a year. I just had my first
-> >full crash. This is with 1.1.45.

-> I am getting the same type of crashes with 1.1.51.
-> Curiously enough, 1.1.45 works flawlessly for me, I haven't had
-> any problems with it.

        Yep, same problem here, especially when trying to mount a floppy.  I
went back to 1.50 and all is OK.

                                - Michael -

--
Michael Nelson                          [email-masked]
San Francisco, CA                           FAX: 1-415-621-2608

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

From: [email-masked] (Jim Lynch)
Subject: Re: SCSI PCI Adaptec
Date: Sun, 2 Oct 1994 21:58:20 GMT

Perhaps it's time to create full, professional and complete docs to show how to
create drivers. Once done, copies of this can be passed out to the likes of
Adaptec, along with some evidence of the increasing commercial viability of
Linux. One such piece could be a copy of LJ...

Rob Janssen ([email-masked]) wrote:
: In <[email-masked]> [email-masked] writes:

: >   In the Beta Reviewer's Guide, MS makes much of the idea of
: >splitting device support into hardware-dependent and hardware-independent
: >components, the former being the responsibility of MS and the latter being
: >the responsibility of the hardware mfg.

: >   I wonder: if this strategy gains widespread acceptance among
: >hardware mfgs, isn't Linux going to have to find a way to come to
: >grips with it?

: Of course this has been done in Linux all the time.  Only in the Linux
: world, there are less manufacturers who take up the responsibility for
: writing a driver for their hardware...  so the developers end up doing
: both halves.
: Check the SCSI drivers to see how they are divided in generic stuff and
: manufacturer-specific stuff.  In the ethernet drivers this is even more
: clear, as many cards a based on the same controller chip(s) and can therefore
: share a lot of code.

: Rob
: -- 
: -------------------------------------------------------------------------
: | Rob Janssen                | AMPRnet:   [email-masked]           |
: | e-mail: [email-masked]     | AX.25 BBS: PE1CHL@PI8UTR.#UTR.NLD.EU     |
: -------------------------------------------------------------------------
-- 

-Jim

----

* Write to [email-masked] and tell them you oppose Clipper.
* Write to [email-masked] supporting HR 3627.
* Write [email-masked] and demand the Clinton administration explain IN
  THE SENATE why it thinks U.S. citizens shouldn't have any digital privacy.
* This is a shareware .signature  -- please pass it on!

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

From: [email-masked] (Stephen Louis Ulmer)
Subject: Re: device driver for all three operating systems
Date: 30 Sep 1994 01:01:42 GMT

>Or,  Does anyone know of a PCI-Scsi controler that would be compatible
>with
>all three (Dos, Linux and OS2) oeprating systems?

Yes. ncr53c810 works nicely with all of them. THere are NICE drivers
for OS/2 and of course there are Drew's excellent ncr drivers for
Linux.

Stephen

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

From: [email-masked] (Rob Janssen)
Subject: Re: ext2fs vs. Berkeley FFS
Reply-To: [email-masked]
Date: Sun, 2 Oct 1994 12:38:36 GMT

In <[email-masked]> [email-masked] (Hugh Strong) writes:

>Just wondering -

>How does the performance of Linux  ext2fs compare with that of 
>the Berkeley Fast File System (FFS) found in {386,Free,Net}BSD and other
>BSD variants?  A number of posts to the 386BSD groups have recently
>sneered at ext2fs, presumably because of the considerations FFS makes for
>drive geometry and rotational parameters, which  seem to be absent in the
>ext2fs source I've examined.   Does anyone have any concrete performance
>statistics to back/refute a these claims?  Is anyone workrking on 
>FFS for Linux?

Well, the Linux community sneers at BSD for doing synchronous inode
updates, which you won't find in ext2fs :-)
Those can really kill performance when you are manipulating a lot of
files, like in a news system.

Conclusion: The filesystems have different characteristics, and the
performance will vary with the operations you are doing.  When you want
to know what will perform best in your situation, try them both.

But please don't try to setup a war between the two camps!

Rob
-- 
=========================================================================
| Rob Janssen                | AMPRnet:   [email-masked]           |
| e-mail: [email-masked]     | AX.25 BBS: PE1CHL@PI8UTR.#UTR.NLD.EU     |
=========================================================================

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

From: [email-masked] (Benjamin Ryzman)
Subject: Re: Pioneer SCSI Adapter TMC-850MER
Date: 30 Sep 1994 14:25:58 +0100

Andrew Anderson ecrivait recemment:
>Can any developer tell me if the code in ~/linux/drivers/scsi/seagate.c
>will support this card?  The board has a TMC-950 chip on it, but the
>kernel cannot find it.  Does the TMC-950 referenced in the comments
>in the code refer to a *board* or the *chip*?  

>This model of the board does _not_ have a BIOS chip on it, does the 
>driver need one?  If this driver does not work, does anyone have a 
>(pre) alpha driver that I can try?

The driver needs the BIOS in order to autodetect your card at boot
time.

I use a TMC850 here (w/o BIOS) and I put the following line in Lilo
in order for the card to be detected:

append = "tmc8xx=0xCA000,5"

Where 0xCA000 (IO memory location) and 5 (IRQ) depend on your
jumpers settings (see the card for details).

Note: it's all in the driver sources! :-)

-- 
Amicalement, "Benj"  Email: [email-masked]
You know you've been hacking too long when you go to balance your
checkbook and discover that you're doing it in octal.

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

From: [email-masked] (Aulas)
Subject: convert num to string integrating math functions
Date: 1 Oct 1994 19:10:21 GMT

Hi !

I've got a problem building a function designer program:
the only way I know to enter the function is to put
it in the source code directly.
what are the keywords to convert properly (with sin(x) and cos(x))
strings to num;
Atoi and atof don't work, 'cos they don't recognize cos(x) or sin(x)
as mathematical function but as strings.

If you can help, please email at [email-masked]

THANX

--
shagshag: (16.1) 40.30.04.68
login: new ou nuucp, pas de passes.

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

** 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: [email-masked]

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

    Internet: [email-masked]

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