FETCHI(2)

NAME
fetchi - fetch from user instruction space (2BSD)

SYNOPSIS
fetchi(addr)
int *addr;

DESCRIPTION
Fetchi fetches the word at addr from the caller's instruction space. This system call is required on PDP-11's with separate instruction and data spaces because the mfpi instruction reads from D-space if the current and previous modes in the program status word are both user.

RETURN VALUE
Upon successful completion the contents of the caller's instruction space at addr are returned. Otherwise, a value of -1 is returned.

ERRORS

[EINVAL]
    The kernel has not been compiled for a processor with separate I/D.

[EFAULT]
    Addr points to an address not in the process's allocated instruction space.

BUGS
The error indication, -1, is a legitimate function value; errno, (see intro(2)), can be used to disambiguate.

Fetchi is a kludge and exists only to circumvent an alleged security feature on some DEC PDP-11 processors.

Fetchi is unique to the PDP-11 and 2BSD; its use is discouraged.