Changeset 7ce8873 for libcfa/src/concurrency/io
- Timestamp:
- Jul 28, 2022, 12:03:16 PM (3 years ago)
- Branches:
- ADT, ast-experimental, master, pthread-emulation
- Children:
- 3f95dab
- Parents:
- e8616b6
- Location:
- libcfa/src/concurrency/io
- Files:
-
- 2 edited
-
call.cfa.in (modified) (2 diffs)
-
setup.cfa (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/io/call.cfa.in
re8616b6 r7ce8873 34 34 #include "kernel.hfa" 35 35 #include "io/types.hfa" 36 #include "stats.hfa" 36 37 37 38 //============================================================================================= … … 226 227 async_{name}( future, {args}, submit_flags ); 227 228 228 wait( future ); 229 __attribute__((unused)) bool parked; 230 parked = wait( future ); 231 __STATS__(false, if(!parked) io.submit.nblk += 1; ) 229 232 if( future.result < 0 ) {{ 230 233 errno = -future.result; -
libcfa/src/concurrency/io/setup.cfa
re8616b6 r7ce8873 229 229 #if !defined(CFA_WITH_IO_URING_IDLE) 230 230 // Step 4 : eventfd 231 // io_uring_register is so f*cking slow on some machine that it232 // will never succeed if preemption isn't hard blocked233 231 __cfadbg_print_safe(io_core, "Kernel I/O : registering %d for completion with ring %d\n", procfd, fd); 234 232 … … 240 238 __cfadbg_print_safe(io_core, "Kernel I/O : registered %d for completion with ring %d\n", procfd, fd); 241 239 #endif 240 241 // #if defined(CFA_HAVE_IORING_REGISTER_IOWQ_MAX_WORKERS) 242 // // Step 5 : max worker count 243 // __cfadbg_print_safe(io_core, "Kernel I/O : lmiting max workers for ring %d\n", fd); 244 245 // unsigned int maxes[2]; 246 // maxes[0] = 64; // max number of bounded workers (Regular files / block) 247 // maxes[1] = 64; // max number of unbounded workers (IOSQE_ASYNC) 248 // int ret = syscall( __NR_io_uring_register, fd, IORING_REGISTER_IOWQ_MAX_WORKERS, maxes, 2); 249 // if (ret < 0) { 250 // abort("KERNEL ERROR: IO_URING MAX WORKER REGISTER - %s\n", strerror(errno)); 251 // } 252 253 // __cfadbg_print_safe(io_core, "Kernel I/O : lmited max workers for ring %d\n", fd); 254 // #endif 242 255 243 256 // some paranoid checks
Note:
See TracChangeset
for help on using the changeset viewer.