2 List of maintainers and how to submit Lustre changes
4 Please try to follow the guidelines below. This will make things
5 easier on the maintainers. Not all of these guidelines matter for every
6 trivial patch so apply some common sense.
8 1. Always _test_ your changes, however small.
10 2. PLEASE remember that submissions must be made under the terms
11 of the Linux Foundation certificate of contribution and should
12 include a Signed-off-by: line. The current version of this
13 "Developer's Certificate of Origin" (DCO) is listed in the file
14 Documentation/process/submitting-patches.rst.
16 3. Make sure your changes compile correctly in multiple
17 configurations. In particular check that changes work both as a
18 module and built into the kernel.
20 4. Add reviewers to the patch based on the get_maintainers.pl script.
22 5. PLEASE check your patch with the automated style checker
23 (contrib/scripts/checkpatch.pl) to catch trivial style violations.
25 6. Make sure you have the right to send any changes you make. If you
26 do changes at work you may find your employer owns the patch
31 Descriptions of section entries:
33 M: Mail patches to: FullName <address@domain>
34 R: Designated reviewer: FullName <address@domain>
35 These reviewers should be CCed on patches.
36 W: Web-page with status/info
37 B: URI for where to file bugs. A web-page with detailed bug
38 filing info, a direct bug tracker link, or a mailto: URI.
39 C: URI for chat protocol, server and channel where developers
40 usually hang out, for example irc://server/channel.
41 T: SCM tree type and location.
42 Type is one of: git, hg, quilt, stgit, topgit
43 S: Status, one of the following:
44 Supported: Someone is actually paid to look after this.
45 Maintained: Someone actually looks after it.
46 Odd Fixes: It has a maintainer but they don't have time to do
47 much other than throw the odd patch in. See below.
48 Orphan: No current maintainer [but maybe you could take the
49 role as you write your new code].
50 Obsolete: Old code. Something tagged obsolete generally means
51 it has been replaced by a better system and you
53 F: Files and directories with wildcard patterns.
54 A trailing slash includes all files and subdirectory files.
55 F: drivers/net/ all files in and below drivers/net
56 F: drivers/net/* all files in drivers/net, but not below
57 F: */net/* all files in "any top level directory"/net
58 One pattern per line. Multiple F: lines acceptable.
59 N: Files and directories with regex patterns.
60 N: [^a-z]tegra all files whose path contains the word tegra
61 One pattern per line. Multiple N: lines acceptable.
62 scripts/get_maintainer.pl has different behavior for files that
63 match F: pattern and matches of N: patterns. By default,
64 get_maintainer will not look at git log history when an F: pattern
65 match occurs. When an N: match occurs, git log history is used
66 to also notify the people that have git commit signatures.
67 X: Files and directories that are NOT maintained, same rules as F:
68 Files exclusions are tested before file matches.
69 Can be useful for excluding a specific subdirectory, for instance:
72 matches all files in and below net excluding net/ipv6/
73 K: Keyword perl extended regex pattern to match content in a
74 patch or file. For instance:
76 matches patches or files that contain "of_get_profile"
77 K: \b(printk|pr_(info|err))\b
78 matches patches or files that contain one or more of the words
79 printk, pr_info or pr_err
80 One regex pattern per line. Multiple K: lines acceptable.
82 This list is meant to remain in alphabetical order. Please add yourselves
83 to it in alphabetical order. Please include "Lustre" in the subsystem
84 description, even though it is currently redundant, so that it is easier
85 to keep this in sync once the client is merged upstream.
87 Maintainers List (try to look for most precise areas first)
89 -----------------------------------
92 R: Minh Diep <mdiep@whamcloud.com>
99 F: lustre/scripts/dkms.mkconf
103 Lustre Client IO stack
104 R: Bobijam Xu <bobijam@whamcloud.com>
106 F: Documentation/clio.txt
107 F: lustre/include/cl_object.h
108 F: lustre/include/lustre_osc.h
109 F: lustre/llite/glimpse.c
110 F: lustre/llite/llite_mmap.c
111 F: lustre/llite/lcommon*.c
112 F: lustre/llite/range_lock.[ch]
113 F: lustre/llite/rw*.c
114 F: lustre/llite/vvp*.[ch]
121 Lustre Client MD stack
122 R: Lai Siyao <lai.siyao@whamcloud.com>
124 F: lustre/include/lustre_mdc.h
125 F: lustre/include/lmv.h
126 F: lustre/llite/dcache.c
127 F: lustre/llite/dir.c
128 F: lustre/llite/namei.c
129 F: lustre/llite/statahead*.c
132 Lustre Configuration Management
137 Lustre Data Checksums
138 R: Li Xi <lixi@whamcloud.com>
139 M: Andreas Dilger <adilger@whamcloud.com>
141 F: lustre/include/uapi/linux/lustre/lustre_idl.h
142 F: lustre/include/uapi/linux/lustre/lustre_user.h
143 F: lustre/ptlrpc/pack_generic.c
144 F: lustre/ptlrpc/layout.c
145 F: lustre/utils/wire*.c
146 F: lustre/ptlrpc/wire*.c
147 K: \b(OBD_CKSUM_|OBD_FL_CKSUM|OBD_CONNECT_CKSUM)
149 Lustre Data-on-MDT - DoM
150 R: Mikhail Pershin <mpershin@whamcloud.com>
152 F: lustre/tests/sanity-dom.sh
158 Lustre Distributed Lock Manager - LDLM
159 R: Oleg Drokin <green@whamcloud.com>
161 F: lustre/include/lustre_dlm.h
162 F: lustre/include/lustre_dlm_flags.h
164 F: lustre/mdc/mdc_locks.c
165 F: lustre/mdt/mdt_lvb.c
166 F: lustre/mdt/mdt_open.c
167 F: lustre/ofd/ofd_dlm.c
168 F: lustre/osc/osc_lock.c
170 Lustre Distributed Namespace - DNE
171 R: Lai Siyao <lai.siyao@whamcloud.com>
173 F: lustre/doc/lfs-getdirstripe.1
174 F: lustre/doc/lfs-mkdir.1
175 F: lustre/doc/lfs-setdirstripe.1
176 F: lustre/include/lustre_lmv.h
180 Lustre File Identifiers - FID
183 F: lustre/include/lustre_fid.h
184 F: lustre/include/lustre_fld.h
185 F: lustre/include/uapi/linux/lustre/lustre_fid.h
190 R: Bobi Jam <bobijam@whamcloud.com>
191 M: Jian Yu <yujian@whamcloud.com>
193 F: lustre/doc/lfs-getstripe.1
194 F: lustre/doc/lfs-setstripe.1
195 F: lustre/doc/lfs-mirror-*.1
196 F: lustre/doc/lfs_migrate.1
197 F: lustre/doc/llapi_file_*.3
198 F: lustre/doc/llapi_layout*.3
200 F: lustre/utils/liblustreapi_layout.c
202 Lustre File System Check - LFSCK
203 R: Hongchao Zhang <hongchao@whamcloud.com>
205 F: lustre/doc/lctl-lfsck*.8
206 F: lustre/include/lustre_lfsck.h
207 F: lustre/include/lustre/lustre_lfsck_user.h
209 F: lustre/osd-ldiskfs/osd_scrub.[ch]
210 F: lustre/osd-zfs/osd_scrub.c
211 F: lustre/tests/sanity-lfsck.sh
212 F: lustre/tests/sanity-scrub.sh
215 M: Sebastien Buisson <sbuisson@whamcloud.com>
217 F: lustre/conf/lgssc.conf
218 F: lustre/conf/lsvcgss
219 F: lustre/doc/lgss_sk.8
222 F: lustre/ptlrpc/sec*.c
223 F: lustre/scripts/lsvgss
224 F: lustre/tests/sanity-sec.sh
226 Lustre GSSAPI - Kerberos
227 M: Sebastien Buisson <sbuisson@whamcloud.com>
229 F: lustre/ptlrpc/gss/gss_krb5*.[ch]
231 Lustre GSSAPI - Shared Secret Key
232 M: Sebastien Buisson <sbuisson@whamcloud.com>
234 F: lustre/conf/lgssc.conf
235 F: lustre/conf/lsvcgss
236 F: lustre/doc/lgss_sk.8
238 F: lustre/ptlrpc/gss/gss_sk_mech.c
240 Lustre High Availability
241 R: Nathaniel Clark <nclark@whamcloud.com>
243 F: contrib/scripts/pacemaker/
244 F: lustre/conf/Lustre/
247 R: "John L. Hammond" <jhammond@whamcloud.com>
249 F: lustre/doc/lfs-hsm.1
250 F: lustre/doc/llapi_hsm*.3
251 F: lustre/include/lustre_kernelcomm.h
252 F: lustre/include/uapi/linux/lustre/lustre_kernelcomm.h
253 F: lustre/obdclass/kernelcomm.c
254 F: lustre/mdt/mdt_coordinator.c
255 F: lustre/mdt/mdt_hsm*.c
256 F: lustre/tests/llapi_hsm_test.c
257 F: lustre/tests/sanity-hsm.sh
258 F: lustre/utils/liblustreapi_hsm.c
259 F: lustre/utils/liblustreapi_kernelconn.c
261 Lustre HSM POSIX Copytool
262 R: "John L. Hammond" <jhammond@whamcloud.com>
264 F: lustre/utils/lhsmtool_posix.c
266 Lustre Kernel Compatibility
267 R: James Simmons <uja.ornl@yahoo.com>
270 F: lustre/include/lustre_compat.h
271 F: lustre/include/lustre_patchless_compat.h
273 Lustre Kernel Patches
274 R: Yang Sheng <ys@whamcloud.com>
276 F: lustre/kernel_patches/
278 Lustre ldiskfs Kernel Patches
279 R: Yang Sheng <ys@whamcloud.com>
281 F: ldiskfs/kernel_patches/
284 R: "John L. Hammond" <jhammond@whamcloud.com>
285 M: Emoly Liu <emoly@whamcloud.com>
287 F: lustre/doc/lctl-llog*.8
288 F: lustre/doc/llog_reader.8
289 F: lustre/include/llog_*.h
290 F: lustre/obdclass/llog*.[ch]
291 F: lustre/ptlrpc/llog*.[ch]
292 F: lustre/utils/llog_reader.c
294 Lustre Metadata Target - MDT
296 F: lustre/include/lustre_mds.h
300 Lustre Network Request Scheduler - NRS
301 R: Qian Yingjin <qian@whamcloud.com>
303 F: lustre/include/lustre_nrs*.c
304 F: lustre/ptlrpc/nrs*.c
307 R: Amir Shehata <ashehata@whamcloud.com>
308 M: Sonia Sharma <sharmaso@whamcloud.com>
310 F: Documentation/dlc.txt
311 F: lustre/conf/ko2iblnd.conf
313 F: lustre/doc/lustre_routes_config.8
314 F: lustre/doc/lustre_routes_conversion.8
316 F: lustre/scripts/ko2iblnd-probe
319 Lustre Networking GNILND
320 R: Chris Horn <hornc@cray.com>
321 R: Chuck Fossen <chuckf@cray.com>
323 F: lnet/klnds/gnilnd/
325 Lustre Networking O2IBLND
326 R: Amir Shehata <ashehata@whamcloud.com>
328 F: lnet/klnds/o2iblnd
330 Lustre Networking TCP Sockets LND
331 R: Amir Shehata <ashehata@whamcloud.com>
333 F: lnet/klnds/socklnd
336 R: Sebastien Buisson <sbuisson@whamcloud.com>
338 F: lustre/include/lustre_nodemap.h
339 F: lustre/include/lustre_idmap.h
340 F: lustre/ptlrpc/nodemap*.[ch]
341 F: lustre/doc/lctl-nodemap*.8
343 Lustre Object Storage Target - OST
344 R: Alex Zhuravlev <bzzz@whamcloud.com>
350 R: Alex Zhuravlev <bzzz@whamcloud.com>
352 F: include/lustre/dt_object.h
353 F: Documentation/osd-api.txt
356 R: Alex Zhuravlev <bzzz@whamcloud.com>
358 F: lustre/osd-ldiskfs/
359 F: Documentation/osd-api.txt
361 Lustre OSD Proxy - OSP
362 R: Alex Zhuravlev <bzzz@whamcloud.com>
365 F: Documentation/osd-api.txt
368 R: Alex Zhuravlev <bzzz@whamcloud.com>
369 R: Tony Hutter <hutter2@llnl.gov>
370 R: Olaf Faaland <faaland1@llnl.gov>
375 R: Andreas Dilger <adilger@whamcloud.com>
377 F: contrib/git-hooks/
378 F: contrib/scripts/checkpatch.pl
379 F: contrib/scripts/const_structs.checkpatch
380 F: contrib/scripts/get_maintainer.pl
381 F: contrib/scripts/spelling.txt
382 F: contrib/scripts/updatecw.sh
384 Lustre /proc and /sys
385 R: James Simmons <uja.ornl@yahoo.com>
387 F: lustre/*/*lproc*.[ch]
389 Lustre Protocol Compatibility
390 R: Andreas Dilger <adilger@whamcloud.com>
392 F: lustre/include/uapi/linux/lustre/lustre_idl.h
393 F: lustre/include/uapi/linux/lustre/lustre_user.h
394 F: lustre/ptlrpc/pack_generic.c
395 F: lustre/ptlrpc/layout.c
396 F: lustre/utils/wire*.[ch]
397 F: lustre/ptlrpc/wire*.[ch]
401 R: Hongchao Zhang <hongchao@whamcloud.com>
402 M: Wang Shilong <wshilong@whamcloud.com>
404 F: lustre/doc/*quota*.[13]
405 F: lustre/doc/lfs-project.1
406 F: lustre/include/lustre_quota.h
407 F: lustre/osc/osc_quota.c
408 F: lustre/osd-ldiskfs/osd_quota*.[ch]
409 F: lustre/osd-zfs/osd_quota*.[ch]
411 F: lustre/tests/sanity-quota.sh
412 F: lustre/doc/*quota*.[13]
416 R: Mikhail Pershin <mpershin@whamcloud.com>
422 F: lustre/doc/lctl-barrier.8
423 F: lustre/doc/lctl-snapshot*.8
424 F: lustre/doc/lctl-lcfg.8
425 F: lustre/mgs/mgs_barrier.c
426 F: lustre/tests/sanity-lsnapshot.sh
427 F: lustre/utils/lsnapshot.c
430 R: James Nunez <jnunez@whamcloud.com>
431 M: Sarah Liu <sarah@whamcloud.com>
435 Lustre User Documentation
436 R: Andreas Dilger <adilger@whamcloud.com>
438 F: lustre/doc/*.[1-9]
440 Lustre User Library Interface
441 R: Emoly Liu <emoly@whamcloud.com>
442 M: Andreas Dilger <adilger@whamcloud.com>
444 F: lustre/doc/llapi_*.3
445 F: lustre/doc/lustreapi.7
446 F: lustre/include/lustre/lustreapi.h
447 F: lustre/include/uapi/linux/lustre/lustre_user.h
448 F: lustre/utils/liblustreapi*.c
449 F: lustre/utils/lustreapi_internal.h
452 R: Andreas Dilger <adilger@whamcloud.com>
453 R: Olaf Faaland <faaland1@llnl.gov>
456 F: lustre/doc/mkfs.lustre.8
457 F: lustre/doc/mount.lustre.8
458 F: lustre/doc/tunefs.lustre.8
459 F: lustre/scripts/lfs_migrate
460 F: lustre/scripts/lustre_rmmod