1VFS_AIO_LINUX(8) System Administration tools VFS_AIO_LINUX(8)
2
3
4
6 vfs_aio_linux - implement async I/O in Samba vfs using Linux kernel aio
7 calls
8
10 vfs objects = aio_linux
11
13 This VFS module is part of the samba(7) suite.
14
15 The aio_linux VFS module enables asynchronous I/O for Samba on Linux
16 kernels that have the kernel AIO calls available without using the
17 Posix AIO interface. Posix AIO can suffer from severe limitations. For
18 example, on some Linux versions the real-time signals that it uses are
19 broken under heavy load. Other systems only allow AIO when special
20 kernel modules are loaded or only allow a certain system-wide amount of
21 async requests being scheduled. Systems based on glibc (most Linux
22 systems) only allow a single outstanding request per file descriptor
23 which essentially makes Posix AIO useless on systems using the glibc
24 implementation.
25
26 To work around all these limitations, the aio_linux module was written.
27 It uses the Linux kernel AIO interface instead of the internal Posix
28 AIO interface to allow read and write calls to be processed
29 asynchronously. A queue size of 128 events is used by default. To
30 change this limit set the "aio num events" parameter below.
31
32 Note that the smb.conf parameters aio read size and aio write size must
33 also be set appropriately for this module to be active.
34
35 This module MUST be listed last in any module stack as the Samba VFS
36 pread/pwrite interface is not thread-safe. This module makes direct
37 pread and pwrite system calls and does NOT call the Samba VFS pread and
38 pwrite interfaces.
39
41 Straight forward use:
42
43 [cooldata]
44 path = /data/ice
45 aio read size = 1024
46 aio write size = 1024
47 vfs objects = aio_linux
48
50 aio_linux:aio num events = INTEGER
51 Set the maximum size of the event queue that is used to limit
52 outstanding IO requests.
53
54 By default this is set to 128.
55
57 This man page is correct for version 4.0 of the Samba suite.
58
60 The original Samba software and related utilities were created by
61 Andrew Tridgell. Samba is now developed by the Samba Team as an Open
62 Source project similar to the way the Linux kernel is developed.
63
64
65
66Samba 4.2 06/19/2018 VFS_AIO_LINUX(8)