root/ompi/mca/fbtl/pvfs2/fbtl_pvfs2.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. mca_fbtl_pvfs2_component_init_query
  2. mca_fbtl_pvfs2_component_file_query
  3. mca_fbtl_pvfs2_component_file_unquery
  4. mca_fbtl_pvfs2_module_init
  5. mca_fbtl_pvfs2_module_finalize

   1 /*
   2  * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
   3  *                         University Research and Technology
   4  *                         Corporation.  All rights reserved.
   5  * Copyright (c) 2004-2006 The University of Tennessee and The University
   6  *                         of Tennessee Research Foundation.  All rights
   7  *                         reserved.
   8  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
   9  *                         University of Stuttgart.  All rights reserved.
  10  * Copyright (c) 2004-2005 The Regents of the University of California.
  11  *                         All rights reserved.
  12  * Copyright (c) 2008-2014 University of Houston. All rights reserved.
  13  * Copyright (c) 2018      Research Organization for Information Science
  14  *                         and Technology (RIST). All rights reserved.
  15  * $COPYRIGHT$
  16  *
  17  * Additional copyrights may follow
  18  *
  19  * $HEADER$
  20  *
  21  * These symbols are in a file by themselves to provide nice linker
  22  * semantics. Since linkers generally pull in symbols by object fules,
  23  * keeping these symbols as the only symbols in this file prevents
  24  * utility programs such as "ompi_info" from having to import entire
  25  * modules just to query their version and parameters
  26  */
  27 
  28 #include "ompi_config.h"
  29 #include "mpi.h"
  30 #include "ompi/mca/fbtl/fbtl.h"
  31 #include "ompi/mca/fbtl/pvfs2/fbtl_pvfs2.h"
  32 
  33 /*
  34  * *******************************************************************
  35  * ************************ actions structure ************************
  36  * *******************************************************************
  37  */
  38 static mca_fbtl_base_module_1_0_0_t pvfs2 =  {
  39     mca_fbtl_pvfs2_module_init,     /* initalise after being selected */
  40     mca_fbtl_pvfs2_module_finalize, /* close a module on a communicator */
  41     mca_fbtl_pvfs2_preadv,          /* blocking read */
  42     NULL,                           /* non-blocking read */
  43     mca_fbtl_pvfs2_pwritev,         /* blocking write */
  44     NULL,                           /* non-blocking write */
  45     NULL,                           /* module specific progress */
  46     NULL                            /* free module specific data items on the request */
  47 };
  48 /*
  49  * *******************************************************************
  50  * ************************* structure ends **************************
  51  * *******************************************************************
  52  */
  53 
  54 int mca_fbtl_pvfs2_component_init_query(bool enable_progress_threads,
  55                                       bool enable_mpi_threads) {
  56     /* Nothing to do */
  57 
  58    return OMPI_SUCCESS;
  59 }
  60 
  61 struct mca_fbtl_base_module_1_0_0_t *
  62 mca_fbtl_pvfs2_component_file_query (ompio_file_t *fh, int *priority) {
  63    *priority = mca_fbtl_pvfs2_priority;
  64 
  65    if (PVFS2 == fh->f_fstype) {
  66        if (*priority < 50) {
  67            *priority = 50;
  68        }
  69    }
  70 
  71    return &pvfs2;
  72 }
  73 
  74 int mca_fbtl_pvfs2_component_file_unquery (ompio_file_t *file) {
  75    /* This function might be needed for some purposes later. for now it
  76     * does not have anything to do since there are no steps which need
  77     * to be undone if this module is not selected */
  78 
  79    return OMPI_SUCCESS;
  80 }
  81 
  82 int mca_fbtl_pvfs2_module_init (ompio_file_t *file) {
  83     return OMPI_SUCCESS;
  84 }
  85 
  86 
  87 int mca_fbtl_pvfs2_module_finalize (ompio_file_t *file) {
  88     return OMPI_SUCCESS;
  89 }

/* [<][>][^][v][top][bottom][index][help] */