From 5fa628621678306b90158d8ab1891c8dc015a7cf Mon Sep 17 00:00:00 2001 From: Alex Naslednikov Date: Tue, 21 Sep 2010 16:05:11 +0000 Subject: [PATCH] [IPoIB_NDIS6_CM] Handling memory access violation at destroy when __port_init fails git-svn-id: svn://openib.tc.cornell.edu/gen1@2942 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86 --- trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp b/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp index 93ceab28..3fd3d1fe 100644 --- a/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp +++ b/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp @@ -3428,7 +3428,10 @@ __send_mgr_destroy( cl_qpool_destroy(&p_port->send_mgr.sg_pool); //Now, free port descriptor - ExFreePoolWithTag(p_port->p_desc, 'XMXA'); + if (p_port->p_desc) { + ExFreePoolWithTag(p_port->p_desc, 'XMXA'); + p_port->p_desc = NULL; + } //Lookaside list will be destroyed in __buf_mgr_destroy -- 2.46.0