add directory mail-archive
This commit is contained in:
675
mail-archive/linux-devel/Volume1/digest5XX/digest593
Normal file
675
mail-archive/linux-devel/Volume1/digest5XX/digest593
Normal file
@@ -0,0 +1,675 @@
|
||||
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: Thu, 31 Mar 94 20:13:07 EST
|
||||
Subject: Linux-Development Digest #593
|
||||
|
||||
Linux-Development Digest #593, Volume #1 Thu, 31 Mar 94 20:13:07 EST
|
||||
|
||||
Contents:
|
||||
Re: profiling anyone? (Bas de Bakker)
|
||||
Re: Bug in atof (Kai Arstila)
|
||||
Re: Hardware developing X/Motif (Alan Cox)
|
||||
Re: BusLogic BT445S driver? (Victoria Harrington)
|
||||
Re: BusLogic BT445S driver? (J. den Ouden)
|
||||
Re: Bug in atof (Rob Janssen)
|
||||
Re: Announcement of Linux/68k Version 0.08 (Uytterhoeven Geert)
|
||||
pcnfsd and long shadow pwds (Hendrik G. Seliger)
|
||||
Re: TCP/IP-Bug in 1.0 Kernel? (Alan Cox)
|
||||
pdcurses on linux (Bryan Zarnett)
|
||||
Re: BusLogic BT445S driver? (Drew Eckhardt)
|
||||
Re: IDE Performance Package (Mark Lord)
|
||||
Re: IDE Performance Package (Mark Lord)
|
||||
Re: Announcement of Linux/68k Version 0.08 (Hamish Macdonald)
|
||||
Are ADDTRON AE-200LC/JL network cards supported? (Bob Myers)
|
||||
IDE transfer and interrupts, again (Olaf Titz)
|
||||
Re: IDE Performance Package (Daniel Aaron Supernaw-Issen)
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
Subject: Re: profiling anyone?
|
||||
From: bas@phys.uva.nl (Bas de Bakker)
|
||||
Date: 31 Mar 1994 08:25:58 GMT
|
||||
|
||||
Ivan <ivan@djomolungma.Eng.Sun.COM> writes:
|
||||
|
||||
> !As to profiling tools: gprof is in the binutils package
|
||||
|
||||
> Yes, except that the output is function count based ... there is no
|
||||
> timing information. That is probably because 'profil(2)' isn't
|
||||
> implemented. 'profil(3)' obviously isn't doing the "same thing",
|
||||
> otherwise gprof would've provided me with timing data.
|
||||
|
||||
gprof gives me lots of timing data, so I would guess something is
|
||||
wrong with your installation.
|
||||
|
||||
Due to changes in the signal stack (where the signal handler installed
|
||||
by profil() gets the program counter from) there exist incompatible
|
||||
combinations of kernel/libc which break timing data from gprof.
|
||||
Perhaps you should update either your kernel or (more likely) your C
|
||||
library.
|
||||
|
||||
Bas.
|
||||
|
||||
------------------------------
|
||||
|
||||
From: arstila@kl-linux.helsinki.fi (Kai Arstila)
|
||||
Subject: Re: Bug in atof
|
||||
Date: 31 Mar 1994 11:07:49 GMT
|
||||
|
||||
Sergio Ramirez (sergio@bianca.amd.com) wrote:
|
||||
|
||||
> I found a bug in the subroutine atof()
|
||||
|
||||
> the offending code is the following
|
||||
|
||||
> double mortrate_pc;
|
||||
|
||||
> while ((c = getopt(argc, argv, "i:f:b:p:m:c:s:t:x:")) != -1)
|
||||
> switch (c) {
|
||||
|
||||
> ...
|
||||
|
||||
> case 'm':
|
||||
> mortrate_pc = atof(optarg);
|
||||
> break;
|
||||
|
||||
> ...
|
||||
|
||||
> When the program is called with the option -m 6 or any integer
|
||||
> mortrate_pc gets the correct value of 6.
|
||||
|
||||
> When the program is called with the option -m 7.5 the variable
|
||||
> mortrate_pc gets the correct value of 1.
|
||||
|
||||
Do you have the line
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
in your code. I have had similar action many times, and I always find
|
||||
the same bug in my program.
|
||||
|
||||
Kai Arstila
|
||||
Universtity of Helsinki
|
||||
arstila@kruuna.helsinki.fi
|
||||
|
||||
------------------------------
|
||||
|
||||
Crossposted-To: comp.os.linux,comp.unix.questions
|
||||
From: iiitac@uk.ac.swan.pyr (Alan Cox)
|
||||
Subject: Re: Hardware developing X/Motif
|
||||
Date: Wed, 30 Mar 1994 09:35:42 GMT
|
||||
|
||||
In article <1994Mar29.101553.262@elmrd6.ineab.ikea.se> tsva@elmrd6.ineab.ikea.se (Tom Svaleklev) writes:
|
||||
>Hello there !
|
||||
>
|
||||
>I'm about to start my own firm consulting and teaching X windows/Motif,
|
||||
>Unix and C. I looking for opinions/experiences on decent hardware
|
||||
>requirements needen to run and develop X/Motif/Unix for personal use.
|
||||
>I do own a PC 486/66, 4Mb/200Mb (IDE) and have thoughts on upgrading it
|
||||
>and install Linux, FreeBSD or something like that.
|
||||
More memory - 8 or for serious work 16Mb, maybe a larger disk. With either
|
||||
Linux or *BSD you'll need to buy Motif (its not free). Several vendors sell
|
||||
it for Linux
|
||||
>
|
||||
>But since I also want DOS/Windows I understand that I have to buy
|
||||
>another disk for my Unix system. Also it's been said that PC's can't
|
||||
You can have both on one disk. OS/2 comes with its own boot selector,
|
||||
otherwise Linux comes with Lilo and at the worst you just switch the
|
||||
active partition around
|
||||
>what system to run. I also believe I need at least 16Mb of memory
|
||||
>to cope with Unix.
|
||||
I do pretty serious development in 8Mb. For serious C++ work you want 16Mb
|
||||
(thats more a reflection on gnu C++ liking to waste memory...)
|
||||
|
||||
Alan
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: vicki@eskimo.com (Victoria Harrington)
|
||||
Subject: Re: BusLogic BT445S driver?
|
||||
Date: Wed, 30 Mar 1994 13:18:42 GMT
|
||||
|
||||
pyeatt@CS.ColoState.EDU (Larry Pyeatt) writes:
|
||||
|
||||
|
||||
>I have a BusLogic BT445S fast SCSI adapter. Is there a driver for
|
||||
>this board, or should I start writing my own. Any pointers would be
|
||||
>appreciated.
|
||||
|
||||
I have such a board on order also. There are drivers available for
|
||||
in at tsx-11.mit.edu:/pub/linux/drivers/ALPHA (I think). Check the
|
||||
ls-lR for the exact location. However, ONLY the drivers are
|
||||
provided (buslogic.tar.gz = buslogic.c+buslogic.h). Installation
|
||||
instructions are most notable by their absence.
|
||||
|
||||
To anyone who has installed this: guidence is requested
|
||||
|
||||
Steve
|
||||
harringt@netcom.com
|
||||
aka: vicki@eskimo.com
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: denouden@inter.NL.net (J. den Ouden)
|
||||
Subject: Re: BusLogic BT445S driver?
|
||||
Date: Thu, 31 Mar 1994 11:35:01 GMT
|
||||
|
||||
Victoria Harrington (vicki@eskimo.com) wrote:
|
||||
: pyeatt@CS.ColoState.EDU (Larry Pyeatt) writes:
|
||||
|
||||
|
||||
: >I have a BusLogic BT445S fast SCSI adapter. Is there a driver for
|
||||
: >this board, or should I start writing my own. Any pointers would be
|
||||
: >appreciated.
|
||||
|
||||
: I have such a board on order also. There are drivers available for
|
||||
: in at tsx-11.mit.edu:/pub/linux/drivers/ALPHA (I think). Check the
|
||||
: ls-lR for the exact location. However, ONLY the drivers are
|
||||
: provided (buslogic.tar.gz = buslogic.c+buslogic.h). Installation
|
||||
: instructions are most notable by their absence.
|
||||
|
||||
: To anyone who has installed this: guidence is requested
|
||||
|
||||
: Steve
|
||||
: harringt@netcom.com
|
||||
: aka: vicki@eskimo.com
|
||||
|
||||
For my own convenience I have changed buslogic.c and buslogic.h and
|
||||
some other files a bit so that the buslogic driver can be
|
||||
configured in and out with 'make config'. Mail me if you want the
|
||||
diffs.
|
||||
|
||||
Cheers,
|
||||
|
||||
Jan den Ouden denouden@inter.nl.net
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: rob@pe1chl.ampr.org (Rob Janssen)
|
||||
Subject: Re: Bug in atof
|
||||
Date: Thu, 31 Mar 1994 06:26:56 GMT
|
||||
Reply-To: pe1chl@rabo.nl
|
||||
|
||||
In <SERGIO.94Mar30110758@bianca.amd.com> sergio@bianca.amd.com (Sergio Ramirez) writes:
|
||||
|
||||
|
||||
>I found a bug in the subroutine atof()
|
||||
|
||||
>the offending code is the following
|
||||
|
||||
> double mortrate_pc;
|
||||
|
||||
> while ((c = getopt(argc, argv, "i:f:b:p:m:c:s:t:x:")) != -1)
|
||||
> switch (c) {
|
||||
|
||||
> ...
|
||||
|
||||
> case 'm':
|
||||
> mortrate_pc = atof(optarg);
|
||||
> break;
|
||||
|
||||
> ...
|
||||
|
||||
>When the program is called with the option -m 6 or any integer
|
||||
>mortrate_pc gets the correct value of 6.
|
||||
|
||||
>When the program is called with the option -m 7.5 the variable
|
||||
>mortrate_pc gets the correct value of 1.
|
||||
|
||||
Did you include <stdlib.h>?
|
||||
This is required on Linux, and isn't on some other systems.
|
||||
|
||||
Rob
|
||||
--
|
||||
=========================================================================
|
||||
| Rob Janssen | AMPRnet: rob@pe1chl.ampr.org |
|
||||
| e-mail: pe1chl@rabo.nl | AX.25 BBS: PE1CHL@PI8UTR.#UTR.NLD.EU |
|
||||
=========================================================================
|
||||
|
||||
------------------------------
|
||||
|
||||
Crossposted-To: comp.unix.amiga
|
||||
From: uytterho@cs.kuleuven.ac.be (Uytterhoeven Geert)
|
||||
Subject: Re: Announcement of Linux/68k Version 0.08
|
||||
Date: Thu, 31 Mar 1994 09:35:50 GMT
|
||||
|
||||
In article <1994Mar30.215327.3594@ida.liu.se>, t92johtu@odalix.ida.liu.se (Johan 'tuben' Tufvesson) writes:
|
||||
|> I'm a owner of a A4000/040/10, and have been waiting for a unix for my machine
|
||||
|> (the original IDE-drive has been the problem so far). The first thing I did
|
||||
|> after seeing that Linux had adopted the IDE-drives was to test it out.
|
||||
|> I used the new kernel and the new filesystem, and had no luck. Many of the
|
||||
|> programs on in the ramdiskimage don't work, for example mkfs and mount.
|
||||
|> Because of this I haven't been able to test the driver. Could the reason for
|
||||
|> this problem be the difficulties with 040 copybackcache and shared libraries?
|
||||
|> If so, is there a way around this right now, or will I have to wait for a new
|
||||
|> kernel?
|
||||
|> /Waiting for unix on A4000/IDE...
|
||||
|
||||
On my A4000/040 with linux 0.08 mount works, in contrast with some other
|
||||
programs (like sync...). I didn't tried mkfs since I already had a MINIX
|
||||
file system on my IDE drive (created under 0.07pl4).
|
||||
|
||||
Geert
|
||||
|
||||
--
|
||||
+--------+----------------------------+------------------------------------+
|
||||
|4000/040| Geert Uytterhoeven | E-mail: uytterho@cs.kuleuven.ac.be |
|
||||
| _ | Stud Master of Engineering | Fax : +32-16-535823 |
|
||||
| _ // | Dept of Computer Science | Snail : Huysmansstraat 12 |
|
||||
| \X/ | KU Leuven | B-3128 BAAL / BELGIUM |
|
||||
+--------+----------------------------+------------------------------------+
|
||||
| You don't have to sleep to see nightmares - Anne Clark |
|
||||
| (just take a look at MessyWindows) |
|
||||
+--------------------------------------------------------------------------+
|
||||
|
||||
------------------------------
|
||||
|
||||
From: hank@Blimp.automat.uni-essen.de (Hendrik G. Seliger)
|
||||
Subject: pcnfsd and long shadow pwds
|
||||
Date: 29 Mar 1994 08:30:20 GMT
|
||||
Reply-To: hank@automat.uni-essen.de
|
||||
|
||||
Hi!
|
||||
|
||||
I encountered a problem with pcnfsd if passwords longer than 8
|
||||
characters are used (we use the DOUBLE-option from the shadow suite).
|
||||
This is a problem in the comparision of the encrypted passwords. Here
|
||||
comes a patch to get this working:
|
||||
|
||||
*** pcnfsd.c.orig Mon Sep 20 11:23:27 1993
|
||||
--- pcnfsd.c Mon Mar 28 14:35:49 1994
|
||||
***************
|
||||
*** 362,371 ****
|
||||
--- 362,373 ----
|
||||
struct auth_args *a;
|
||||
{
|
||||
static struct auth_results r;
|
||||
char username[32];
|
||||
char password[64];
|
||||
+ char pwd_crypt[64];
|
||||
+ char *pwd_tmp;
|
||||
int c1, c2;
|
||||
struct passwd *p;
|
||||
#ifdef SHADOWPWD
|
||||
struct spwd *spwd;
|
||||
#endif
|
||||
***************
|
||||
*** 390,401 ****
|
||||
|
||||
if (p->pw_name && p->pw_passwd[0] == '@') {
|
||||
if (pw_auth(p->pw_passwd+1, username, PW_LOGIN))
|
||||
return ((char *) &r);
|
||||
} else {
|
||||
! if (!valid(password, p))
|
||||
! return ((char *) &r);
|
||||
}
|
||||
#else
|
||||
c1 = strlen(password);
|
||||
c2 = strlen(p->pw_passwd);
|
||||
if ((c1 && !c2) || (c2 && !c1) ||
|
||||
--- 392,422 ----
|
||||
|
||||
if (p->pw_name && p->pw_passwd[0] == '@') {
|
||||
if (pw_auth(p->pw_passwd+1, username, PW_LOGIN))
|
||||
return ((char *) &r);
|
||||
} else {
|
||||
!
|
||||
! pwd_tmp= crypt( password, p->pw_passwd );
|
||||
! strcpy ( pwd_crypt, pwd_tmp);
|
||||
!
|
||||
! if (strlen (password) > 8) {
|
||||
! pwd_tmp = crypt (password + 8, p->pw_passwd);
|
||||
! strcat (pwd_crypt, pwd_tmp + 2);
|
||||
! }
|
||||
! #ifdef DEBUG
|
||||
! if (buggit){
|
||||
! fprintf(stderr, "AUTHPROC crypt=%s\r\n",pwd_crypt);
|
||||
! fprintf(stderr, "AUTHPROC p->pwpasswd=%s\r\n", p->pw_passwd);
|
||||
! }
|
||||
! #endif DEBUG
|
||||
!
|
||||
! c1 = strlen(password);
|
||||
! c2 = strlen(p->pw_passwd);
|
||||
! if ((c1 && !c2) || (c2 && !c1) ||
|
||||
! (strcmp(p->pw_passwd, pwd_crypt))) {
|
||||
! return ((char *) &r);
|
||||
! }
|
||||
}
|
||||
#else
|
||||
c1 = strlen(password);
|
||||
c2 = strlen(p->pw_passwd);
|
||||
if ((c1 && !c2) || (c2 && !c1) ||
|
||||
|
||||
|
||||
===================
|
||||
|
||||
That's it.
|
||||
|
||||
Ciao,
|
||||
Hank
|
||||
|
||||
|
||||
|
||||
--
|
||||
======================================================================
|
||||
Hendrik G. Seliger Universitaet Essen
|
||||
hank@automat.uni-essen.de Schuetzenbahn 70
|
||||
Tel.: +49-201-183-2898 45117 Essen, Germany
|
||||
======================================================================
|
||||
"Handling interrupts is simple." (G. Pajari)
|
||||
"Interrupts are an unpleasant fact of life." (A. Tanenbaum)
|
||||
|
||||
------------------------------
|
||||
|
||||
From: iiitac@uk.ac.swan.pyr (Alan Cox)
|
||||
Subject: Re: TCP/IP-Bug in 1.0 Kernel?
|
||||
Date: Wed, 30 Mar 1994 09:44:52 GMT
|
||||
|
||||
In article <1994Mar29.075924.2610@pe1chl.ampr.org> pe1chl@rabo.nl writes:
|
||||
>Then I'm afraid this is the first one that is not caused by that...
|
||||
>I have used dip337uri, and have patched it further to solve some problems
|
||||
>with route handling. (I think you have received these patches via the
|
||||
>NET mailing list)
|
||||
>The problem does not seem to be in DIP but in ifconfig.
|
||||
>Or does ifconfig use a new syntax as well?
|
||||
|
||||
The ifconfig syntax is effectively unchanged. There are two fundamental
|
||||
changes to the system about routing from early pl15 to 1.0 kernels.
|
||||
Firstly the route logic was rewritten by Linus to be readable and
|
||||
logical. Secondly for 1.00-pre the BSD route convention of
|
||||
route add somesite gw localifaceaddr
|
||||
was added to allow BSD type route specification and support the
|
||||
Berkeley routed.
|
||||
|
||||
Alan
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: bzarnett@jupiter.scs.Ryerson.CA (Bryan Zarnett)
|
||||
Subject: pdcurses on linux
|
||||
Date: 31 Mar 1994 13:22:58 GMT
|
||||
|
||||
Has anyone tried porting PDCurses to linux? I know its the same as
|
||||
ncurses but.....
|
||||
|
||||
- bryan
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: drew@kinglear.cs.colorado.edu (Drew Eckhardt)
|
||||
Subject: Re: BusLogic BT445S driver?
|
||||
Date: 30 Mar 1994 19:47:02 GMT
|
||||
|
||||
In article <1994Mar30.030019.132837@yuma>,
|
||||
Larry Pyeatt <pyeatt@CS.ColoState.EDU> wrote:
|
||||
>
|
||||
>I have a BusLogic BT445S fast SCSI adapter. Is there a driver for
|
||||
>this board, or should I start writing my own. Any pointers would be
|
||||
>appreciated.
|
||||
|
||||
There are two drivers that work with the board, the Adaptec 1540 driver
|
||||
in the standard kernel, and the Buslogic alpha driver available from
|
||||
the usual place (tsx-11.mit.edu:/pub/linux/ALPHA/scsi).
|
||||
|
||||
You also want to use the cluster patches for improved (perhaps
|
||||
by 100%) throughput.
|
||||
|
||||
------------------------------
|
||||
|
||||
From: mlord@bnr.ca (Mark Lord)
|
||||
Subject: Re: IDE Performance Package
|
||||
Date: 31 Mar 1994 14:05:03 GMT
|
||||
|
||||
In article <2ndj10$8gb@levelland.cs.utexas.edu> danielsi@cs.utexas.edu writes:
|
||||
>
|
||||
>I've installed the ide performance package upon linux 1.0 and have found
|
||||
>the following: Whenever I have disk activity, the mouse jumps around under X.
|
||||
|
||||
The *only* possible way that the performance patches could cause this
|
||||
is if you are using multiple mode *without* allowing the driver to
|
||||
unmask interrupts.
|
||||
|
||||
On my system and on many others, the exact opposite behaviour is observed
|
||||
when the patches are applied and interrupt unmasking is enabled.. the mouse
|
||||
goes from very unresponsive to more responsive.
|
||||
--
|
||||
mlord@bnr.ca Mark Lord BNR Ottawa,Canada 613-763-7482
|
||||
|
||||
------------------------------
|
||||
|
||||
From: mlord@bnr.ca (Mark Lord)
|
||||
Subject: Re: IDE Performance Package
|
||||
Date: 31 Mar 1994 14:10:11 GMT
|
||||
|
||||
In article <WAYNE.94Mar30201847@backbone.uucp> wayne@cse.unl.edu writes:
|
||||
>Just out of curiosity, why are you suspicious of any drive that
|
||||
>supports fewer than 32 sectors? I would think that 16 or even 8
|
||||
>sectors would go a long way in reducing the overhead, and that you
|
||||
>probably aren't saving much by increasing it to 32. Cutting it down
|
||||
>to 16 (or 8) might also help those serial port overruns.
|
||||
|
||||
Suspicions are because of problems encountered with non-standard implementations
|
||||
on older drives, and the one common denominator was that all of the troubled
|
||||
drives supported fewer than 32 sectors in multiple mode.
|
||||
|
||||
However, this restriction is removed in the final version (posted yesterday),
|
||||
which does not enable multiple mode by default for any drive. Instead, a
|
||||
separate program is provided to allow you to tweak the settings on the fly,
|
||||
to find what works best for your system, if anything. On troublesome drives,
|
||||
the error-recovery should still kick in and turn the feature off again if
|
||||
there are problems.
|
||||
|
||||
Have fun!
|
||||
--
|
||||
mlord@bnr.ca Mark Lord BNR Ottawa,Canada 613-763-7482
|
||||
|
||||
------------------------------
|
||||
|
||||
From: Hamish.Macdonald@bnr.ca (Hamish Macdonald)
|
||||
Crossposted-To: comp.unix.amiga
|
||||
Subject: Re: Announcement of Linux/68k Version 0.08
|
||||
Date: 31 Mar 1994 14:11:28 GMT
|
||||
|
||||
In article <1994Mar30.215327.3594@ida.liu.se>,
|
||||
t92johtu@odalix.ida.liu.se (Johan 'tuben' Tufvesson) writes:
|
||||
|
||||
|> I used the new kernel and the new filesystem, and had no luck. Many
|
||||
|> of the programs on in the ramdiskimage don't work, for example mkfs
|
||||
|> and mount. Because of this I haven't been able to test the
|
||||
|> driver. Could the reason for this problem be the difficulties with
|
||||
|> 040 copybackcache and shared libraries? If so, is there a way
|
||||
|> around this right now, or will I have to wait for a new kernel?
|
||||
|> /Waiting for unix on A4000/IDE...
|
||||
|
||||
>>>>> uytterho@cs.kuleuven.ac.be (Uytterhoeven Geert) wrote:
|
||||
|
||||
Uytterhoeven> On my A4000/040 with linux 0.08 mount works, in contrast
|
||||
Uytterhoeven> with some other programs (like sync...). I didn't tried
|
||||
Uytterhoeven> mkfs since I already had a MINIX file system on my IDE
|
||||
Uytterhoeven> drive (created under 0.07pl4).
|
||||
|
||||
Hmmm... I didn't write the IDE driver, but I just had a look at it
|
||||
while thinking "cache". After reading from the disk, the driver
|
||||
doesn't invalidate the instruction cache for the memory into which the
|
||||
disk sectors were read. The driver should really do this, since the
|
||||
IC doesn't know that there is new information in that memory.
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
Crossposted-To: comp.os.linux.admin
|
||||
From: bmyers@dseg.ti.com (Bob Myers)
|
||||
Subject: Are ADDTRON AE-200LC/JL network cards supported?
|
||||
Reply-To: bmyers@dseg.ti.com
|
||||
Date: Tue, 29 Mar 1994 20:41:59 GMT
|
||||
|
||||
I've just seen the ad for getting these cards at $19/29 respectively (limited 2 cards per customer).
|
||||
Would they both work with the .99p15 and above kernels, since they are NE2000 clones? Likewise,
|
||||
since the AE-200JL is software configurable vs the AE-200LC's hardware jumpered, is there a utility
|
||||
to configure it (or others that are software configurable)?
|
||||
|
||||
thanks
|
||||
|
||||
bob
|
||||
p.s. ad was in March '94 edition of LAN magazine, page 77
|
||||
|
||||
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
From: uknf@rzstud1.rz.uni-karlsruhe.de (Olaf Titz)
|
||||
Subject: IDE transfer and interrupts, again
|
||||
Date: 31 Mar 1994 14:42:05 GMT
|
||||
|
||||
In article <2ndj10$8gb@levelland.cs.utexas.edu>,
|
||||
Daniel Aaron Supernaw-Issen <danielsi@cs.utexas.edu> wrote:
|
||||
|
||||
> the following: Whenever I have disk activity, the mouse jumps around under X.
|
||||
> This has made the system unusable whenever there is any real swapping going
|
||||
> on. Worse yet, I can't manage to control the mouse enough to be able to
|
||||
|
||||
The problem is that with 32 sectors read at once, you will certainly
|
||||
lose interrupts. The solution is to enable interrupts during disk
|
||||
transfer (not to use a 16550 even for the mouse at 1200bps...)
|
||||
|
||||
Someone has claimed the following patch doesn't work for all disk
|
||||
drives. (No, I don't know which) Careful testing with a r/o partition
|
||||
first is recommended. The patch is against a 0.99.15something w/o
|
||||
multi-mode and runs stable in my machine for a long time. If a
|
||||
multi-mode hd.c doesn't patch with this, replace every insw() with
|
||||
ninsw() manually, ditto for outsw().
|
||||
|
||||
Olaf
|
||||
|
||||
Patch follows -------------------------------------------------------------
|
||||
|
||||
--- drivers/block/hd.c.orig Fri Jan 21 13:50:11 1994
|
||||
+++ drivers/block/hd.c Tue Feb 8 19:41:32 1994
|
||||
@@ -30,6 +30,7 @@
|
||||
#define REALLY_SLOW_IO
|
||||
#include <asm/system.h>
|
||||
#include <asm/io.h>
|
||||
+#include <asm/ion.h>
|
||||
#include <asm/segment.h>
|
||||
|
||||
#define MAJOR_NR HD_MAJOR
|
||||
@@ -333,7 +334,7 @@
|
||||
do_hd_request();
|
||||
return;
|
||||
ok_to_read:
|
||||
- insw(HD_DATA,CURRENT->buffer,256);
|
||||
+ ninsw(HD_DATA,CURRENT->buffer,256);
|
||||
CURRENT->errors = 0;
|
||||
CURRENT->buffer += 512;
|
||||
CURRENT->sector++;
|
||||
@@ -392,7 +393,7 @@
|
||||
end_request(1);
|
||||
if (i > 0) {
|
||||
SET_INTR(&write_intr);
|
||||
- outsw(HD_DATA,CURRENT->buffer,256);
|
||||
+ noutsw(HD_DATA,CURRENT->buffer,256);
|
||||
sti();
|
||||
} else {
|
||||
#if (HD_DELAY > 0)
|
||||
@@ -502,7 +503,7 @@
|
||||
bad_rw_intr();
|
||||
goto repeat;
|
||||
}
|
||||
- outsw(HD_DATA,CURRENT->buffer,256);
|
||||
+ noutsw(HD_DATA,CURRENT->buffer,256);
|
||||
sti();
|
||||
return;
|
||||
}
|
||||
--- include/asm/ion.h.orig Tue Feb 8 19:41:32 1994
|
||||
+++ include/asm/ion.h Tue Feb 8 19:41:32 1994
|
||||
@@ -0,0 +1,40 @@
|
||||
+#ifndef _ASM_ION_H
|
||||
+#define _ASM_ION_H
|
||||
+
|
||||
+/*
|
||||
+ * This contains versions of ins/outs with interrups enabled. -ot
|
||||
+ */
|
||||
+
|
||||
+#ifdef CONFIG_NO_STI_IO
|
||||
+
|
||||
+#define ninsb insb
|
||||
+#define ninsw insw
|
||||
+#define ninsl insl
|
||||
+
|
||||
+#define noutsb outsb
|
||||
+#define noutsw outsw
|
||||
+#define noutsl outsl
|
||||
+
|
||||
+#else
|
||||
+
|
||||
+#define __NINS(s) \
|
||||
+extern inline void nins##s(unsigned short port, void * addr, unsigned long count) \
|
||||
+{ __asm__ __volatile__ ("pushf ; sti ; cld ; rep ; ins" #s "; popf" \
|
||||
+: "=D" (addr), "=c" (count) : "d" (port),"0" (addr),"1" (count)); }
|
||||
+
|
||||
+#define __NOUTS(s) \
|
||||
+extern inline void nouts##s(unsigned short port, const void * addr, unsigned long count) \
|
||||
+{ __asm__ __volatile__ ("pushf; sti ; cld ; rep ; outs" #s "; popf" \
|
||||
+: "=S" (addr), "=c" (count) : "d" (port),"0" (addr),"1" (count)); }
|
||||
+
|
||||
+__NINS(b)
|
||||
+__NINS(w)
|
||||
+__NINS(l)
|
||||
+
|
||||
+__NOUTS(b)
|
||||
+__NOUTS(w)
|
||||
+__NOUTS(l)
|
||||
+
|
||||
+#endif
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
olaf titz o olaf@bigred.ka.sub.org praetorius@irc
|
||||
comp.sc.student _>\ _ s_titz@ira.uka.de LINUX - the choice
|
||||
karlsruhe germany (_)<(_) uknf@dkauni2.bitnet of a GNU generation
|
||||
what good is a photograph of you? everytime i look at it it makes me feel blue
|
||||
|
||||
------------------------------
|
||||
|
||||
From: danielsi@cs.utexas.edu (Daniel Aaron Supernaw-Issen)
|
||||
Subject: Re: IDE Performance Package
|
||||
Date: 31 Mar 1994 08:41:37 -0600
|
||||
|
||||
I did not in any way turn off interuupt handling. I applied the patches
|
||||
directly on a linux 1.0 kernel without modification and found my mouse to be
|
||||
completely unusable under X when there is any disk activity. I really hope
|
||||
this doesn't make it into the standard kernel as I would have to forever more
|
||||
use an old kernel (at least until I purchase a scsi disk).
|
||||
|
||||
Daniel Supernaw-Issen
|
||||
danielsi@cs.utexas.edu
|
||||
|
||||
|
||||
------------------------------
|
||||
|
||||
|
||||
** 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
|
||||
******************************
|
||||
Reference in New Issue
Block a user