]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/etc/spdk/vhost.conf.in
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / spdk / etc / spdk / vhost.conf.in
1 # SPDK vhost configuration file
2 #
3 # Please write all parameters using ASCII.
4 # The parameter must be quoted if it includes whitespace.
5
6 # Configuration syntax:
7 # Leading whitespace is ignored.
8 # Lines starting with '#' are comments.
9 # Lines ending with '\' are concatenated with the next line.
10 # Bracketed ([]) names define sections
11
12 [Global]
13 # Instance ID for multi-process support
14 # Default: 0
15 #InstanceID 0
16
17 # Users can restrict work items to only run on certain cores by
18 # specifying a ReactorMask. Default is to allow work items to run
19 # on core 0.
20 #ReactorMask 0xFFFF
21
22 # Tracepoint group mask for spdk trace buffers
23 # Default: 0x0 (all tracepoint groups disabled)
24 # Set to 0xFFFFFFFFFFFFFFFF to enable all tracepoint groups.
25 #TpointGroupMask 0x0
26
27 # syslog facility
28 LogFacility "local7"
29
30 [Rpc]
31 # Defines whether SPDK vhost will enable configuration via RPC.
32 # Default is disabled. Note that the RPC interface is not
33 # authenticated, so users should be careful about enabling
34 # RPC in non-trusted environments.
35 Enable No
36 # Listen address for the RPC service.
37 # May be an IP address or an absolute path to a Unix socket.
38 Listen 127.0.0.1
39
40 # Users may not want to use offload even it is available.
41 # Users may use the whitelist to initialize specified devices, IDS
42 # uses BUS:DEVICE.FUNCTION to identify each Ioat channel.
43 [Ioat]
44 Disable Yes
45 #Whitelist 00:04.0
46 #Whitelist 00:04.1
47
48 # Users must change this section to match the /dev/sdX devices to be
49 # exported as vhost scsi drives. The devices are accessed using Linux AIO.
50 [AIO]
51 #AIO /dev/sdb
52 #AIO /dev/sdc
53
54 # Users may change this section to create a different number or size of
55 # malloc LUNs.
56 # If the system has hardware DMA engine, it will use an IOAT
57 # (i.e. Crystal Beach DMA) channel to do the copy instead of memcpy.
58 # Of course, users can disable offload even it is available.
59 [Malloc]
60 # Number of Malloc targets
61 NumberOfLuns 3
62 # Malloc targets are 128M
63 LunSizeInMB 128
64 # Block size. Default is 512 bytes.
65 BlockSize 4096
66
67 # NVMe configuration options
68 [Nvme]
69 # NVMe Device Whitelist
70 # Users may specify which NVMe devices to claim by their transport id.
71 # See spdk_nvme_transport_id_parse() in spdk/nvme.h for the correct format.
72 # The second argument is the assigned name, which can be referenced from
73 # other sections in the configuration file. For NVMe devices, a namespace
74 # is automatically appended to each name in the format <YourName>nY, where
75 # Y is the NSID (starts at 1).
76 TransportID "trtype:PCIe traddr:0000:00:00.0" Nvme0
77 TransportID "trtype:PCIe traddr:0000:01:00.0" Nvme1
78
79 # The number of attempts per I/O when an I/O fails. Do not include
80 # this key to get the default behavior.
81 RetryCount 4
82 # Timeout for each command, in seconds. If 0, don't track timeouts.
83 Timeout 0
84 # Action to take on command time out. Only valid when Timeout is greater
85 # than 0. This may be 'Reset' to reset the controller, 'Abort' to abort
86 # the command, or 'None' to just print a message but do nothing.
87 # Admin command timeouts will always result in a reset.
88 ActionOnTimeout None
89 # Set how often the admin queue is polled for asynchronous events.
90 # Units in microseconds.
91 AdminPollRate 100000
92
93 # Enable handling of hotplug (runtime insert and remove) events
94 # vhost currently does not support hotplug
95 HotplugEnable No
96
97 # The Split virtual block device slices block devices into multiple smaller bdevs.
98 [Split]
99 # Syntax:
100 # Split <bdev> <count> [<size_in_megabytes>]
101 #
102 # Split Nvme1n1 into two equally-sized portions, Nvme1n1p0 and Nvme1n1p1
103 #Split Nvme1n1 2
104
105 # Split Malloc2 into eight 1-megabyte portions, Malloc2p0 ... Malloc2p7,
106 # leaving the rest of the device inaccessible
107 #Split Malloc2 8 1
108
109 # Vhost scsi controller configuration
110 # Users should change the VhostScsi section(s) below to match the desired
111 # vhost configuration.
112 # Name is minimum required
113 [VhostScsi0]
114 # Define name for controller
115 Name vhost.0
116 # Assign devices from backend
117 # Use the first malloc device
118 Dev 0 Malloc0
119 # Use the first AIO device
120 #Dev 1 AIO0
121 # Use the frist Nvme device
122 #Dev 2 Nvme0n1
123 # Use the third partition from second Nvme device
124 #Dev 3 Nvme1n1p2
125
126 # Start the poller for this vhost controller on one of the cores in
127 # this cpumask. By default, it not specified, will use any core in the
128 # SPDK process.
129 #Cpumask 0x1
130
131 #[VhostScsi1]
132 # Name vhost.1
133 # Dev0 AIO1
134 # Cpumask 0x1