From 214a53337acf1d1c1279980e0d7e60ba077518c2 Mon Sep 17 00:00:00 2001 From: "U-AMR\\MSHEFTY" Date: Thu, 14 Jan 2010 15:50:59 -0800 Subject: [PATCH] refresh --- meta | 7 +++--- patches/delete-crit | 58 ++++++++++++++++++++++++++++++++++++++++---- patches/refresh-temp | 58 -------------------------------------------- 3 files changed, 56 insertions(+), 67 deletions(-) delete mode 100644 patches/refresh-temp diff --git a/meta b/meta index 24500080..4ac69590 100644 --- a/meta +++ b/meta @@ -1,11 +1,10 @@ Version: 1 -Previous: eb55e5e54720f05f5b0d6b27a89f348f1d7f278a -Head: 4f38489511010ec44fa79f96c633108eb61533a8 +Previous: 6f30bdb01de125e6a864ba397a7d4e2767709841 +Head: b1b14d55af910e494e2c705843af6b40ae2efdd7 Applied: getopt: c7fe4c8b921fb8baef915df044dbcb0f678f1770 rm-build: 065e916eb4f6b5b133e705a6af588c318ed512c6 - delete-crit: 622ce4531b88d5b842edf5ab2835fe7a59e676a7 - refresh-temp: 4f38489511010ec44fa79f96c633108eb61533a8 + delete-crit: b1b14d55af910e494e2c705843af6b40ae2efdd7 Unapplied: test-bind: 0a9c2161d875de15f2754577387c075d3a884acc test-nd-ps: fbed4ce5ede21048062c5b2806dae76f98632afd diff --git a/patches/delete-crit b/patches/delete-crit index abecc0cd..be291cf8 100644 --- a/patches/delete-crit +++ b/patches/delete-crit @@ -1,16 +1,64 @@ Bottom: af34a4ac179d4def89d6140cbed25e5d3a3a9dd5 -Top: af34a4ac179d4def89d6140cbed25e5d3a3a9dd5 +Top: 2be0d741ab78101a493bb10c5f93ba8499dce21a Author: U-AMR\MSHEFTY Date: 2010-01-14 13:04:31 -0800 -mthca/lib: remove dependency on ibal +winverbs: delete critical sections when no longer needed -mthca does not require ibal. Remove the dependency from the -sources file. +To avoid leaking memory, we need to call DeleteCriticalSection +for all critical sections once they are no longer needed. Signed-off-by: Sean Hefty --- - +diff --git a/trunk/core/winmad/user/wm_provider.cpp b/trunk/core/winmad/user/wm_provider.cpp +index 96c20da..b0adc07 100644 +--- a/trunk/core/winmad/user/wm_provider.cpp ++++ b/trunk/core/winmad/user/wm_provider.cpp +@@ -64,6 +64,8 @@ CWMProvider::~CWMProvider() + CloseHandle(m_OverlapWrite.hEvent); + } + CloseHandle(m_hFile); ++ DeleteCriticalSection(&m_CritSecRead); ++ DeleteCriticalSection(&m_CritSecWrite); + InterlockedDecrement(&WmRef); + } + +diff --git a/trunk/core/winverbs/user/wv_base.cpp b/trunk/core/winverbs/user/wv_base.cpp +index 52e9b6e..5ed4e9f 100644 +--- a/trunk/core/winverbs/user/wv_base.cpp ++++ b/trunk/core/winverbs/user/wv_base.cpp +@@ -47,6 +47,7 @@ CWVBase::~CWVBase() + if (m_Overlap.hEvent != NULL) { + CloseHandle(m_Overlap.hEvent); + } ++ DeleteCriticalSection(&m_CritSec); + } + + STDMETHODIMP CWVBase:: +diff --git a/trunk/ulp/libibumad/src/umad.cpp b/trunk/ulp/libibumad/src/umad.cpp +index 6204be0..62473e3 100644 +--- a/trunk/ulp/libibumad/src/umad.cpp ++++ b/trunk/ulp/libibumad/src/umad.cpp +@@ -68,6 +68,7 @@ int umad_init(void) + __declspec(dllexport) + int umad_done(void) + { ++ DeleteCriticalSection(&crit_sec); + return 0; + } + +diff --git a/trunk/ulp/netdirect/user/nd_adapter.cpp b/trunk/ulp/netdirect/user/nd_adapter.cpp +index 107a44e..805f77b 100644 +--- a/trunk/ulp/netdirect/user/nd_adapter.cpp ++++ b/trunk/ulp/netdirect/user/nd_adapter.cpp +@@ -96,6 +96,7 @@ CNDAdapter::~CNDAdapter(void) + m_pWvProvider->Release(); + } + m_pProvider->Release(); ++ DeleteCriticalSection(&m_Lock); + } + + STDMETHODIMP CNDAdapter:: diff --git a/patches/refresh-temp b/patches/refresh-temp deleted file mode 100644 index cfe34284..00000000 --- a/patches/refresh-temp +++ /dev/null @@ -1,58 +0,0 @@ -Bottom: af34a4ac179d4def89d6140cbed25e5d3a3a9dd5 -Top: 2be0d741ab78101a493bb10c5f93ba8499dce21a -Author: U-AMR\MSHEFTY -Date: 2010-01-14 15:50:00 -0800 - -Refresh of delete-crit - ---- - -diff --git a/trunk/core/winmad/user/wm_provider.cpp b/trunk/core/winmad/user/wm_provider.cpp -index 96c20da..b0adc07 100644 ---- a/trunk/core/winmad/user/wm_provider.cpp -+++ b/trunk/core/winmad/user/wm_provider.cpp -@@ -64,6 +64,8 @@ CWMProvider::~CWMProvider() - CloseHandle(m_OverlapWrite.hEvent); - } - CloseHandle(m_hFile); -+ DeleteCriticalSection(&m_CritSecRead); -+ DeleteCriticalSection(&m_CritSecWrite); - InterlockedDecrement(&WmRef); - } - -diff --git a/trunk/core/winverbs/user/wv_base.cpp b/trunk/core/winverbs/user/wv_base.cpp -index 52e9b6e..5ed4e9f 100644 ---- a/trunk/core/winverbs/user/wv_base.cpp -+++ b/trunk/core/winverbs/user/wv_base.cpp -@@ -47,6 +47,7 @@ CWVBase::~CWVBase() - if (m_Overlap.hEvent != NULL) { - CloseHandle(m_Overlap.hEvent); - } -+ DeleteCriticalSection(&m_CritSec); - } - - STDMETHODIMP CWVBase:: -diff --git a/trunk/ulp/libibumad/src/umad.cpp b/trunk/ulp/libibumad/src/umad.cpp -index 6204be0..62473e3 100644 ---- a/trunk/ulp/libibumad/src/umad.cpp -+++ b/trunk/ulp/libibumad/src/umad.cpp -@@ -68,6 +68,7 @@ int umad_init(void) - __declspec(dllexport) - int umad_done(void) - { -+ DeleteCriticalSection(&crit_sec); - return 0; - } - -diff --git a/trunk/ulp/netdirect/user/nd_adapter.cpp b/trunk/ulp/netdirect/user/nd_adapter.cpp -index 107a44e..805f77b 100644 ---- a/trunk/ulp/netdirect/user/nd_adapter.cpp -+++ b/trunk/ulp/netdirect/user/nd_adapter.cpp -@@ -96,6 +96,7 @@ CNDAdapter::~CNDAdapter(void) - m_pWvProvider->Release(); - } - m_pProvider->Release(); -+ DeleteCriticalSection(&m_Lock); - } - - STDMETHODIMP CNDAdapter:: -- 2.46.0