From 7ba243f3e72253992e6af3a2cc2bd0562170845f Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 20 Apr 2018 11:04:20 +0200 Subject: docs-xml: rewrite the vfs_aio_pthread manpage to reflect the >= 4.0.0 behavior Signed-off-by: Stefan Metzmacher Reviewed-by: Volker Lendecke --- docs-xml/manpages/vfs_aio_pthread.8.xml | 51 +++++++++------------------------ 1 file changed, 14 insertions(+), 37 deletions(-) (limited to 'docs-xml/manpages/vfs_aio_pthread.8.xml') diff --git a/docs-xml/manpages/vfs_aio_pthread.8.xml b/docs-xml/manpages/vfs_aio_pthread.8.xml index 69a83468bff..c6f291b980e 100644 --- a/docs-xml/manpages/vfs_aio_pthread.8.xml +++ b/docs-xml/manpages/vfs_aio_pthread.8.xml @@ -13,7 +13,7 @@ vfs_aio_pthread - implement async I/O in Samba vfs using a pthread pool + implement async open in Samba vfs using a pthread pool @@ -30,40 +30,18 @@ 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. + opens (for new files) with yes + on platforms which have the pthreads API available, + support the openat() syscall and support per thread credentials (modern Linux kernels). - - Note that the smb.conf parameters aio read size - and aio write size must also be set appropriately - for this module to be active. - + The module makes use of the global thread pool which uses the + option. 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. + the Samba VFS open interface is not thread-safe. This + module makes direct openat() system calls and does + NOT call the Samba VFS open interfaces. @@ -76,9 +54,8 @@ /data/ice - 1024 - 1024 aio_pthread + yes @@ -89,17 +66,17 @@ - aio_pthread:aio num threads = INTEGER + aio_pthread:aio open = BOOL - Limit the maximum number of threads per smbd that - will be created in the thread pool to service IO requests. + Try async opens for creating new files. - By default this is set to 100. + The default is 'no'. + VERSION -- cgit v1.2.1