[ofa-general] Two element types on cancel_list in cancel_mads()?
Sean Hefty
mshefty at ichips.intel.com
Mon Dec 3 10:12:39 PST 2007
>> commit 2c153b934dca08d58e0aafde18a182e0891aa201
>> Author: Hal Rosenstock <halr at voltaire.com>
>> Date: Wed Jul 27 11:45:31 2005 -0700
>>
>> [PATCH] IB: Eliminate MAD cache leak associated with local completions
>>
>> Eliminate MAD cache leak associated with local completions. Also, when
>> canceling MAD, empty local completion list as well.
>>
>> Signed-off-by: Hal Rosenstock <halr at voltaire.com>
>> Cc: Roland Dreier <rolandd at cisco.com>
>> Signed-off-by: Andrew Morton <akpm at osdl.org>
>> Signed-off-by: Linus Torvalds <torvalds at osdl.org>
>>
>> More later...
>
> FWIW, I traced the origin of this change back to the following thread:
>
> http://lists.openfabrics.org/pipermail/general/2005-May/thread.html
>
> http://lists.openfabrics.org/pipermail/general/2005-May/005951.html
>
> Subject:
>
> slab error in kmem_cache_destroy(): cache `ib_mad': Can't free all
> objects
Looking back at the patch above, I think that emptying the local
completion list in cancel_mads() is separate from fixing the cache leak
in local_completions(). By removing the local list handling from
cancel_mads(), all handling of those mads should go through
local_completions() instead, where the memory leak was addressed.
- Sean
More information about the general
mailing list