Linux errno 11 (EAGAIN) — Resource Temporarily Unavailable
Informationalerrno
Overview
Linux errno 11 (EAGAIN) means a resource is temporarily unavailable, typically with non-blocking I/O or process limits.
Key Details
- EAGAIN — try again later, resource temporarily busy
- Same as EWOULDBLOCK on most Linux systems
- Common with non-blocking sockets and pipes
- Can also indicate process or thread limit reached
Common Causes
- Non-blocking I/O operation with no data available
- System process limit (ulimit -u) reached
- Insufficient memory for fork/clone
- Socket buffer full on non-blocking socket
Steps
- 1For non-blocking I/O: implement retry with poll/epoll
- 2Check process limits: ulimit -a
- 3Increase limits in /etc/security/limits.conf
- 4Monitor system resources: top, free -h
Tags
linuxerrnoerrno 11 eagaintroubleshootingfix
More in Errno
linux-errno-1-epermLinux errno 1 (EPERM) — Operation Not Permitted
Warninglinux-errno-2-enoentLinux errno 2 (ENOENT) — No Such File or Directory
Warninglinux-errno-5-eioLinux errno 5 (EIO) — Input/Output Error
Errorlinux-errno-12-enomemLinux errno 12 (ENOMEM) — Out of Memory
Criticallinux-errno-13-eaccesLinux errno 13 (EACCES) — Permission Denied
Warninglinux-errno-22-einvalLinux errno 22 (EINVAL) — Invalid Argument
WarningFrequently Asked Questions
Yes — EAGAIN means "try again later". Use poll() or select() to wait efficiently.