SWAPON(2)

NAME
swapon - add a swap device for interleaved paging/swapping

LIBRARY
libc

SYNOPSIS
#include <unistd.h>
int
swapon(const char *special);

DESCRIPTION
Swapon() makes the block device special available to the system for allocation for paging and swapping. The names of potentially available devices are known to the system and defined at system configuration time. The size of the swap area on special is calculated at the time the device is first made available for swapping.

RETURN VALUES
If an error has occurred, a value of -1 is returned and errno is set to indicate the error.

ERRORS
Swapon() succeeds unless:

[ENOTDIR]
    A component of the path prefix is not a directory.

[ENAMETOOLONG]
    A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters.

[ENOENT]
    The named device does not exist.

[EACCES]
    Search permission is denied for a component of the path prefix.

[ELOOP]
    Too many symbolic links were encountered in translating the pathname.

[EPERM]
    The caller is not the super-user.

[ENOTBLK]
    Special is not a block device.

[EBUSY]
    The device specified by special has already been made available for swapping

[EINVAL]
    The device configured by special was not configured into the system as a swap device.

[ENXIO]
    The major device number of special is out of range (this indicates no device driver exists for the associated hardware).

[EIO]
    An I/O error occurred while opening the swap device.

[EFAULT]
    Special points outside the process's allocated address space.

SEE ALSO
config(8), swapon(8)

BUGS
There is no way to stop swapping on a disk so that the pack may be dismounted.

This call will be upgraded in future versions of the system.

HISTORY
The swapon() function call appeared in 4.0BSD.