]> git.proxmox.com Git - mirror_spl.git/blob - man/man5/spl-module-parameters.5
Refactor generic memory allocation interfaces
[mirror_spl.git] / man / man5 / spl-module-parameters.5
1 '\" te
2 .\"
3 .\" Copyright 2013 Turbo Fredriksson <turbo@bayour.com>. All rights reserved.
4 .\"
5 .TH SPL-MODULE-PARAMETERS 5 "Nov 18, 2013"
6 .SH NAME
7 spl\-module\-parameters \- SPL module parameters
8 .SH DESCRIPTION
9 .sp
10 .LP
11 Description of the different parameters to the SPL module.
12
13 .SS "Module parameters"
14 .sp
15 .LP
16
17 .sp
18 .ne 2
19 .na
20 \fBspl_debug_subsys\fR (ulong)
21 .ad
22 .RS 12n
23 Subsystem debugging level mask.
24 .sp
25 Default value: \fB~0\fR.
26 .RE
27
28 .sp
29 .ne 2
30 .na
31 \fBspl_debug_mask\fR (ulong)
32 .ad
33 .RS 12n
34 Debugging level mask.
35 .sp
36 Default value: \fB8 | 10 | 4 | 20\fR (SD_ERROR | SD_EMERG | SD_WARNING | SD_CONSOLE).
37 .RE
38
39 .sp
40 .ne 2
41 .na
42 \fBspl_debug_printk\fR (ulong)
43 .ad
44 .RS 12n
45 Console printk level mask.
46 .sp
47 Default value: \fB8 | 10 | 4 | 20\fR (SD_ERROR | SD_EMERG | SD_WARNING | SD_CONSOLE).
48 .RE
49
50 .sp
51 .ne 2
52 .na
53 \fBspl_debug_mb\fR (int)
54 .ad
55 .RS 12n
56 Total debug buffer size.
57 .sp
58 Default value: \fB-1\fR.
59 .RE
60
61 .sp
62 .ne 2
63 .na
64 \fBspl_debug_panic_on_bug\fR (int)
65 .ad
66 .RS 12n
67 Panic on BUG
68 .sp
69 Use \fB1\fR for yes and \fB0\fR for no (default).
70 .RE
71
72 .sp
73 .ne 2
74 .na
75 \fBspl_kmem_cache_expire\fR (uint)
76 .ad
77 .RS 12n
78 By age (0x1) or low memory (0x2)
79 .sp
80 Default value: \fB0\fR.
81 .RE
82
83 .sp
84 .ne 2
85 .na
86 \fBspl_kmem_alloc_warn\fR (uint)
87 .ad
88 .RS 12n
89 As a general rule kmem_alloc() allocations should be small, preferably
90 just a few pages since they must by physically contiguous. Therefore, a
91 rate limited warning will be printed to the console for any kmem_alloc()
92 which exceeds a reasonable threshold.
93
94 The default warning threshold is set to eight pages but capped at 32K to
95 accommodate systems using large pages. This value was selected to be small
96 enough to ensure the largest allocations are quickly noticed and fixed.
97 But large enough to avoid logging any warnings when a allocation size is
98 larger than optimal but not a serious concern. Since this value is tunable,
99 developers are encouraged to set it lower when testing so any new largish
100 allocations are quickly caught. These warnings may be disabled by setting
101 the threshold to zero.
102 .sp
103 Default value: \fB32K\fR.
104 .RE
105
106 .sp
107 .ne 2
108 .na
109 \fBspl_kmem_alloc_max\fR (uint)
110 .ad
111 .RS 12n
112 Large kmem_alloc() allocations will fail if they exceed KMALLOC_MAX_SIZE.
113 Allocations which are marginally smaller than this limit may succeed but
114 should still be avoided due to the expense of locating a contiguous range
115 of free pages. Therefore, a maximum kmem size with reasonable safely
116 margin of 4x is set. Kmem_alloc() allocations larger than this maximum
117 will quickly fail. Vmem_alloc() allocations less than or equal to this
118 value will use kmalloc(), but shift to vmalloc() when exceeding this value.
119 .sp
120 Default value: \fBKMALLOC_MAX_SIZE/4\fR.
121 .RE
122
123 .sp
124 .ne 2
125 .na
126 \fBspl_hostid\fR (ulong)
127 .ad
128 .RS 12n
129 The system hostid.
130 .sp
131 Default value: \fB0xFFFFFFFF\fR (an invalid hostid!)
132 .RE
133
134 .sp
135 .ne 2
136 .na
137 \fBspl_hostid_path\fR (charp)
138 .ad
139 .RS 12n
140 The system hostid file
141 .sp
142 Default value: \fB/etc/hostid\fR.
143 .RE
144
145 .sp
146 .ne 2
147 .na
148 \fBspl_taskq_thread_bind\fR (int)
149 .ad
150 .RS 12n
151 Bind taskq thread to CPU
152 .sp
153 Default value: \fB0\fR.
154 .RE