This source file includes following definitions.
- ADIOI_NFS_IreadContig
1
2
3
4
5
6
7 #include "ad_nfs.h"
8
9 #ifdef ROMIO_HAVE_WORKING_AIO
10
11 void ADIOI_NFS_IreadContig(ADIO_File fd, void *buf, int count,
12 MPI_Datatype datatype, int file_ptr_type,
13 ADIO_Offset offset, ADIO_Request *request,
14 int *error_code)
15 {
16 MPI_Count len, typesize;
17 int aio_errno = 0;
18 static char myname[] = "ADIOI_NFS_IREADCONTIG";
19
20 MPI_Type_size_x(datatype, &typesize);
21 len = count * typesize;
22
23 if (file_ptr_type == ADIO_INDIVIDUAL) offset = fd->fp_ind;
24 aio_errno = ADIOI_NFS_aio(fd, buf, len, offset, 0, request);
25 if (file_ptr_type == ADIO_INDIVIDUAL) fd->fp_ind += len;
26
27 fd->fp_sys_posn = -1;
28
29 if (aio_errno != 0) {
30
31 MPIO_ERR_CREATE_CODE_ERRNO(myname, aio_errno, error_code);
32 return;
33
34 }
35 else *error_code = MPI_SUCCESS;
36 }
37 #endif