Re: [NTDEV] GetScatterGatherList

Thanks Peter.

I thought I might have to go back to the old way using a for-loop around
DmaOperations->MapTransfer. That way used a lookaside list, and I didn’t
want that complexity if I could avoid it. Looks like I can. The only thing
GSGL cannot handle is a 32 bit SG list, which is what my device requires. I
simply convert the 64 bit elements with into 32 bit elements within the
allocated list space.

By the way … IoGetScatterGatherList does not exist. :slight_smile: These functions
are abstracted off of
Adapter->DmaOperations. (But then I’m sure you know that!)

Gary

-----Original Message-----
From: Peter Viscarola [mailto:xxxxx@osr.com]
Sent: Wednesday, January 31, 2001 3:53 PM
To: NT Developers Interest List
Subject: [ntdev] Re: [NTDEV] GetScatterGatherList

“Gary Little” wrote in message
news:xxxxx@ntdev…
>
> When using the new GetScatterGatherList function, is it
possible to do
> concurrent IO, where the sum total of all requested map
registers is less
> than the maximum map registers defined?
>

Yes. In fact, (if I remember correctly) you can process
concurrent I/O
requests, so long as any ONE request doesn’t exceed the
maximum map
registers value returned by IoGetDmaAdapter().

>
> Will GSGL return a new SGList
> pointer for each IO request and SGList it generates?
>

Yes.

Aside: IoGetScatterGatherList is HIGHLY preferable to
IoAllocateAdapterChannel() for almost every use, for a ton
of reasons. It’s
one limitation is that it is not available on any Win9x
platform (and yes,
that means it’s not on Windows ME). It’s a WDM V1.1
function only.

Peter
OSR Open Systems Resources, Inc.


You are currently subscribed to ntdev as:
xxxxx@delphieng.com
To unsubscribe send a blank email to
leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com