1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
3 <refentry id="vfs_aio_fork.8">
6 <refentrytitle>vfs_aio_fork</refentrytitle>
7 <manvolnum>8</manvolnum>
8 <refmiscinfo class="source">Samba</refmiscinfo>
9 <refmiscinfo class="manual">System Administration tools</refmiscinfo>
10 <refmiscinfo class="version">4.0</refmiscinfo>
15 <refname>vfs_aio_fork</refname>
16 <refpurpose>implement async I/O in Samba vfs</refpurpose>
21 <command>vfs objects = aio_fork</command>
26 <title>DESCRIPTION</title>
28 <para>This VFS module is part of the
29 <citerefentry><refentrytitle>samba</refentrytitle>
30 <manvolnum>7</manvolnum></citerefentry> suite.</para>
32 <para>The <command>aio_fork</command> VFS module enables async
33 I/O for Samba on platforms where the system level Posix AIO
34 interface is insufficient. Posix AIO can suffer from severe
35 limitations. For example, on some Linux versions the
36 real-time signals that it uses are broken under heavy load.
37 Other systems only allow AIO when special kernel modules are
38 loaded or only allow a certain system-wide amount of async
39 requests being scheduled. Systems based on glibc (most Linux
40 systems) only allow a single outstanding request per file
43 <para>To work around all these limitations, the aio_fork module
44 was written. It uses forked helper processes instead of the
45 internal Posix AIO interface to create asynchronousity for
46 read and write calls. It has no parameters, it will create
47 helper processes when async requests come in as needed. Idle
48 helper processes will be removed every 30 seconds.
51 <para>This module is stackable.</para>
57 <title>EXAMPLES</title>
59 <para>Straight forward use:</para>
62 <smbconfsection name="[cooldata]"/>
63 <smbconfoption name="path">/data/ice</smbconfoption>
64 <smbconfoption name="vfs objects">aio_fork</smbconfoption>
70 <title>VERSION</title>
72 <para>This man page is correct for version 4.0.0 of the Samba suite.
79 <para>The original Samba software and related utilities
80 were created by Andrew Tridgell. Samba is now developed
81 by the Samba Team as an Open Source project similar
82 to the way the Linux kernel is developed.</para>