Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

The problem of NdisAllocateBuffer In VMWare

0 views
Skip to first unread message

havegone

unread,
Apr 6, 2008, 11:27:03 PM4/6/08
to

Hi
Now, I want to construct my own icmp packet in IM, but when the
driver running to NdisAllocateBuffer, the computer shut down at once,
the blue screen output the message is DRIVER_LESS_OR_EQUAL_IRQL. I donot
know why, eventhought I lower the IRQL. In addition,
NdisAllocateBufferPool
return Successful, but the return pool handle is NULL.

--
havegone
------------------------------------------------------------------------
Posted via http://www.codecomments.com
------------------------------------------------------------------------

PCAUSA

unread,
Apr 7, 2008, 2:08:45 AM4/7/08
to
On Apr 6, 11:27 pm, havegone <havegone.37h...@mail.codecomments.com>
wrote:

NdisAllocateBufferPool returns NULL on current Windows versions. So,
that is nothing to worry about.

Clearly some parameter that you are passing to NdisAllocateBuffer is
invalid.

You do understand that the fourth parameter (VirtualAddress) is an
input to NdisAllocateBuffer. You should have allocated the virtual
memory before making the call.

You simply cannot lower IRQL ever!!! You can only raise IRQL. You can
only call NdisAllocateBuffer when you are at IRQL <= DISPATCH_LEVEL.

It is also vertain that the bug you are seeing has nothing specific to
do with VMWare.

This paper at NDIS.com may be helpful:

http://ndis.com/papers/ndispacket/ndispacket1.htm

Thomas F. Divine
http://www.pcausa.com

PCAUSA

unread,
Apr 7, 2008, 2:11:34 AM4/7/08
to

Sorry. You can certainly lower IRQL _IFF_ you have previously raised
it yourself but I don't think that is what you are talking about.

Good luck,

Maxim S. Shatskih

unread,
Apr 7, 2008, 6:32:33 AM4/7/08
to
> know why, eventhought I lower the IRQL. In addition,
> NdisAllocateBufferPool
> return Successful, but the return pool handle is NULL.

This is normal, buffer pools are non-op in NT, they were only used in Win9x/Me.

In NT, NDIS_BUFFER is MDL, NdisAllocateBuffer is
IoAllocateMdl+MmBuildMdlForNonPagedPool, and NdisFreeBuffer is IoFreeMdl.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
ma...@storagecraft.com
http://www.storagecraft.com

HRcrestron

unread,
Apr 7, 2008, 10:52:01 AM4/7/08
to

I am looking for a WDK software develper for a ft perm position in northern
NJ. Would you be interested. Please contact me at bb...@crestron.com

HRcrestron

unread,
Apr 7, 2008, 10:53:02 AM4/7/08
to
I am looking for a WDK software develper for a ft perm position in northern
NJ. Would you be interested? Please contact me at bb...@crestron.com

HRcrestron

unread,
Apr 7, 2008, 10:53:03 AM4/7/08
to

I am looking for a WDK software develper for a ft perm position in northern
NJ. Would you be interested. Please contact me at bb...@crestron.com
0 new messages