From d8c699190d2cc0ce64395c7b2b10bb25c98a2943 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 25 Jan 2012 14:11:12 -0800 Subject: [PATCH] Add man page for vfs_aio_pthread module. --- docs-xml/manpages-3/vfs_aio_pthread.8.xml | 118 ++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 docs-xml/manpages-3/vfs_aio_pthread.8.xml diff --git a/docs-xml/manpages-3/vfs_aio_pthread.8.xml b/docs-xml/manpages-3/vfs_aio_pthread.8.xml new file mode 100644 index 00000000000..625d6f3520c --- /dev/null +++ b/docs-xml/manpages-3/vfs_aio_pthread.8.xml @@ -0,0 +1,118 @@ + + + + + + vfs_aio_pthread + 8 + Samba + System Administration tools + 3.6 + + + + + vfs_aio_pthread + implement async I/O in Samba vfs using a pthread pool + + + + + vfs objects = aio_pthread + + + + + DESCRIPTION + + This VFS module is part of the + samba + 7 suite. + + The aio_pthread VFS module enables asynchronous + I/O for Samba on platforms which have the pthreads API available, + without using the Posix AIO interface. 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 which essentially makes Posix AIO useless on systems + using the glibc implementation. + + To work around all these limitations, the aio_pthread module + was written. It uses a pthread pool instead of the + internal Posix AIO interface to allow read and write calls + to be process asynchronously. A pthread pool is created + which expands dynamically by creating new threads as work is + given to it to a maximum of 100 threads per smbd process. + To change this limit see the "aio num threads" parameter + below. New threads are not created if idle threads are + available when a new read or write request is received, + the new work is given to an existing idle thread. Threads + terminate themselves if idle for one second. + + + + Note that the smb.conf parameters aio read size + and aio write size must also be set appropriately + for this module to be active. + + + This module MUST be listed last in any module stack as + the Samba VFS pread/pwrite interface is not thread-safe. This + module makes direct pread and pwrite system calls and does + NOT call the Samba VFS pread and pwrite interfaces. + + + + + + EXAMPLES + + Straight forward use: + + + + /data/ice + aio_fork + + + + + + OPTIONS + + + + + aio_pthread:aio num threads = INTEGER + + Limit the maximum number of threads per smbd that + will be created in the thread pool to service IO requests. + + By default this is set to 100. + + + + + + + VERSION + + This man page is correct for version 3.6.3 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. + + + + -- 2.11.4.GIT