rusty_mos::kernel::syscall_impl

Function sys_ipc_try_send

Source
fn sys_ipc_try_send(envid: u32, value: u32, src_va: u32, perm: u32) -> u32
Expand description

SYSNO: 13, Try to send a ipc-message to the target env.

The message will be a value together with a page if the src_va is not zero. And the page will be inserted into the envid’s dst_va. The value will be written to the target env’s PCB.

§Failure

This syscall will return a negated-KError::Invalid if the src_va is not zero and is not in the [[UTEMP, UTOP]) range.

This syscall will return a negated-KError::IpcNotRecv if the envid is not ready for receiving.

This syscall will return a negated-KError returned by envid2env, page_lookup and page_insert.