Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Mar 2000 01:10:13 -0800
From:      Julian Elischer <julian@elischer.org>
To:        Poul-Henning Kamp <phk@critter.freebsd.dk>
Cc:        Matthew Dillon <dillon@apollo.backplane.com>, current@FreeBSD.ORG
Subject:   Re: B_WRITE cleanup patch, please test!
Message-ID:  <38D73C75.15FB7483@elischer.org>
References:  <21290.953589428@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
Poul-Henning Kamp wrote:
> 
> In message <200003202129.NAA71883@apollo.backplane.com>, Matthew Dillon writes:
> >    I think the biggest win in regards to being able to arbitrarily stack
> >    devices is to NOT attempt to forward struct buf's between devices when
> >    non-trivial manipulation is required, and instead to make struct buf's
> >    cheap enough that a device can simply allocate a new one and copy the
> >    appropriate fields.
> >
> >    In particular I really hate all the various b_*blkno fields.  b_lblkno,
> >    b_blkno, and b_pblkno.  It is precisely due to the existance of these
> >    hacks that arbitrary device stacking is difficult.
> 
> This is basically what the stuff I'm doing addresses.

I have been advocating since 1991 that the memory involved with IO
should be referenced as a vector of page/offset/length
triplets (physical addresses), and that all drivers should take
that as input. IF he driver needs to do programmed IO only then should
it map the page into KV space.

> 
> --
> Poul-Henning Kamp             FreeBSD coreteam member
> phk@FreeBSD.ORG               "Real hackers run -current on their laptop."
> FreeBSD -- It will take a long time before progress goes too far!

-- 
      __--_|\  Julian Elischer
     /       \ julian@elischer.org
    (   OZ    ) World tour 2000
---> X_.---._/  presently in:  Perth
            v


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38D73C75.15FB7483>