local variables/objects (regs) must be initialized/constructed
This commit was SVN r7485.
Этот коммит содержится в:
родитель
c38ebe2c6a
Коммит
b404581293
@ -22,8 +22,8 @@
|
|||||||
/*
|
/*
|
||||||
* memory hook callback, called when memory is free'd out from under us
|
* memory hook callback, called when memory is free'd out from under us
|
||||||
*/
|
*/
|
||||||
void mca_mpool_base_mem_cb(void* base, size_t size, void* cbdata){
|
void mca_mpool_base_mem_cb(void* base, size_t size, void* cbdata)
|
||||||
|
{
|
||||||
uint32_t i, cnt;
|
uint32_t i, cnt;
|
||||||
ompi_pointer_array_t regs;
|
ompi_pointer_array_t regs;
|
||||||
mca_mpool_base_registration_t* reg;
|
mca_mpool_base_registration_t* reg;
|
||||||
@ -31,6 +31,7 @@ void mca_mpool_base_mem_cb(void* base, size_t size, void* cbdata){
|
|||||||
int rc;
|
int rc;
|
||||||
opal_list_item_t* item;
|
opal_list_item_t* item;
|
||||||
|
|
||||||
|
OBJ_CONSTRUCT(®s, ompi_pointer_array_t);
|
||||||
for(item = opal_list_get_first(&mca_mpool_base_modules);
|
for(item = opal_list_get_first(&mca_mpool_base_modules);
|
||||||
item != opal_list_get_end(&mca_mpool_base_modules);
|
item != opal_list_get_end(&mca_mpool_base_modules);
|
||||||
item = opal_list_get_next(item)) {
|
item = opal_list_get_next(item)) {
|
||||||
@ -45,24 +46,15 @@ void mca_mpool_base_mem_cb(void* base, size_t size, void* cbdata){
|
|||||||
&cnt
|
&cnt
|
||||||
);
|
);
|
||||||
if(OMPI_SUCCESS != rc) {
|
if(OMPI_SUCCESS != rc) {
|
||||||
return;
|
continue;
|
||||||
}
|
}
|
||||||
if(0 < cnt) {
|
|
||||||
for(i = 0; i < cnt; i++) {
|
for(i = 0; i < cnt; i++) {
|
||||||
reg = (mca_mpool_base_registration_t*)
|
reg = (mca_mpool_base_registration_t*)ompi_pointer_array_get_item(®s, i);
|
||||||
ompi_pointer_array_get_item(®s, i);
|
current->mpool_module->mpool_deregister(current->mpool_module, reg);
|
||||||
|
|
||||||
rc = current->mpool_module->mpool_deregister(
|
|
||||||
current->mpool_module,
|
|
||||||
reg
|
|
||||||
);
|
|
||||||
if(OMPI_SUCCESS != rc) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
OBJ_DESTRUCT(®s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user