Changes in / [4385e8b:b1ac7dd]


Ignore:
Location:
libcfa
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • libcfa/configure

    r4385e8b rb1ac7dd  
    1696216962done
    1696316963
    16964 for ac_func in preadv2 pwritev2
    16965 do :
    16966   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
    16967 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
    16968 if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
    16969   cat >>confdefs.h <<_ACEOF
    16970 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
    16971 _ACEOF
    16972 
    16973 fi
    16974 done
    16975 
    1697616964
    1697716965ac_config_files="$ac_config_files Makefile src/Makefile prelude/Makefile"
  • libcfa/configure.ac

    r4385e8b rb1ac7dd  
    119119
    120120AC_CHECK_HEADERS([linux/io_uring.h])
    121 AC_CHECK_FUNCS([preadv2 pwritev2])
    122121
    123122AC_CONFIG_FILES([
  • libcfa/prelude/defines.hfa.in

    r4385e8b rb1ac7dd  
    1616#undef HAVE_LINUX_IO_URING_H
    1717
    18 #undef HAVE_PREADV2
    19 #undef HAVE_PWRITEV2
    20 
    2118#undef __CFA_NO_STATISTICS__
  • libcfa/src/Makefile.in

    r4385e8b rb1ac7dd  
    241241        containers/vector.hfa bitmanip.hfa math.hfa gmp.hfa time_t.hfa \
    242242        bits/align.hfa bits/containers.hfa bits/defs.hfa \
    243         bits/debug.hfa bits/locks.hfa containers/list.hfa \
    244         concurrency/coroutine.hfa concurrency/thread.hfa \
    245         concurrency/kernel.hfa concurrency/monitor.hfa \
    246         concurrency/mutex.hfa concurrency/invoke.h
     243        bits/debug.hfa bits/locks.hfa concurrency/coroutine.hfa \
     244        concurrency/thread.hfa concurrency/kernel.hfa \
     245        concurrency/monitor.hfa concurrency/mutex.hfa \
     246        concurrency/invoke.h
    247247HEADERS = $(nobase_cfa_include_HEADERS)
    248248am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
     
    463463
    464464#----------------------------------------------------------------------------------------------------------------
    465 @BUILDLIB_TRUE@headers_nosrc = bitmanip.hfa math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa containers/list.hfa
     465@BUILDLIB_TRUE@headers_nosrc = bitmanip.hfa math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa
    466466@BUILDLIB_FALSE@headers =
    467467@BUILDLIB_TRUE@headers = fstream.hfa iostream.hfa iterator.hfa limits.hfa rational.hfa time.hfa stdlib.hfa common.hfa \
  • libcfa/src/concurrency/io.cfa

    r4385e8b rb1ac7dd  
    724724        #include <sys/socket.h>
    725725        #include <sys/syscall.h>
    726 
    727 #if defined(HAVE_PREADV2)
    728726        struct iovec;
    729727        extern ssize_t preadv2 (int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags);
    730 #endif
    731 #if defined(HAVE_PWRITEV2)
    732         struct iovec;
    733728        extern ssize_t pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags);
    734 #endif
    735729
    736730        extern int fsync(int fd);
     
    758752//-----------------------------------------------------------------------------
    759753// Asynchronous operations
    760 #if defined(HAVE_PREADV2)
    761         ssize_t cfa_preadv2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) {
    762                 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_READV)
    763                         return preadv2(fd, iov, iovcnt, offset, flags);
    764                 #else
    765                         __submit_prelude
    766 
    767                         (*sqe){ IORING_OP_READV, fd, iov, iovcnt, offset };
    768 
    769                         __submit_wait
    770                 #endif
    771         }
    772 #endif
    773 
    774 #if defined(HAVE_PWRITEV2)
    775         ssize_t cfa_pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) {
    776                 #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_WRITEV)
    777                         return pwritev2(fd, iov, iovcnt, offset, flags);
    778                 #else
    779                         __submit_prelude
    780 
    781                         (*sqe){ IORING_OP_WRITEV, fd, iov, iovcnt, offset };
    782 
    783                         __submit_wait
    784                 #endif
    785         }
    786 #endif
     754ssize_t cfa_preadv2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) {
     755        #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_READV)
     756                return preadv2(fd, iov, iovcnt, offset, flags);
     757        #else
     758                __submit_prelude
     759
     760                (*sqe){ IORING_OP_READV, fd, iov, iovcnt, offset };
     761
     762                __submit_wait
     763        #endif
     764}
     765
     766ssize_t cfa_pwritev2(int fd, const struct iovec *iov, int iovcnt, off_t offset, int flags) {
     767        #if !defined(HAVE_LINUX_IO_URING_H) || !defined(IORING_OP_WRITEV)
     768                return pwritev2(fd, iov, iovcnt, offset, flags);
     769        #else
     770                __submit_prelude
     771
     772                (*sqe){ IORING_OP_WRITEV, fd, iov, iovcnt, offset };
     773
     774                __submit_wait
     775        #endif
     776}
    787777
    788778int cfa_fsync(int fd) {
     
    10121002                        return IS_DEFINED(IORING_OP_READV);
    10131003
    1014                 #if defined(HAVE_PREADV2)
    1015                         if( /*func == (fptr_t)pwritev2 || */
    1016                                 func == (fptr_t)cfa_pwritev2 )
    1017                                 #define _CFA_IO_FEATURE_IORING_OP_WRITEV ,
    1018                                 return IS_DEFINED(IORING_OP_WRITEV);
    1019                 #endif
    1020 
    1021                 #if defined(HAVE_PWRITEV2)
    1022                         if( /*func == (fptr_t)fsync || */
    1023                                 func == (fptr_t)cfa_fsync )
    1024                                 #define _CFA_IO_FEATURE_IORING_OP_FSYNC ,
    1025                                 return IS_DEFINED(IORING_OP_FSYNC);
    1026                 #endif
     1004                if( /*func == (fptr_t)pwritev2 || */
     1005                        func == (fptr_t)cfa_pwritev2 )
     1006                        #define _CFA_IO_FEATURE_IORING_OP_WRITEV ,
     1007                        return IS_DEFINED(IORING_OP_WRITEV);
     1008
     1009                if( /*func == (fptr_t)fsync || */
     1010                        func == (fptr_t)cfa_fsync )
     1011                        #define _CFA_IO_FEATURE_IORING_OP_FSYNC ,
     1012                        return IS_DEFINED(IORING_OP_FSYNC);
    10271013
    10281014                if( /*func == (fptr_t)ync_file_range || */
Note: See TracChangeset for help on using the changeset viewer.