Go to main content

マニュアルページ セクション 8: システム管理コマンド

印刷ビューの終了

更新: 2018年8月8日
 
 

vfs_aio_pthread (8)

名前

vfs_aio_pthread - implement async I/O in Samba vfs using a pthread pool

形式

vfs objects = aio_pthread

説明

System Administration tools                                 VFS_AIO_PTHREAD(8)



NAME
       vfs_aio_pthread - implement async I/O in Samba vfs using a pthread pool

SYNOPSIS
       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:

                   [cooldata]
                path = /data/ice
                aio read size = 1024
                aio write size = 1024
                vfs objects = aio_pthread

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 4.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.



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | service/network/samba |
       +---------------+-----------------------+
       |Stability      | Volatile              |
       +---------------+-----------------------+
NOTES
       This software was built from source available at
       https://github.com/oracle/solaris-userland.  The original community
       source was downloaded from
       https://download.samba.org/pub/samba/stable/samba-4.7.6.tar.gz

       Further information about this software can be found on the open source
       community website at http://www.samba.org/.



Samba 4.7                         08/01/2018                VFS_AIO_PTHREAD(8)