swapon sets the swap area to the file or block device specified by path. swapoff stops swapping to the file or block device specified by path.
swapon takes a swapflags argument. If swapflags has the SWAP_FLAG_PREFER bit turned on, the new swap area will have a higher priority than default. The priority is encoded as:
Each swap area has a priority, either high or low. The default priority is low. Within the low-priority areas, newer areas are even lower priority than older areas.
All priorities set with swapflags are high-priority, higher than default. They may have any non-negative value chosen by the caller. Higher numbers mean higher priority.
Swap pages are allocated from areas in priority order, highest priority first. For areas with different priorities, a higher-priority area is exhausted before using a lower-priority area. If two or more areas have the same priority, and it is the highest priority available, pages are allocated on a round-robin basis between them.
Many other errors can occur if path is not valid.
The user is not the super-user, or more than MAX_SWAPFILES (defined to be 8 in Linux 1.3.6) are in use.
is returned if path exists, but is neither a regular path nor a block device.
is returned if path does not exist.