⚠️ VeridianOS Kernel Documentation - This is low-level kernel code. All functions are unsafe unless explicitly marked otherwise. no_std

eventfd_read

Function eventfd_read 

Source
pub fn eventfd_read(efd_id: u32) -> Result<u64, SyscallError>
Expand description

Read from an eventfd. Returns the counter value as a u64.

In normal mode: returns the full counter and resets to 0. In semaphore mode: returns 1 and decrements by 1. If counter is 0 and nonblock is set, returns EAGAIN (WouldBlock). If blocking mode, busy-waits with scheduler yield until counter > 0 (capped at 30s to prevent permanent hangs).