nc 0.9.8

Access system calls directly
Documentation
/// Move individual pages of a process to another node
pub unsafe fn move_pages(
    pid: pid_t,
    nr_pages: usize,
    pages: usize,
    nodes: *const i32,
    status: Option<&mut i32>,
    flags: u32,
) -> Result<(), Errno> {
    let pid = pid as usize;
    let nodes_ptr = nodes as usize;
    let status = status.map_or(core::ptr::null_mut::<i32>() as usize, |status| {
        core::ptr::from_mut(status) as usize
    });
    // NOTE(Shaohua): Type of flags is i32 in kernel.
    let flags = flags as usize;
    unsafe {
        syscall6(
            SYS_MOVE_PAGES,
            pid,
            nr_pages,
            pages,
            nodes_ptr,
            status,
            flags,
        )
        .map(drop)
    }
}