## Name

vfs_aio_fork — implement async I/O in Samba vfs

## Synopsis

`vfs objects = aio_fork`

## DESCRIPTION

This VFS module is part of the samba(7) suite.

The `aio_fork` VFS module enables async I/O for Samba on platforms where the system level Posix AIO interface is insufficient. Posix AIO can suffer from severe limitations. For example, on some Linux versions the real-time signals that it uses are broken under heavy load. Other systems only allow AIO when special kernel modules are loaded or only allow a certain system-wide amount of async requests being scheduled. Systems based on glibc (most Linux systems) only allow a single outstanding request per file descriptor.

To work around all these limitations, the aio_fork module was written. It uses forked helper processes instead of the internal Posix AIO interface to create asynchronousity for read and write calls. It has no parameters, it will create helper processes when async requests come in as needed. Idle helper processes will be removed every 30 seconds.

This module is stackable.

## EXAMPLES

Straight forward use:

            [cooldata]
    	path = /data/ice
    	vfs objects = aio_fork

## VERSION

This man page is correct for version 3.6.0 of the Samba suite.

## AUTHOR

The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed.