process_madvise(2) System Calls Manual process_madvise(2) process_madvise - (libc -lc) #include ssize_t process_madvise(size_t n; int pidfd, const struct iovec iovec[n], size_t n, int advice, unsigned int flags); process_madvise() . iovec n. . pidfd PID ( pidfd_open(2)) . iovec iovec iovec(3type). n iovec. IOV_MAX ( sysconf(_SC_IOV_MAX)). Linux 6.13 advice : MADV_COLD madvise(2). MADV_COLLAPSE madvise(2). MADV_PAGEOUT madvise(2). MADV_WILLNEED madvise(2). Linux 6.13 . flags 0. n iovec . n iovec . iovec . . ( RETURN VALUE.) Linux 5.12 ptrace PTRACE_MODE_READ_FSCREDS ( ptrace(2)) CAP_SYS_NICE ( capabilities(7)). process_madvise() . iovec. . -1 errno . EBADF pidfd PID . EFAULT iovec pidfd. EINVAL flags 0. EINVAL iov_len iovec ssize_t. EINVAL n . ENOMEM iovec. EPERM pidfd. ESRCH ( ). madvise(2) advice. . Linux 5.10 glibc 2.36. CONFIG_ADVISE_SYSCALLS. Linux 5.10 ptrace PTRACE_MODE_ATTACH_FSCREDS ( ptrace(2)). Linux 5.12 . madvise(2) pidfd_open(2) process_vm_readv(2) process_vm_write(2) 3 . . : . 6.18 22 2026 process_madvise(2)