]> xenbits.xensource.com Git - pvdrivers/win/xenvif.git/commit
Replace uses of MmAllocatePagesForMdlEx in __AllocatePage
authorBen Chalmers <ben.chalmers@citrix.com>
Tue, 10 Jul 2018 10:09:59 +0000 (11:09 +0100)
committerPaul Durrant <paul.durrant@citrix.com>
Tue, 10 Jul 2018 10:17:16 +0000 (11:17 +0100)
commit4f85d00477b0931d4367a34de4f84d54b0f04d4e
tree35f03fb4a202caa373dc38866084752227e2fef9
parent8cc78042aca73b0f1d1fd5f425fb490476827f9d
Replace uses of MmAllocatePagesForMdlEx in __AllocatePage

Windows appears to have an edge case bug in which zeroing
memory using MmAllocatePAgesForMdlEx (which in Win 10 1803
happens even if you specify MM_DONT_ZERO_ALLOCATION) can cause
a BSOD 139 1e.

This commit uses MmAllocateContinguousMemorySpecifyCache
to allocate memory instead, then builds and Mdl to wrap
it up.

__AllocatePages is left unchanged (as we don't want
to allocate multiple contiguous pages).  This issue
has not been seen outside of xenvif calls to
__AllocatePage and we expect a fix to the underlying
Windows problem in the near future

Signed-off-by: Ben.Chalmers <ben.chalmers@citrix.com>
src/xenvif/controller.c
src/xenvif/receiver.c
src/xenvif/transmitter.c
src/xenvif/util.h