Subject: Re: Memory leak?
To: Jukka Marin <jmarin@teeri.jmp.fi>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: current-users
Date: 02/09/1996 08:32:12
On Thu, 8 Feb 1996 08:30:34 +0200 (EET) 
 Jukka Marin <jmarin@teeri.jmp.fi> wrote:

 > > Didn't cgd show that platform-independent bounce-buffers can't
 > > be done? Or at least can't be done for i386 + Alpha platforms?
 > > I mean, we have plenty of i386 ways, but they don't work on
 > > the alpha. (I think). So why not give in, put in the bounce
 > > buffers on the i386, and then fix it if you come up with a
 > > workable solution in the future.

Actually, If I understand cgd's approach, it's a bus-dependent 
bounce-buffer scheme that has machine-dependent mapping and port/mem 
functions.  A solution is possible, just non-trivial.  However, when 
making these kind of changes, we want to make it *easier* to make the 
code machine-independent, not harder.  Taking a step back is never 
productive, even if it's disguised as a step forward.

 > Is this a big problem on Alphas?  I guess there are lots of ISA SCSI
 > cards around for i386, but I think most Alpha users would use PCI
 > cards instead?  This isn't a problem to me; if/when I get a i386 box
 > to run NetBSD, I'll get a PCI SCSI interface for it.

It can be ... For one, I believe that all ISA-capable Alphas need some 
sort of bounce-buffer (or bounce-buffer-like) scheme for reasons that 
Chris has mentioned here before ... mostly the 0-16MB address space of 
any given ISA bus does not correspond to 0-16MB system address space.  
Not only does the Alpha just not work that way, but there are in fact 
Alphas with more than 1 ISA bus.  In fact, I used to have an Alpha that 
had 2 PCI, 2 ISA, and 1 EISA bus, all on one motherboard.  Each of those 
busses has their own address space, which must be translated or bounced 
into system address space.

Anyhow, I'm just flogging a deceased equine by repeating (possibly 
poorly) those reasons ... In any case, it's clear that a lot of though 
and engineering has to be put into the bounce-buffer and, on a larger 
scale, the machine-independent ISA solution, as well.  We should try 
really hard to do it right the first time (well, having already failed 
that, how about the second or third time :-).  Being someone who uses 
Alphas and x86 boxes (and an IBM RT and an Apollo, which just might run 
NetBSD one day :-), this is fairly important to me both as a user and as 
a member of core.

--------------------------------------------------------------------------
Jason R. Thorpe                                       thorpej@nas.nasa.gov
NASA Ames Research Center                               Home: 408.866.1912
NAS: M/S 258-6                                          Work: 415.604.0935
Moffett Field, CA 94035                                Pager: 415.428.6939