[ofw] [PATCH] winverbs: EP is not in a provider list, so don't try to remove it
Sean Hefty
sean.hefty at intel.com
Tue Aug 25 17:17:07 PDT 2009
Endpoints are not maintained in a list associated with a provider. The list
entry for an endpoint is used to track connection requests with listens. When
an endpoint is unassociated from a listen, it is removed from the listen list.
Trying to remove it from a list during provider cleanup results in a duplicate
removal, can corrupt the listen list, and may access freed memory.
Signed-off-by: Sean Hefty <sean.hefty at intel.com>
---
This patch should go into winof 2.1
Index: core/winverbs/kernel/wv_provider.c
===================================================================
--- core/winverbs/kernel/wv_provider.c (revision 2373)
+++ core/winverbs/kernel/wv_provider.c (working copy)
@@ -102,7 +102,6 @@
}
}
while ((ep = IndexListRemoveHead(&pProvider->EpIndex)) != NULL) {
- RemoveEntryList(&ep->Entry);
WvEpFree(ep);
}
while ((ah = IndexListRemoveHead(&pProvider->AhIndex)) != NULL) {
-------------- next part --------------
A non-text attachment was scrubbed...
Name: wv-ep.diff
Type: application/octet-stream
Size: 437 bytes
Desc: not available
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20090825/3e19dfc4/attachment.obj>
More information about the ofw
mailing list