Re: [NTDev] Chasing white rabbits down PnP holes ...


Hmmm, not meaning to obfuscate the issue, but some additional information
might be helpful. The 2000 target is transferring data to an NT 4 remote
running an NT 4 version of this driver suite, and it ain’t running out of

WriteFileEx actually sends a control block that will be used to control the
transfer. It contains remote information, protocol (Initiator/Target), send
or receive, and data buffer pointer and length. Buffering in the driver is
set to DO_BUFFERED_IO. I take the control block, extract the buffer address,
and create an MDL for it using IoAllocateMdl specifying the pointer to the
IRP. I also do a MmProbeAndLockPages on the new MDL.That then gets shoved
into a fibre channel request block as a scatter/gather list and sent down to
our fibre channel adapter, via the normal DMA functions of 2000. I assume
here that the resources consumed by the MDL will then be released when a
complete is performed on the IRP.

Hmmm what else have I forgot? The drivers are checked builds running on 2000
SP1(free). Dual processors. 128 Meg Ram. WinDbg

Now, knowing that, do you still feel it is an application issue?

Gary G. Little
Sr. Staff Engineer
Broadband Storage, LLC mailto:xxxxx mailto:xxxxx

-----Original Message-----
From: Peter Viscarola [mailto:xxxxx]
Sent: Thursday, February 01, 2001 12:12 PM
To: NT Developers Interest List
Subject: [ntdev] Re: [NTDev] Chasing white rabbits down PnP holes …

> Hmmmm. If you disable the Driver Verifier’s “low resource
> simulation”
> thingy, does this problem go away… or does it still occur?

“Gary Little” wrote in message news:xxxxx
> It still occurs. However it ran a lot longer that time. Verifier seems to
> exacerbate the problem. Actually, I disabled Verifier all together for a
> test.

OK. The it IS strictly an “application” problem. You’ll have to call the
Win32 function “make my working set bigger, please”… whatever it’s called.

But it’s not a driver verifier thing. And it’s not a DMA model thing (map
registers, etc). You’d see DMA stuff return the error in your driver.

Hope that helps,


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

You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)</news:xxxxx></mailto:xxxxx></mailto:xxxxx></mailto:xxxxx>