Hello

I think I found a minor memory bug in the bml_r2 code in function 
mca_bml_r2_del_btl but I could not figure out when this function ever gets 
called.
How can I test this function in a proper way?

Here the diff showing the issue:

@@ -699,11 +699,11 @@ static int mca_bml_r2_del_btl(mca_btl_base_module_t* btl)
     if(!found) {
         /* doesn't even exist */
         goto CLEANUP;
     }
     /* remove from bml list */
-    modules = (mca_btl_base_module_t**)malloc(sizeof(mca_btl_base_module_t*) * 
mca_bml_r2.num_btl_modules-1);
+    modules = (mca_btl_base_module_t**)malloc(sizeof(mca_btl_base_module_t*) * 
(mca_bml_r2.num_btl_modules-1));
     for(i=0,m=0; i<mca_bml_r2.num_btl_modules; i++) {
         if(mca_bml_r2.btl_modules[i] != btl) {
             modules[m++] = mca_bml_r2.btl_modules[i];
         }
     }


Regards
Christoph

--

Christoph Niethammer
High Performance Computing Center Stuttgart (HLRS)
Nobelstrasse 19
70569 Stuttgart

Tel: ++49(0)711-685-87203
email: nietham...@hlrs.de
http://www.hlrs.de/people/niethammer

Reply via email to