Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Mar 2000 15:12:20 -0800
From:      Greg Lehey <grog@lemis.com>
To:        Poul-Henning Kamp <phk@critter.freebsd.dk>
Cc:        Matthew Dillon <dillon@apollo.backplane.com>, current@FreeBSD.ORG
Subject:   Re: patches for test / review
Message-ID:  <20000323151220.A9318@mojave.worldwide.lemis.com>
In-Reply-To: <20074.953579833@critter.freebsd.dk>; from phk@critter.freebsd.dk on Mon, Mar 20, 2000 at 08:17:13PM %2B0100
References:  <200003201846.KAA70820@apollo.backplane.com> <20074.953579833@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday, 20 March 2000 at 20:17:13 +0100, Poul-Henning Kamp wrote:
> In message <200003201846.KAA70820@apollo.backplane.com>, Matthew Dillon writes:
>
>>    Well, let me tell you what the fuzzy goal is first and then maybe we
>>    can work backwards.
>>
>>    Eventually all physical I/O needs a physical address.  The quickest
>>    way to get to a physical address is to be given an array of vm_page_t's
>>    (which can be trivially translated to physical addresses).
>
> Not all: PIO access to ATA needs virtual access.  RAID5 needs
> virtual access to calculate parity.

I'm not sure what you mean by "virtual access".  If you mean
file-related rather than partition-related, no: like the rest of
Vinum, RAID-5 uses only partition-related offsets.

>>    What we want to do is to try to extend VMIO (aka the vm_page_t) all
>>    the way through the I/O system - both VFS and DEV I/O, in order to
>>    remove all the nasty back and forth translations.
>
> I agree, but some drivers need mapping we need to cater for those.
> They could simply call a vm_something(struct buf *) call which would
> map the pages and things would "just work".
>
> For RAID5 we have the opposite problem also: data is created which
> has only a mapped existance and the b_pages[] array is not
> populated.

Hmm.  I really need to check that I'm not missing something here.

Greg
--
Finger grog@lemis.com for PGP public key
See complete headers for address and phone numbers


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?20000323151220.A9318>