[ros-diffs] [cgutman] 35431: - Call MmProbeAndLockPages for SysMdl

cgutman at svn.reactos.org cgutman at svn.reactos.org
Mon Aug 18 16:00:27 CEST 2008


Author: cgutman
Date: Mon Aug 18 09:00:27 2008
New Revision: 35431

URL: http://svn.reactos.org/svn/reactos?rev=35431&view=rev
Log:
 - Call MmProbeAndLockPages for SysMdl

Modified:
    branches/aicom-network-fixes/drivers/network/afd/afd/info.c

Modified: branches/aicom-network-fixes/drivers/network/afd/afd/info.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/afd/afd/info.c?rev=35431&r1=35430&r2=35431&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/afd/afd/info.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/afd/afd/info.c [iso-8859-1] Mon Aug 18 09:00:27 2008
@@ -125,12 +125,20 @@
                 }
 
                 if( SysMdl ) {
-                    MmBuildMdlForNonPagedPool( SysMdl );
+                    _SEH_TRY {
+                        MmProbeAndLockPages( SysMdl, Irp->RequestorMode, IoModifyAccess );
+                    } _SEH_HANDLE {
+	                AFD_DbgPrint(MIN_TRACE, ("MmProbeAndLockPages() failed.\n"));
+	                Status = _SEH_GetExceptionCode();
+                    } _SEH_END;
+                } else Status = STATUS_NO_MEMORY;
+
+                if( NT_SUCCESS(Status) ) {
                     Status = TdiQueryInformation
                         ( FCB->AddressFile.Object,
                           TDI_QUERY_CONNECTION_INFO,
                           SysMdl );
-                } else Status = STATUS_NO_MEMORY;
+                }
 
                 if( NT_SUCCESS(Status) ) {
                     TransAddr =



More information about the Ros-diffs mailing list