HPlogo HP-UX Reference Volume 3 of 5 > s

swapon(2)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

swapon — add swap space for interleaved paging/swapping

SYNOPSIS

#include <unistd.h> int swapon(const char *path, ... /* [int min, int limit, int reserve,] int priority */ );

Remarks

The ANSI C ", ..." construct denotes a variable length argument list whose optional and required members are given in the associated comment (/* */).

DESCRIPTION

The swapon() system call makes a block device or a directory named path available to the system for paging and swapping.

priority indicates the order in which the swap space from the device or file system is used. Space is taken from the lower-priority systems first.

swapon() can be used only by users who have appropriate privileges.

If path names a block device file

swapon() makes it available to the system at the specified priority for allocation for paging and swapping.

In this form, swapon() takes only two arguments: the path to the block device file, and the priority.

The device associated with path can be a device already known to the system, defined at system configuration time, or it can be a previously unspecified device.

If the device was already defined at system configuration time and also has a start and/or size defined for that swap device, these values are used.

Otherwise, if a filesystem exists on the device, swap is added following the filesystem, or if no filesystem exists, the complete device is used for swap.

See the appropriate system administrator's manual for information on how the size of the swap area is calculated.

If path names a directory

swapon() makes the blocks on the file system rooted at path available for paging and swapping.

The min, limit, and reserve arguments are passed and used only if the path argument names a directory.

min indicates the number of file system blocks to take from the file system when swapon() is called.

limit indicates the maximum number of file system blocks the swap system is allowed to take from the file system.

reserve indicates the number of file system blocks that are saved for file system use only.

ERRORS

If swapon() fails, errno is set to one of the following values.

[EACCES]

A component of the path prefix denies search permission.

[EALREADY]

The device or directory associated with path already has swap turned on.

[EBUSY]

The device associated with path is already in use.

[EEXIST]

The device associated with path was specified at system configuration time to add swap at a specified location, but that location is within an existing file system on the device.

[EFAULT]

The LIF header on the device associated with path contains inconsistent directory data.

[EIO]

Unable to read the device associated with path.

[ELOOP]

Too many symbolic links were encountered in translating the path name.

[ENAMETOOLONG]

The length of the specified path name exceeds PATH_MAX bytes, or the length of a component of the path name exceeds NAME_MAX bytes while _POSIX_NO_TRUNC is in effect.

[ENODEV]

The device associated with path does not exist.

[ENOENT]

The system-imposed limit on the number of swap file entries has been reached.

[ENOSPC]

There is is not enough available space on the specified file system or device.

[ENOSYS]

The device associated with path was specified at system configuration time to add swap following the file system, but no file system was found.

[ENOTBLK]

The path argument is not a block special file or the root directory of a file system.

[ENOTDIR]

A component of the path is not a directory.

[ENXIO]

The device associated with path could not be opened.

[EPERM]

The effective user ID is not a user with appropriate privileges.

[EROFS]

The device associated with path is read-only.

WARNINGS

No means is available to stop swapping to a device.

The system allocates no less than the amount specified in min. However, to make the most efficient use of space, more than the amount requested might be taken from the file system. The actual amount taken will not exceed the number of file system blocks indicated in reserve.

Swapping to a file system is usually slower than swapping to a device.

Once file system blocks have been allocated for swap space, the file system can not be unmounted unless the system is rebooted.

AUTHOR

swapon() was developed by the University of California, Berkeley.

SEE ALSO

swapon(1M).

© Hewlett-Packard Development Company, L.P.