IOR
Data Structures | Macros | Functions | Variables
aiori-POSIX.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <assert.h>
#include "ior.h"
#include "aiori.h"
#include "iordef.h"
#include "utilities.h"
Include dependency graph for aiori-POSIX.c:

Go to the source code of this file.

Data Structures

struct  posix_options_t
 

Macros

#define open64   open /* unlikely, but may pose */
 
#define lseek64   lseek /* unlikely, but may pose */
 
#define O_BINARY   0
 

Functions

static IOR_offset_t POSIX_Xfer (int, void *, IOR_size_t *, IOR_offset_t, IOR_param_t *)
 
static void POSIX_Fsync (void *, IOR_param_t *)
 
static void POSIX_Sync (IOR_param_t *)
 
option_helpPOSIX_options (void **init_backend_options, void *init_values)
 
void * POSIX_Create (char *testFileName, IOR_param_t *param)
 
int POSIX_Mknod (char *testFileName)
 
void * POSIX_Open (char *testFileName, IOR_param_t *param)
 
void POSIX_Close (void *fd, IOR_param_t *param)
 
void POSIX_Delete (char *testFileName, IOR_param_t *param)
 
IOR_offset_t POSIX_GetFileSize (IOR_param_t *test, MPI_Comm testComm, char *testFileName)
 

Variables

ior_aiori_t posix_aiori
 

Macro Definition Documentation

◆ lseek64

#define lseek64   lseek /* unlikely, but may pose */

Definition at line 63 of file aiori-POSIX.c.

Referenced by POSIX_Xfer().

◆ O_BINARY

#define O_BINARY   0

Definition at line 67 of file aiori-POSIX.c.

Referenced by POSIX_Create(), and POSIX_Open().

◆ open64

#define open64   open /* unlikely, but may pose */

Definition at line 59 of file aiori-POSIX.c.

Referenced by POSIX_Create(), and POSIX_Open().

Function Documentation

◆ POSIX_Close()

void POSIX_Close ( void *  fd,
IOR_param_t param 
)

Definition at line 602 of file aiori-POSIX.c.

References IOR_param_t::dryRun, and ERRF.

Referenced by MMAP_Close().

Here is the caller graph for this function:

◆ POSIX_Create()

void* POSIX_Create ( char *  testFileName,
IOR_param_t param 
)

◆ POSIX_Delete()

void POSIX_Delete ( char *  testFileName,
IOR_param_t param 
)

Definition at line 614 of file aiori-POSIX.c.

References IOR_param_t::dryRun, EWARNF, and rank.

◆ POSIX_Fsync()

static void POSIX_Fsync ( void *  fd,
IOR_param_t param 
)
static

Definition at line 583 of file aiori-POSIX.c.

References EWARNF.

Referenced by POSIX_Xfer().

Here is the caller graph for this function:

◆ POSIX_GetFileSize()

IOR_offset_t POSIX_GetFileSize ( IOR_param_t test,
MPI_Comm  testComm,
char *  testFileName 
)

Definition at line 627 of file aiori-POSIX.c.

References IOR_param_t::dryRun, ERRF, IOR_param_t::filePerProc, MPI_CHECK, rank, TRUE, and WARN.

◆ POSIX_Mknod()

int POSIX_Mknod ( char *  testFileName)

Definition at line 439 of file aiori-POSIX.c.

References ERR.

◆ POSIX_Open()

void* POSIX_Open ( char *  testFileName,
IOR_param_t param 
)

Definition at line 453 of file aiori-POSIX.c.

References IOR_param_t::backend_options, posix_options_t::direct_io, IOR_param_t::dryRun, ERR, ERRF, IOR_param_t::gpfs_release_token, IOR_param_t::lustre_ignore_locks, NULL, o, O_BINARY, open64, set_o_direct_flag(), TRUE, verbose, and VERBOSE_1.

Referenced by MMAP_Open().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ POSIX_options()

option_help* POSIX_options ( void **  init_backend_options,
void *  init_values 
)

Definition at line 83 of file aiori-POSIX.c.

References posix_options_t::direct_io, LAST_OPTION, NULL, o, and OPTION_FLAG.

◆ POSIX_Sync()

static void POSIX_Sync ( IOR_param_t param)
static

Definition at line 590 of file aiori-POSIX.c.

References FAIL.

◆ POSIX_Xfer()

static IOR_offset_t POSIX_Xfer ( int  access,
void *  file,
IOR_size_t buffer,
IOR_offset_t  length,
IOR_param_t param 
)
static

Variable Documentation

◆ posix_aiori

ior_aiori_t posix_aiori
Initial value:
= {
.name = "POSIX",
.name_legacy = NULL,
.create = POSIX_Create,
.mknod = POSIX_Mknod,
.open = POSIX_Open,
.xfer = POSIX_Xfer,
.close = POSIX_Close,
.delete = POSIX_Delete,
.get_version = aiori_get_version,
.fsync = POSIX_Fsync,
.get_file_size = POSIX_GetFileSize,
.statfs = aiori_posix_statfs,
.access = aiori_posix_access,
.get_options = POSIX_options,
.enable_mdtest = true,
.sync = POSIX_Sync
}
static void POSIX_Fsync(void *, IOR_param_t *)
Definition: aiori-POSIX.c:583
void * POSIX_Open(char *testFileName, IOR_param_t *param)
Definition: aiori-POSIX.c:453
int POSIX_Mknod(char *testFileName)
Definition: aiori-POSIX.c:439
int aiori_posix_rmdir(const char *path, IOR_param_t *param)
Definition: aiori.c:185
int aiori_posix_mkdir(const char *path, mode_t mode, IOR_param_t *param)
Definition: aiori.c:180
int aiori_posix_statfs(const char *path, ior_aiori_statfs_t *stat_buf, IOR_param_t *param)
Definition: aiori.c:155
void * POSIX_Create(char *testFileName, IOR_param_t *param)
Definition: aiori-POSIX.c:321
char * aiori_get_version()
Definition: aiori.c:200
void POSIX_Delete(char *testFileName, IOR_param_t *param)
Definition: aiori-POSIX.c:614
option_help * POSIX_options(void **init_backend_options, void *init_values)
Definition: aiori-POSIX.c:83
IOR_offset_t POSIX_GetFileSize(IOR_param_t *test, MPI_Comm testComm, char *testFileName)
Definition: aiori-POSIX.c:627
static void POSIX_Sync(IOR_param_t *)
Definition: aiori-POSIX.c:590
void POSIX_Close(void *fd, IOR_param_t *param)
Definition: aiori-POSIX.c:602
int aiori_posix_stat(const char *path, struct stat *buf, IOR_param_t *param)
Definition: aiori.c:195
int aiori_posix_access(const char *path, int mode, IOR_param_t *param)
Definition: aiori.c:190
static IOR_offset_t POSIX_Xfer(int, void *, IOR_size_t *, IOR_offset_t, IOR_param_t *)
Definition: aiori-POSIX.c:498
#define NULL
Definition: iordef.h:79

Definition at line 107 of file aiori-POSIX.c.