On Thu, Apr/16/2009 06:18:27PM, George Bosilca wrote:
> I don't think this is correct. We are not supposed to include
> anything before the ompi_config.h. Moreover, in the case we redefine
> what malloc is, this will be the only piece of code that will use
> the real malloc.
>
> I wonder why we need to include malloc.h there? We don't allocate
> any memory in this file ...

Any objections to removing the #include <malloc.h> line?

-Ethan

>
>   george.
>
> On Apr 16, 2009, at 18:09 , Ethan Mallove wrote:
>
>> Hi,
>>
>> I think I have a better fix for this issue. It is to simply #include
>> <malloc.h> *before* ompi_config.h.
>>
>>  --- ompi/mca/common/mx/common_mx.c
>>  +++ ompi/mca/common/mx/common_mx.c
>>  @@ -19,15 +19,16 @@
>>    * $HEADER$
>>    */
>>
>>  +#ifdef HAVE_MALLOC_H
>>  +#include <malloc.h>
>>  +#endif
>>  +
>>   #include "ompi_config.h"
>>   #include "orte/util/show_help.h"
>>   #include "ompi/constants.h"
>>   #include "common_mx.h"
>>
>>   #include <errno.h>
>>  -#ifdef HAVE_MALLOC_H
>>  -#include <malloc.h>
>>  -#endif
>>   #include "opal/memoryhooks/memory.h"
>>   #include "opal/mca/base/mca_base_param.h"
>>   #include "ompi/runtime/params.h"
>>
>> The reason for doing this is because ompi_config.h (which includes
>> ompi_config_bottom.h) #defines "malloc", so we end up with OMPI code
>> getting spliced into the Solaris /usr/include/malloc.h code.
>>
>> Is this fix okay?
>>
>> -Ethan
>>
>> On Wed, Dec/10/2008 04:29:31PM, Ethan Mallove wrote:
>>> Hi Patrick,
>>>
>>> r20003 seems to break MX support on Solaris.
>>>
>>>  $ cd ompi/mca/common/mx
>>>  $ make
>>>  ...
>>>  "/usr/include/malloc.h", line 46: syntax error before or at: (
>>>  "/usr/include/malloc.h", line 47: syntax error before or at: (
>>>  "/usr/include/malloc.h", line 48: syntax error before or at: (
>>>  "/usr/include/malloc.h", line 48: cannot have void object: size_t
>>>  "/usr/include/malloc.h", line 48: identifier redeclared: size_t
>>>  ... <4000 more lines of compiler errors> ...
>>>
>>> The below patch makes it so opal/util/malloc.h is used instead of
>>> /usr/include/malloc.h and the compiler errors go away. (I also needed
>>> to include errno.h.) Would this be okay to do?
>>>
>>>  diff -r 347f52a3713f ompi/mca/common/mx/common_mx.c
>>>  --- ompi/mca/common/mx/common_mx.c
>>>  +++ ompi/mca/common/mx/common_mx.c
>>>  @@ -23,9 +23,8 @@
>>>   #include "ompi/constants.h"
>>>   #include "common_mx.h"
>>>
>>>  -#ifdef HAVE_MALLOC_H
>>>  -#include <malloc.h>
>>>  -#endif
>>>  +#include <errno.h>
>>>  +#include "opal/util/malloc.h"
>>>   #include "opal/memoryhooks/memory.h"
>>>   #include "opal/mca/base/mca_base_param.h"
>>>   #include "ompi/runtime/params.h"
>>>
>>> I tested the above on Solaris and Linux with SunStudio.
>>>
>>> Regards,
>>> Ethan
>>>
>>>
>>> On Fri, Nov/14/2008 11:17:59PM, patr...@osl.iu.edu wrote:
>>>> Author: patrick
>>>> Date: 2008-11-14 23:17:58 EST (Fri, 14 Nov 2008)
>>>> New Revision: 20003
>>>> URL: https://svn.open-mpi.org/trac/ompi/changeset/20003
>>>>
>>>> Log:
>>>> Define a "fake" mpool to provide a memory release callback for the
>>>> memory hooks (munmap) and initialize the mallopt component, and
>>>> nothing else.
>>>> Use this mpool in the MX common initialization, supporting both BTL
>>>> and MTL. Automatically set the MX_RCACHE environment variable to
>>>> enable registration cache in MX.
>>>>
>>>> Tested with success for munmap() and large free().
>>>>
>>>>
>>>> Added:
>>>>   trunk/ompi/mca/mpool/fake/
>>>>   trunk/ompi/mca/mpool/fake/Makefile.am
>>>>   trunk/ompi/mca/mpool/fake/configure.params
>>>>   trunk/ompi/mca/mpool/fake/mpool_fake.h
>>>>   trunk/ompi/mca/mpool/fake/mpool_fake_component.c
>>>>   trunk/ompi/mca/mpool/fake/mpool_fake_module.c
>>>> Text files modified:
>>>>   trunk/ompi/mca/common/mx/common_mx.c |    56 
>>>> +++++++++++++++++++++++++++++++++++++++
>>>>   1 files changed, 55 insertions(+), 1 deletions(-)
>>>>
>>>> Modified: trunk/ompi/mca/common/mx/common_mx.c
>>>> ==============================================================================
>>>> --- trunk/ompi/mca/common/mx/common_mx.c   (original)
>>>> +++ trunk/ompi/mca/common/mx/common_mx.c   2008-11-14 23:17:58 EST (Fri, 
>>>> 14 Nov 2008)
>>>> @@ -9,6 +9,8 @@
>>>>  *                         University of Stuttgart.  All rights 
>>>> reserved.
>>>>  * Copyright (c) 2004-2006 The Regents of the University of California.
>>>>  *                         All rights reserved.
>>>> + * Copyright (c) 2008      Myricom. All rights reserved.
>>>> + *
>>>>  * $COPYRIGHT$
>>>>  *
>>>>  * Additional copyrights may follow
>>>> @@ -21,11 +23,29 @@
>>>> #include "ompi/constants.h"
>>>> #include "common_mx.h"
>>>>
>>>> +#ifdef HAVE_MALLOC_H
>>>> +#include <malloc.h>
>>>> +#endif
>>>> +#include "opal/memoryhooks/memory.h"
>>>> +#include "opal/mca/base/mca_base_param.h"
>>>> +#include "ompi/runtime/params.h"
>>>> +#include "ompi/mca/mpool/mpool.h"
>>>> +#include "ompi/mca/mpool/base/base.h"
>>>> +#include "ompi/mca/mpool/fake/mpool_fake.h"
>>>> +
>>>> +
>>>> +int mx__regcache_clean(void *ptr, size_t size);
>>>> +
>>>> static int ompi_common_mx_initialize_ref_cnt = 0;
>>>> +static mca_mpool_base_module_t *ompi_common_mx_fake_mpool = 0;
>>>> +
>>>> int
>>>> ompi_common_mx_initialize(void)
>>>> {
>>>>     mx_return_t mx_return;
>>>> +    struct mca_mpool_base_resources_t mpool_resources;
>>>> +    int index, value;
>>>> +
>>>>     ompi_common_mx_initialize_ref_cnt++;
>>>>
>>>>     if(ompi_common_mx_initialize_ref_cnt == 1) {
>>>> @@ -35,7 +55,37 @@
>>>>          * library does not exit the application.
>>>>          */
>>>>         mx_set_error_handler(MX_ERRORS_RETURN);
>>>> -
>>>> +  
>>>> +  /* If we have a memory manager available, and
>>>> +     mpi_leave_pinned == -1, then set mpi_leave_pinned to 1.
>>>> +
>>>> +     We have a memory manager if:
>>>> +     - we have both FREE and MUNMAP support
>>>> +     - we have MUNMAP support and the linux mallopt */
>>>> +  value = opal_mem_hooks_support_level();
>>>> +  if (((value & (OPAL_MEMORY_FREE_SUPPORT | OPAL_MEMORY_MUNMAP_SUPPORT))
>>>> +       == (OPAL_MEMORY_FREE_SUPPORT | OPAL_MEMORY_MUNMAP_SUPPORT))
>>>> +      || ((value & OPAL_MEMORY_MUNMAP_SUPPORT) &&
>>>> +          OMPI_MPOOL_BASE_HAVE_LINUX_MALLOPT)) {
>>>> +    index = mca_base_param_find("mpi", NULL, "leave_pinned");
>>>> +    if (index >= 0)
>>>> +            if ((mca_base_param_lookup_int(index, &value) == 
>>>> OPAL_SUCCESS)
>>>> +          && (value == -1)) {
>>>> +  
>>>> +        ompi_mpi_leave_pinned = 1;
>>>> +        setenv("MX_RCACHE", "2", 1);
>>>> +        mpool_resources.regcache_clean = mx__regcache_clean;
>>>> +        ompi_common_mx_fake_mpool =
>>>> +          mca_mpool_base_module_create("fake", NULL, &mpool_resources);
>>>> +        if (!ompi_common_mx_fake_mpool) {
>>>> +          ompi_mpi_leave_pinned = 0;
>>>> +          setenv("MX_RCACHE", "0", 1);
>>>> +          opal_output(0, "Error creating fake mpool (error %s)\n",
>>>> +                      strerror(errno));
>>>> +        }
>>>> +      }
>>>> +  }
>>>> +  
>>>>         /* initialize the mx library */
>>>>         mx_return = mx_init();
>>>>
>>>> @@ -57,6 +107,10 @@
>>>>     mx_return_t mx_return;
>>>>     ompi_common_mx_initialize_ref_cnt--;
>>>>     if( 0 == ompi_common_mx_initialize_ref_cnt ) {
>>>> +
>>>> +        if (ompi_common_mx_fake_mpool)
>>>> +    mca_mpool_base_module_destroy(ompi_common_mx_fake_mpool);
>>>> +
>>>>         mx_return = mx_finalize();
>>>>         if(mx_return != MX_SUCCESS){
>>>>             opal_output(0, "Error in mx_finalize (error %s)\n", 
>>>> mx_strerror(mx_return));
>>>>
>>>> Added: trunk/ompi/mca/mpool/fake/Makefile.am
>>>> ==============================================================================
>>>> --- (empty file)
>>>> +++ trunk/ompi/mca/mpool/fake/Makefile.am  2008-11-14 23:17:58 EST (Fri, 
>>>> 14 Nov 2008)
>>>> @@ -0,0 +1,56 @@
>>>> +#
>>>> +# Copyright (c) 2004-2005 The Trustees of Indiana University and 
>>>> Indiana
>>>> +#                         University Research and Technology
>>>> +#                         Corporation.  All rights reserved.
>>>> +# Copyright (c) 2004-2005 The University of Tennessee and The 
>>>> University
>>>> +#                         of Tennessee Research Foundation.  All rights
>>>> +#                         reserved.
>>>> +# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
>>>> +#                         University of Stuttgart.  All rights 
>>>> reserved.
>>>> +# Copyright (c) 2004-2005 The Regents of the University of California.
>>>> +#                         All rights reserved.
>>>> +# Copyright (c) 2008      Myricom.  All rights reserved.
>>>> +#
>>>> +# $COPYRIGHT$
>>>> +#
>>>> +# Additional copyrights may follow
>>>> +#
>>>> +# $HEADER$
>>>> +#
>>>> +
>>>> +AM_CPPFLAGS = $(mpool_fake_CPPFLAGS)
>>>> +
>>>> +sources = \
>>>> +  mpool_fake_module.c \
>>>> +  mpool_fake_component.c
>>>> +
>>>> +if WANT_INSTALL_HEADERS
>>>> +ompidir = $(includedir)/openmpi/ompi/mca/mpool/fake
>>>> +ompi_HEADERS = mpool_fake.h
>>>> +else
>>>> +ompidir = $(includedir)
>>>> +ompi_HEADERS =
>>>> +endif
>>>> +
>>>> +# Make the output library in this directory, and name it either
>>>> +# mca_<type>_<name>.la (for DSO builds) or libmca_<type>_<name>.la
>>>> +# (for static builds).
>>>> +
>>>> +if OMPI_BUILD_mpool_fake_DSO
>>>> +component_noinst =
>>>> +component_install = mca_mpool_fake.la
>>>> +else
>>>> +component_noinst = libmca_mpool_fake.la
>>>> +component_install =
>>>> +endif
>>>> +
>>>> +mcacomponentdir = $(pkglibdir)
>>>> +mcacomponent_LTLIBRARIES = $(component_install)
>>>> +mca_mpool_fake_la_SOURCES = $(sources)
>>>> +mca_mpool_fake_la_LDFLAGS = -module -avoid-version
>>>> +mca_mpool_fake_la_LIBADD = $(mpool_fake_LIBS)
>>>> +
>>>> +noinst_LTLIBRARIES = $(component_noinst)
>>>> +libmca_mpool_fake_la_SOURCES = $(sources)
>>>> +libmca_mpool_fake_la_LDFLAGS = -module -avoid-version
>>>> +libmca_mpool_fake_la_LIBADD = $(mpool_fake_LIBS)
>>>>
>>>> Added: trunk/ompi/mca/mpool/fake/configure.params
>>>> ==============================================================================
>>>> --- (empty file)
>>>> +++ trunk/ompi/mca/mpool/fake/configure.params     2008-11-14 23:17:58 EST 
>>>> (Fri, 14 Nov 2008)
>>>> @@ -0,0 +1,24 @@
>>>> +# -*- shell-script -*-
>>>> +#
>>>> +# Copyright (c) 2004-2005 The Trustees of Indiana University and 
>>>> Indiana
>>>> +#                         University Research and Technology
>>>> +#                         Corporation.  All rights reserved.
>>>> +# Copyright (c) 2004-2005 The University of Tennessee and The 
>>>> University
>>>> +#                         of Tennessee Research Foundation.  All rights
>>>> +#                         reserved.
>>>> +# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
>>>> +#                         University of Stuttgart.  All rights 
>>>> reserved.
>>>> +# Copyright (c) 2004-2005 The Regents of the University of California.
>>>> +#                         All rights reserved.
>>>> +# Copyright (c) 2008      Myricom. All rights reserved.
>>>> +#
>>>> +# $COPYRIGHT$
>>>> +#
>>>> +# Additional copyrights may follow
>>>> +#
>>>> +# $HEADER$
>>>> +#
>>>> +
>>>> +# Specific to this module
>>>> +
>>>> +PARAM_CONFIG_FILES="Makefile"
>>>>
>>>> Added: trunk/ompi/mca/mpool/fake/mpool_fake.h
>>>> ==============================================================================
>>>> --- (empty file)
>>>> +++ trunk/ompi/mca/mpool/fake/mpool_fake.h 2008-11-14 23:17:58 EST (Fri, 
>>>> 14 Nov 2008)
>>>> @@ -0,0 +1,74 @@
>>>> +/*
>>>> + * Copyright (c) 2004-2005 The Trustees of Indiana University and 
>>>> Indiana
>>>> + *                         University Research and Technology
>>>> + *                         Corporation.  All rights reserved.
>>>> + * Copyright (c) 2004-2006 The University of Tennessee and The 
>>>> University
>>>> + *                         of Tennessee Research Foundation.  All 
>>>> rights
>>>> + *                         reserved.
>>>> + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
>>>> + *                         University of Stuttgart.  All rights 
>>>> reserved.
>>>> + * Copyright (c) 2004-2005 The Regents of the University of California.
>>>> + *                         All rights reserved.
>>>> + * Copyright (c) 2008      Myricom. All rights reserved.
>>>> + *
>>>> + * $COPYRIGHT$
>>>> + *
>>>> + * Additional copyrights may follow
>>>> + *
>>>> + * $HEADER$
>>>> + */
>>>> +/**
>>>> + * @file
>>>> + */
>>>> +
>>>> +#ifndef MCA_MPOOL_FAKE_H
>>>> +#define MCA_MPOOL_FAKE_H
>>>> +
>>>> +#include "ompi/mca/mpool/mpool.h"
>>>> +
>>>> +#if defined(c_plusplus) || defined(__cplusplus)
>>>> +extern "C" {
>>>> +#endif
>>>> +
>>>> +typedef struct mca_mpool_fake_component_t {
>>>> +  mca_mpool_base_component_t super;
>>>> +} mca_mpool_fake_component_t;
>>>> +
>>>> +OMPI_DECLSPEC extern mca_mpool_fake_component_t 
>>>> mca_mpool_fake_component;
>>>> +
>>>> +typedef struct mca_mpool_base_resources_t {
>>>> +  int (*regcache_clean)(void *ptr, size_t size);
>>>> +} mca_mpool_base_resources_t;
>>>> +
>>>> +typedef struct mca_mpool_fake_module_t {
>>>> +  mca_mpool_base_module_t super;
>>>> +  mca_mpool_base_resources_t resources;
>>>> +} mca_mpool_fake_module_t;
>>>> +
>>>> +/*
>>>> + *  Initializes the mpool module.
>>>> + */
>>>> +void mca_mpool_fake_module_init(mca_mpool_fake_module_t *mpool);
>>>> +
>>>> +/**
>>>> + * unregister all registration covering the block of memory
>>>> + */
>>>> +int mca_mpool_fake_release_memory(mca_mpool_base_module_t* mpool, void 
>>>> *base,
>>>> +        size_t size);
>>>> +
>>>> +/**
>>>> + * finalize mpool
>>>> + */
>>>> +void mca_mpool_fake_finalize(struct mca_mpool_base_module_t *mpool);
>>>> +
>>>> +/**
>>>> + * Fault Tolerance Event Notification Function
>>>> + * @param state Checkpoint Stae
>>>> + * @return OMPI_SUCCESS or failure status
>>>> + */
>>>> +int mca_mpool_fake_ft_event(int state);
>>>> +
>>>> +#if defined(c_plusplus) || defined(__cplusplus)
>>>> +}
>>>> +#endif
>>>> +#endif
>>>>
>>>> Added: trunk/ompi/mca/mpool/fake/mpool_fake_component.c
>>>> ==============================================================================
>>>> --- (empty file)
>>>> +++ trunk/ompi/mca/mpool/fake/mpool_fake_component.c       2008-11-14 
>>>> 23:17:58 
>>>> EST (Fri, 14 Nov 2008)
>>>> @@ -0,0 +1,87 @@
>>>> +/*
>>>> + * Copyright (c) 2004-2005 The Trustees of Indiana University and 
>>>> Indiana
>>>> + *                         University Research and Technology
>>>> + *                         Corporation.  All rights reserved.
>>>> + * Copyright (c) 2004-2005 The University of Tennessee and The 
>>>> University
>>>> + *                         of Tennessee Research Foundation.  All 
>>>> rights
>>>> + *                         reserved.
>>>> + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
>>>> + *                         University of Stuttgart.  All rights 
>>>> reserved.
>>>> + * Copyright (c) 2004-2005 The Regents of the University of California.
>>>> + *                         All rights reserved.
>>>> + * Copyright (c) 2008      Myricom. All rights reserved.
>>>> + *
>>>> + * $COPYRIGHT$
>>>> + *
>>>> + * Additional copyrights may follow
>>>> + *
>>>> + * $HEADER$
>>>> + */
>>>> +
>>>> +#define OMPI_DISABLE_ENABLE_MEM_DEBUG 1
>>>> +#include "ompi_config.h"
>>>> +#include "orte/util/show_help.h"
>>>> +#include "opal/mca/base/base.h"
>>>> +#include "opal/mca/base/mca_base_param.h"
>>>> +#include "mpool_fake.h"
>>>> +#include "orte/util/proc_info.h"
>>>> +#ifdef HAVE_UNISTD_H
>>>> +#include <unistd.h>
>>>> +#endif
>>>> +#ifdef HAVE_MALLOC_H
>>>> +#include <malloc.h>
>>>> +#endif
>>>> +
>>>> +/*
>>>> + * Local functions
>>>> + */
>>>> +static int mca_mpool_fake_open(void);
>>>> +static mca_mpool_base_module_t* mca_mpool_fake_init(
>>>> +  struct mca_mpool_base_resources_t* resources);
>>>> +
>>>> +mca_mpool_fake_component_t mca_mpool_fake_component = {
>>>> +    {
>>>> +      /* First, the mca_base_component_t struct containing meta
>>>> +         information about the component itself */
>>>> +
>>>> +      {
>>>> +          MCA_MPOOL_BASE_VERSION_2_0_0,
>>>> +
>>>> +          "fake", /* MCA component name */
>>>> +          OMPI_MAJOR_VERSION,  /* MCA component major version */
>>>> +          OMPI_MINOR_VERSION,  /* MCA component minor version */
>>>> +          OMPI_RELEASE_VERSION,  /* MCA component release version */
>>>> +          mca_mpool_fake_open,  /* component open  */
>>>> +          NULL
>>>> +      },
>>>> +      {
>>>> +          /* The component is checkpoint ready */
>>>> +          MCA_BASE_METADATA_PARAM_CHECKPOINT
>>>> +      },
>>>> +
>>>> +      mca_mpool_fake_init
>>>> +    }
>>>> +};
>>>> +
>>>> +/**
>>>> +  * component open/close/init function
>>>> +  */
>>>> +static int mca_mpool_fake_open(void)
>>>> +{
>>>> +    return OMPI_SUCCESS;
>>>> +}
>>>> +
>>>> +static mca_mpool_base_module_t* mca_mpool_fake_init(
>>>> +     struct mca_mpool_base_resources_t* resources)
>>>> +{
>>>> +    mca_mpool_fake_module_t* mpool_module;
>>>> +
>>>> +    mpool_module = (mca_mpool_fake_module_t*)
>>>> +      malloc(sizeof(mca_mpool_fake_module_t));
>>>> +
>>>> +    mpool_module->resources = *resources;
>>>> +
>>>> +    mca_mpool_fake_module_init(mpool_module);
>>>> +
>>>> +    return &mpool_module->super;
>>>> +}
>>>>
>>>> Added: trunk/ompi/mca/mpool/fake/mpool_fake_module.c
>>>> ==============================================================================
>>>> --- (empty file)
>>>> +++ trunk/ompi/mca/mpool/fake/mpool_fake_module.c  2008-11-14 23:17:58 
>>>> EST (Fri, 14 Nov 2008)
>>>> @@ -0,0 +1,72 @@
>>>> +/* -*- Mode: C; c-basic-offset:4 ; -*- */
>>>> +/*
>>>> + * Copyright (c) 2004-2005 The Trustees of Indiana University and 
>>>> Indiana
>>>> + *                         University Research and Technology
>>>> + *                         Corporation.  All rights reserved.
>>>> + * Copyright (c) 2004-2007 The University of Tennessee and The 
>>>> University
>>>> + *                         of Tennessee Research Foundation.  All 
>>>> rights
>>>> + *                         reserved.
>>>> + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
>>>> + *                         University of Stuttgart.  All rights 
>>>> reserved.
>>>> + * Copyright (c) 2004-2005 The Regents of the University of California.
>>>> + *                         All rights reserved.
>>>> + * Copyright (c) 2008      Myricom.  All rights reserved.
>>>> + *
>>>> + * $COPYRIGHT$
>>>> + *
>>>> + * Additional copyrights may follow
>>>> + *
>>>> + * $HEADER$
>>>> + */
>>>> +
>>>> +#define OMPI_DISABLE_ENABLE_MEM_DEBUG 1
>>>> +#include "ompi_config.h"
>>>> +#include "opal/include/opal/align.h"
>>>> +#include "orte/util/proc_info.h"
>>>> +#include "orte/util/name_fns.h"
>>>> +#include "orte/runtime/orte_globals.h"
>>>> +#include "orte/util/show_help.h"
>>>> +#include "mpool_fake.h"
>>>> +#include <errno.h>
>>>> +#include <string.h>
>>>> +#include "ompi/mca/mpool/base/base.h"
>>>> +#include "ompi/runtime/params.h"
>>>> +
>>>> +/*
>>>> + *  Initializes the mpool module.
>>>> + */
>>>> +void mca_mpool_fake_module_init(mca_mpool_fake_module_t* mpool)
>>>> +{
>>>> +    mpool->super.mpool_component = &mca_mpool_fake_component.super;
>>>> +    mpool->super.mpool_base = NULL; /* no base .. */
>>>> +    mpool->super.mpool_alloc = NULL;
>>>> +    mpool->super.mpool_realloc = NULL;
>>>> +    mpool->super.mpool_free = NULL;
>>>> +    mpool->super.mpool_register = NULL;
>>>> +    mpool->super.mpool_find = NULL;
>>>> +    mpool->super.mpool_deregister = NULL;
>>>> +    mpool->super.mpool_release_memory = mca_mpool_fake_release_memory;
>>>> +    mpool->super.mpool_finalize = mca_mpool_fake_finalize;
>>>> +    mpool->super.mpool_ft_event = mca_mpool_fake_ft_event;
>>>> +}
>>>> +
>>>> +
>>>> +int mca_mpool_fake_release_memory(struct mca_mpool_base_module_t 
>>>> *mpool,
>>>> +        void *base, size_t size)
>>>> +{
>>>> +    mca_mpool_fake_module_t *mpool_module = 
>>>> (mca_mpool_fake_module_t*)mpool;
>>>> +
>>>> +    mpool_module->resources.regcache_clean(base, size);
>>>> +
>>>> +    return OMPI_SUCCESS;
>>>> +}
>>>> +
>>>> +void mca_mpool_fake_finalize(struct mca_mpool_base_module_t *mpool)
>>>> +{
>>>> +    ;
>>>> +}
>>>> +
>>>> +int mca_mpool_fake_ft_event(int state)
>>>> +{
>>>> +    return OMPI_SUCCESS;
>>>> +}
>>>> _______________________________________________
>>>> svn-full mailing list
>>>> svn-f...@open-mpi.org
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/svn-full
>>> _______________________________________________
>>> devel mailing list
>>> de...@open-mpi.org
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

Reply via email to