1
1

oshmem: use C99 subobject naming for component initialization

This commit helps future-proof oshmem components by initializing each
component member by name.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
Этот коммит содержится в:
Nathan Hjelm 2015-04-18 10:05:59 -06:00
родитель df75d0382f
Коммит c4a61969c0
12 изменённых файлов: 160 добавлений и 169 удалений

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -41,34 +44,27 @@ mca_atomic_base_component_t mca_atomic_basic_component = {
/* First, the mca_component_t struct containing meta information
about the component itself */
{
.atomic_version = {
MCA_ATOMIC_BASE_VERSION_2_0_0,
/* Component name and version */
"basic",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "basic",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* component open */
_basic_open,
/* component close */
NULL,
/* component query */
NULL,
/* component register */
_basic_register
.mca_open_component = _basic_open,
.mca_register_component_params = _basic_register,
},
{
.atomic_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
/* Initialization / querying functions */
mca_atomic_basic_init,
mca_atomic_basic_finalize,
mca_atomic_basic_query
.atomic_init = mca_atomic_basic_init,
.atomic_finalize = mca_atomic_basic_finalize,
.atomic_query = mca_atomic_basic_query,
};
static int _basic_register(void)

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -45,34 +48,27 @@ mca_atomic_base_component_t mca_atomic_mxm_component = {
/* First, the mca_component_t struct containing meta information
about the component itself */
{
.atomic_version = {
MCA_ATOMIC_BASE_VERSION_2_0_0,
/* Component name and version */
"mxm",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "mxm",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* component open */
_mxm_open,
/* component close */
NULL,
/* component query */
NULL,
/* component register */
_mxm_register
.mca_open_component = _mxm_open,
.mca_register_component_params = _mxm_register,
},
{
.atomic_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
/* Initialization / querying functions */
mca_atomic_mxm_init,
mca_atomic_mxm_finalize,
mca_atomic_mxm_query
.atomic_init = mca_atomic_mxm_init,
.atomic_finalize = mca_atomic_mxm_finalize,
.atomic_query = mca_atomic_mxm_query,
};
static int _mxm_register(void)

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -21,23 +24,21 @@ static mca_memheap_base_module_t* mca_memheap_buddy_component_init(memheap_conte
static int _basic_open(void);
mca_memheap_base_component_t mca_memheap_buddy_component = {
{
.memheap_version = {
MCA_MEMHEAP_BASE_VERSION_2_0_0,
"buddy", /* MCA component name */
OSHMEM_MAJOR_VERSION, /* MCA component major version */
OSHMEM_MINOR_VERSION, /* MCA component minor version */
OSHMEM_RELEASE_VERSION, /* MCA component release version */
.mca_component_name = "buddy",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
_basic_open,
mca_memheap_buddy_component_close,
NULL
.mca_open_component = _basic_open,
.mca_close_component = mca_memheap_buddy_component_close,
},
{
.memheap_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
mca_memheap_buddy_component_init
.memheap_init = mca_memheap_buddy_component_init,
};
/* Open component */

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -21,23 +24,21 @@ static mca_memheap_base_module_t* mca_memheap_ptmalloc_component_init(memheap_co
static int _basic_open(void);
mca_memheap_base_component_t mca_memheap_ptmalloc_component = {
{
.memheap_version = {
MCA_MEMHEAP_BASE_VERSION_2_0_0,
"ptmalloc", /* MCA component name */
OSHMEM_MAJOR_VERSION, /* MCA component major version */
OSHMEM_MINOR_VERSION, /* MCA component minor version */
OSHMEM_RELEASE_VERSION, /* MCA component release version */
_basic_open,
mca_memheap_ptmalloc_component_close,
NULL
.mca_component_name= "ptmalloc",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
.mca_open_component = _basic_open,
.mca_close_component = mca_memheap_ptmalloc_component_close,
},
{
.memheap_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
mca_memheap_ptmalloc_component_init
.memheap_init = mca_memheap_ptmalloc_component_init,
};
/* Open component */

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -48,30 +51,28 @@ mca_scoll_base_component_t mca_scoll_basic_component = {
/* First, the mca_component_t struct containing meta information
about the component itself */
{
.scoll_version = {
MCA_SCOLL_BASE_VERSION_2_0_0,
/* Component name and version */
"basic",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "basic",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* Component open and close functions */
basic_open,
basic_close,
NULL,
basic_register
.mca_open_component = basic_open,
.mca_close_component = basic_close,
.mca_register_component_params = basic_register,
},
{
.scoll_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
/* Initialization / querying functions */
mca_scoll_basic_init,
mca_scoll_basic_query
.scoll_init = mca_scoll_basic_init,
.scoll_query = mca_scoll_basic_query,
};
static int basic_register(void)

Просмотреть файл

@ -1,8 +1,11 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -58,30 +61,28 @@ mca_scoll_fca_component_t mca_scoll_fca_component = {
/* First, the mca_component_t struct containing meta information
* about the component itfca */
{
{
.scoll_version = {
MCA_SCOLL_BASE_VERSION_2_0_0,
/* Component name and version */
"fca",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "fca",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* Component open and close functions */
fca_open,
fca_close,
NULL,
fca_register
.mca_open_component = fca_open,
.mca_close_component = fca_close,
.mca_register_component_params = fca_register,
},
{
.scoll_data = {
/* The component is not checkpoint ready */
MCA_BASE_METADATA_PARAM_NONE
},
/* Initialization / querying functions */
mca_scoll_fca_init_query,
mca_scoll_fca_comm_query,
.scoll_init = mca_scoll_fca_init_query,
.scoll_query = mca_scoll_fca_comm_query,
}
};

Просмотреть файл

@ -1,10 +1,13 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2011 Mellanox Technologies. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include <stdio.h>
@ -29,30 +32,28 @@ mca_scoll_mpi_component_t mca_scoll_mpi_component = {
/* First, the mca_component_t struct containing meta information
about the component itfca */
{
{
.scoll_version = {
MCA_SCOLL_BASE_VERSION_2_0_0,
/* Component name and version */
"mpi",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "mpi",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* Component open and close functions */
mpi_open,
mpi_close,
NULL,
mpi_register
.mca_open_component = mpi_open,
.mca_close_component = mpi_close,
.mca_register_component_params = mpi_register,
},
{
.scoll_data = {
/* The component is not checkpoint ready */
MCA_BASE_METADATA_PARAM_NONE
},
/* Initialization / querying functions */
mca_scoll_mpi_init_query,
mca_scoll_mpi_comm_query,
.scoll_init = mca_scoll_mpi_init_query,
.scoll_query = mca_scoll_mpi_comm_query,
},
77, /* priority */
0, /* verbose level */

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013-2015 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -37,26 +40,23 @@ mca_spml_base_component_2_0_0_t mca_spml_ikrit_component = {
/* First, the mca_base_component_t struct containing meta
information about the component itself */
{
MCA_SPML_BASE_VERSION_2_0_0,
.spmlm_version = {
MCA_SPML_BASE_VERSION_2_0_0,
"ikrit", /* MCA component name */
OSHMEM_MAJOR_VERSION, /* MCA component major version */
OSHMEM_MINOR_VERSION, /* MCA component minor version */
OSHMEM_RELEASE_VERSION, /* MCA component release version */
mca_spml_ikrit_component_open, /* component open */
mca_spml_ikrit_component_close, /* component close */
NULL,
mca_spml_ikrit_component_register
.mca_component_name = "ikrit",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
.mca_open_component = mca_spml_ikrit_component_open,
.mca_close_component = mca_spml_ikrit_component_close,
.mca_register_component_params = mca_spml_ikrit_component_register,
},
{
.spmlm_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
mca_spml_ikrit_component_init, /* component init */
mca_spml_ikrit_component_fini /* component finalize */
.spmlm_init = mca_spml_ikrit_component_init,
.spmlm_finalize = mca_spml_ikrit_component_fini,
};
#if MXM_API >= MXM_VERSION(2,1)

Просмотреть файл

@ -1,6 +1,9 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -30,26 +33,23 @@ mca_spml_base_component_2_0_0_t mca_spml_yoda_component = {
/* First, the mca_base_component_t struct containing meta
information about the component itself */
{
.spmlm_version = {
MCA_SPML_BASE_VERSION_2_0_0,
"yoda", /* MCA component name */
OSHMEM_MAJOR_VERSION, /* MCA component major version */
OSHMEM_MINOR_VERSION, /* MCA component minor version */
OSHMEM_RELEASE_VERSION, /* MCA component release version */
mca_spml_yoda_component_open, /* component open */
mca_spml_yoda_component_close, /* component close */
NULL,
mca_spml_yoda_component_register
.mca_component_name = "yoda",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
.mca_open_component = mca_spml_yoda_component_open,
.mca_close_component = mca_spml_yoda_component_close,
.mca_register_component_params = mca_spml_yoda_component_register,
},
{
.spmlm_data = {
/* The component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
mca_spml_yoda_component_init, /* component init */
mca_spml_yoda_component_fini /* component finalize */
.spmlm_init = mca_spml_yoda_component_init,
.spmlm_finalize = mca_spml_yoda_component_fini,
};
static inline void mca_spml_yoda_param_register_int(const char *param_name,

Просмотреть файл

@ -1,7 +1,10 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2014 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -51,30 +54,25 @@ mca_sshmem_mmap_component_t mca_sshmem_mmap_component = {
/**
* common MCA component data
*/
{
.base_version = {
MCA_SSHMEM_BASE_VERSION_2_0_0,
/* component name and version */
"mmap",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "mmap",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* component open */
mmap_open,
/* component close */
mmap_close,
/* component query */
mmap_query,
/* component register */
mmap_register
.mca_open_component = mmap_open,
.mca_close_component = mmap_close,
.mca_query_component = mmap_query,
.mca_register_component_params = mmap_register,
},
/* MCA v2.0.0 component meta data */
{
.base_data = {
/* the component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
mmap_runtime_query,
.runtime_query = mmap_runtime_query,
},
};

Просмотреть файл

@ -1,8 +1,11 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2014 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -63,29 +66,24 @@ mca_sshmem_sysv_component_t mca_sshmem_sysv_component = {
/* ////////////////////////////////////////////////////////////////////// */
{
/* common MCA component data */
{
.base_version = {
MCA_SSHMEM_BASE_VERSION_2_0_0,
/* component name and version */
"sysv",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "sysv",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* component open */
sysv_open,
/* component close */
NULL,
/* component query */
sysv_query,
sysv_register
.mca_open_component = sysv_open,
.mca_query_component = sysv_query,
.mca_register_component_params = sysv_register,
},
/* MCA v2.0.0 component meta data */
{
.base_data = {
/* the component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
sysv_runtime_query,
.runtime_query = sysv_runtime_query,
},
/* ////////////////////////////////////////////////////////////////////// */
/* sysv component-specific information */

Просмотреть файл

@ -1,9 +1,12 @@
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
/*
* Copyright (c) 2014 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2014 NVIDIA Corporation. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -59,30 +62,25 @@ mca_sshmem_verbs_component_t mca_sshmem_verbs_component = {
/**
* common MCA component data
*/
{
.base_version = {
MCA_SSHMEM_BASE_VERSION_2_0_0,
/* component name and version */
"verbs",
OSHMEM_MAJOR_VERSION,
OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION,
.mca_component_name = "verbs",
MCA_BASE_MAKE_VERSION(component, OSHMEM_MAJOR_VERSION, OSHMEM_MINOR_VERSION,
OSHMEM_RELEASE_VERSION),
/* component open */
verbs_open,
/* component close */
verbs_close,
/* component query */
verbs_query,
/* component register */
verbs_register
.mca_open_component = verbs_open,
.mca_close_component = verbs_close,
.mca_query_component = verbs_query,
.mca_register_component_params = verbs_register,
},
/* MCA v2.0.0 component meta data */
{
.base_data = {
/* the component is checkpoint ready */
MCA_BASE_METADATA_PARAM_CHECKPOINT
},
verbs_runtime_query,
.runtime_query = verbs_runtime_query,
},
};