Changes in / [7b91c0e:1adab3e]


Ignore:
Files:
4 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • benchmark/io/http/main.cfa

    r7b91c0e r1adab3e  
    66#include <unistd.h>
    77extern "C" {
    8         #include <signal.h>
    98        #include <sys/socket.h>
    109        #include <netinet/in.h>
     
    7978//============================================================================================='
    8079int main( int argc, char * argv[] ) {
    81         __sighandler_t s = 1p;
    82         signal(SIGPIPE, s);
    83 
    8480        //===================
    8581        // Parse args
  • benchmark/io/http/options.cfa

    r7b91c0e r1adab3e  
    99}
    1010
    11 #include <bitmanip.hfa>
    1211#include <fstream.hfa>
    1312#include <kernel.hfa>
     
    5251        bool iokpoll = false;
    5352        unsigned sublen = 16;
    54         unsigned nentries = 16;
    55 
    5653
    5754        static cfa_option opt[] = {
     
    7168                { 'i', "kpollcomplete",  "If set, cluster uses IORING_SETUP_IOPOLL", iokpoll, parse_settrue },
    7269                {'\0', "submitlength",   "Max number of submitions that can be submitted together", sublen },
    73                 {'\0', "numentries",     "Number of I/O entries", nentries },
    7470
    7571        };
     
    7874        char **left;
    7975        parse_args( argc, argv, opt, opt_cnt, "[OPTIONS]... [PATH]\ncforall http server", left );
    80 
    81         if( !is_pow2(nentries) ) {
    82                 unsigned v = nentries;
    83                 v--;
    84                 v |= v >> 1;
    85                 v |= v >> 2;
    86                 v |= v >> 4;
    87                 v |= v >> 8;
    88                 v |= v >> 16;
    89                 v++;
    90                 serr | "Warning: num_entries not a power of 2" | '(' | nentries | ')' | "raising to " | v;
    91                 nentries = v;
    92         }
    93         options.clopts.params.num_entries = nentries;
    9476
    9577        options.clopts.params.poller_submits = subthrd;
     
    11294        options.clopts.params.num_ready = sublen;
    11395
    114         if( left[0] == 0p ) { return; }
     96        if( left[0] == 0p ) { return "."; }
    11597
    11698        const char * path = left[0];
     
    118100
    119101        if( left[0] != 0p ) {
    120                 serr | "Too many trailing arguments!" | '\'' | path | '\'';
    121                 while(left[0] != 0p) {
    122                         serr | " - " | left[0];
    123                         left++;
    124                 }
     102                serr | "Too many trailing arguments!";
    125103                exit(EXIT_FAILURE);
    126104        }
  • libcfa/src/concurrency/io.cfa

    r7b91c0e r1adab3e  
    4141        #include "io/types.hfa"
    4242
    43         __attribute__((unused)) static const char * opcodes[] = {
     43        static const char * opcodes[] = {
    4444                "OP_NOP",
    4545                "OP_READV",
     
    173173                        __cfadbg_print_safe(io_core, "Kernel I/O : IO_URING enter %d %u %u\n", ring.fd, to_submit, flags);
    174174                        ret = syscall( __NR_io_uring_enter, ring.fd, to_submit, 0, flags, (sigset_t *)0p, _NSIG / 8);
    175                         __cfadbg_print_safe(io_core, "Kernel I/O : IO_URING %d returned %d\n", ring.fd, ret);
    176 
    177175                        if( ret < 0 ) {
    178176                                switch((int)errno) {
    179177                                case EAGAIN:
    180178                                case EINTR:
    181                                 case EBUSY:
    182179                                        ret = -1;
    183180                                        break;
     
    468465                                sqe->flags,
    469466                                sqe->ioprio,
    470                                 (void*)sqe->off,
    471                                 (void*)sqe->addr,
     467                                sqe->off,
     468                                sqe->addr,
    472469                                sqe->len,
    473470                                sqe->accept_flags,
     
    494491                }
    495492                else if( ring.eager_submits ) {
    496                         __attribute__((unused)) __u32 picked = __submit_to_ready_array( ring, idx, mask );
     493                        __u32 picked = __submit_to_ready_array( ring, idx, mask );
    497494
    498495                        #if defined(LEADER_LOCK)
     
    632629                                        sqe->flags,
    633630                                        sqe->ioprio,
    634                                         (void*)sqe->off,
    635                                         (void*)sqe->addr,
     631                                        sqe->off,
     632                                        sqe->addr,
    636633                                        sqe->len,
    637634                                        sqe->accept_flags,
     
    645642                        __atomic_thread_fence( __ATOMIC_SEQ_CST );
    646643                        // Release the consumed SQEs
    647 
    648644                        __release_consumed_submission( ring );
    649645                        // ring.submit_q.sqes[idx].user_data = 3ul64;
  • libcfa/src/concurrency/io/setup.cfa

    r7b91c0e r1adab3e  
    549549                int ret = syscall( __NR_io_uring_register, ctx.thrd.ring->fd, IORING_REGISTER_FILES, files, count );
    550550                if( ret < 0 ) {
    551                         abort( "KERNEL ERROR: IO_URING REGISTER - (%d) %s\n", (int)errno, strerror(errno) );
     551                        abort( "KERNEL ERROR: IO_URING SYSCALL - (%d) %s\n", (int)errno, strerror(errno) );
    552552                }
    553553
Note: See TracChangeset for help on using the changeset viewer.