Changeset 010636f
- Timestamp:
- Mar 29, 2022, 3:19:53 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, master, pthread-emulation, qualifiedEnum
- Children:
- dfd3410
- Parents:
- 72ba508
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/io.cfa
r72ba508 r010636f 635 635 636 636 // We can proceed to the fast path 637 if( !__alloc(ctx, &idx, 1) ) return false; 637 if( !__alloc(ctx, &idx, 1) ) { 638 /* paranoid */ verify( false ); // for now check if this happens, next time just abort the sleep. 639 return false; 640 } 638 641 639 642 // Allocation was successful … … 665 668 666 669 /* paranoid */ verify( sqe->user_data == (uintptr_t)&future ); 667 __submit ( ctx, &idx, 1, true);670 __submit_only( ctx, &idx, 1 ); 668 671 669 672 /* paranoid */ verify( proc == __cfaabi_tls.this_processor ); … … 690 693 } 691 694 692 __ioarbiter_flush( *proc->io.ctx ); 693 ioring_syscsll( *proc->io.ctx, 1, IORING_ENTER_GETEVENTS); 695 if( !__atomic_load_n( &proc->do_terminate, __ATOMIC_SEQ_CST ) ) { 696 __ioarbiter_flush( *proc->io.ctx ); 697 ioring_syscsll( *proc->io.ctx, 1, IORING_ENTER_GETEVENTS); 698 } 694 699 695 700 ready_schedule_lock();
Note: See TracChangeset
for help on using the changeset viewer.