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>
102 F: lustre/scripts/dkms.mkconf
110 Lustre Client IO stack - CLIO
111 R: Bobijam Xu <bobijam@whamcloud.com>
112 R: Patrick Farrell <farr0186@gmail.com>
114 F: Documentation/clio.txt
115 F: lustre/include/cl_object.h
116 F: lustre/include/lustre_osc.h
117 F: lustre/llite/glimpse.c
118 F: lustre/llite/llite_mmap.c
119 F: lustre/llite/lcommon*.c
120 F: lustre/llite/range_lock.[ch]
121 F: lustre/llite/rw*.c
122 F: lustre/llite/vvp*.[ch]
123 F: lustre/obdclass/cl_*.c
126 Lustre Client MD stack
127 R: Lai Siyao <lai.siyao@whamcloud.com>
129 F: lustre/include/lustre_mdc.h
132 Lustre client side encryption
133 M: Sebastien Buisson <sbuisson@whamcloud.com>
135 F: Documentation/client_side_encryption/*.txt
136 F: lustre/llite/crypto*.[ch]
137 F: libcfs/libcfs/crypto/*.[ch]
138 F: libcfs/include/libcfs/crypto/*.h
139 F: libcfs/include/uapi/linux/llcrypt.h
140 F: lustre/include/lustre_crypto.h
143 K: HAVE_LUSTRE_CRYPTO
145 Lustre Client VFS Interface
146 R: Oleg Drokin <green@whamcloud.com>
147 M: Lai Siyao <lai.siyao@whamcloud.com>
148 R: Vladimir Saveliev <vlaidimir.saveliev@hpe.com>
150 F: lustre/llite/dcache.c
151 F: lustre/llite/dir.c
152 F: lustre/llite/file.c
153 F: lustre/llite/llite_nfs.c
154 F: lustre/llite/namei.c
155 F: lustre/llite/statahead.c
156 F: lustre/llite/symlink.c
157 F: lustre/llite/xattr*.c
159 Lustre Configuration Management
160 M: James Simmons <jsimmons@infradead.org>
164 F: lustre/utils/llapi_param.c
166 Lustre Data Checksums
167 R: Li Xi <lixi@whamcloud.com>
168 M: Andreas Dilger <adilger@whamcloud.com>
170 F: lustre/include/uapi/linux/lustre/lustre_idl.h
171 F: lustre/include/uapi/linux/lustre/lustre_user.h
172 F: lustre/ptlrpc/pack_generic.c
173 F: lustre/ptlrpc/layout.c
174 F: lustre/utils/wire*.c
175 F: lustre/ptlrpc/wire*.c
176 K: \b(OBD_CKSUM_|OBD_FL_CKSUM|OBD_CONNECT_CKSUM)
178 Lustre Data-on-MDT - DoM
179 R: Mikhail Pershin <mpershin@whamcloud.com>
181 F: lustre/tests/sanity-dom.sh
187 Lustre Distributed Lock Manager - LDLM
188 R: Oleg Drokin <green@whamcloud.com>
189 M: Patrick Farrell <farr0186@gmail.com>
191 F: lustre/include/lustre_dlm.h
192 F: lustre/include/lustre_dlm_flags.h
194 F: lustre/llite/glimpse.c
195 F: lustre/mdc/mdc_locks.c
196 F: lustre/mdt/mdt_lvb.c
197 F: lustre/mdt/mdt_open.c
198 F: lustre/ofd/ofd_dlm.c
199 F: lustre/osc/osc_lock.c
201 Lustre Distributed Namespace - DNE
202 R: Lai Siyao <lai.siyao@whamcloud.com>
204 F: lustre/doc/lfs-getdirstripe.1
205 F: lustre/doc/lfs-mkdir.1
206 F: lustre/doc/lfs-setdirstripe.1
207 F: lustre/include/lustre_lmv.h
211 Lustre File Identifiers - FID
214 F: lustre/include/lustre_fid.h
215 F: lustre/include/lustre_fld.h
216 F: lustre/include/uapi/linux/lustre/lustre_fid.h
221 R: Li Xi <lixi@ddn.com>
222 F: lustre/doc/lfs-heat.1
223 F: lustre/doc/llapi_heat*.3
224 F: lustre/utils/liblustreapi_heat.c
225 K: (obd_heat|lu_heat)
229 R: Bobi Jam <bobijam@whamcloud.com>
230 M: Jian Yu <yujian@whamcloud.com>
232 F: lustre/doc/lfs-getstripe.1
233 F: lustre/doc/lfs-setstripe.1
234 F: lustre/doc/lfs-mirror-*.1
235 F: lustre/doc/lfs_migrate.1
236 F: lustre/doc/llapi_file_*.3
237 F: lustre/doc/llapi_layout*.3
239 F: lustre/utils/liblustreapi_layout.c
241 Lustre File System Check - LFSCK
242 R: Hongchao Zhang <hongchao@whamcloud.com>
244 F: lustre/doc/lctl-lfsck*.8
245 F: lustre/include/lustre_lfsck.h
246 F: lustre/include/lustre/lustre_lfsck_user.h
248 F: lustre/osd-ldiskfs/osd_scrub.[ch]
249 F: lustre/osd-zfs/osd_scrub.c
250 F: lustre/tests/sanity-lfsck.sh
251 F: lustre/tests/sanity-scrub.sh
254 R: Patrick Farrell <farr0186@gmail.com>
255 R: Vladimir Saveliev <vlaidimir.saveliev@hpe.com>
257 F: lustre/ofd/ofd_dev.c
258 F: lustre/ofd/ofd_io.c
259 F: lustre/ofd/ofd_obd.c
260 F: lustre/osc/osc_cache.c
261 F: lustre/osc/osc_request.c
262 F: lustre/target/tgt_grant.c
265 M: Sebastien Buisson <sbuisson@whamcloud.com>
267 F: lustre/conf/lgssc.conf
268 F: lustre/conf/lsvcgss
269 F: lustre/doc/lgss_sk.8
270 F: lustre/doc/lfs-flushctx.1
271 F: lustre/llite/xattr_security.c
273 F: lustre/ptlrpc/sec*.c
274 F: lustre/scripts/lsvgss
275 F: lustre/tests/sanity-sec.sh
277 F: lustre/include/uapi/linux/lustre/lgss.h
279 Lustre GSSAPI - Kerberos
280 M: Sebastien Buisson <sbuisson@whamcloud.com>
282 F: lustre/ptlrpc/gss/gss_krb5*.[ch]
284 Lustre GSSAPI - Shared Secret Key
285 M: Sebastien Buisson <sbuisson@whamcloud.com>
287 F: lustre/conf/lgssc.conf
288 F: lustre/conf/lsvcgss
289 F: lustre/doc/lgss_sk.8
290 F: lustre/ptlrpc/gss/gss_sk_mech.c
293 Lustre High Availability
294 R: Nathaniel Clark <nclark@whamcloud.com>
296 F: contrib/scripts/pacemaker/
297 F: lustre/conf/Lustre/
301 F: lustre/doc/lfs-hsm.1
302 F: lustre/doc/llapi_hsm*.3
303 F: lustre/include/lustre_kernelcomm.h
304 F: lustre/include/uapi/linux/lustre/lustre_kernelcomm.h
305 F: lustre/obdclass/kernelcomm.c
306 F: lustre/mdt/mdt_coordinator.c
307 F: lustre/mdt/mdt_hsm*.c
308 F: lustre/tests/llapi_hsm_test.c
309 F: lustre/tests/sanity-hsm.sh
310 F: lustre/utils/liblustreapi_hsm.c
311 F: lustre/utils/liblustreapi_kernelconn.c
313 Lustre HSM POSIX Copytool
314 M: Qian Yingjin <qian@ddn.com>
316 F: lustre/utils/lhsmtool_posix.c
318 Lustre Kernel Compatibility
319 R: James Simmons <jsimmons@infradead.org>
322 F: lustre/include/lustre_compat.h
323 F: lustre/include/lustre_patchless_compat.h
325 Lustre Kernel Patches
326 R: Yang Sheng <ys@whamcloud.com>
327 R: Shaun Tancheff <shaun.tancheff@hpe.com>
329 F: lustre/kernel_patches/
331 Lustre Kernel Patches for ldiskfs
332 R: Li Dongyang <dongyangli@ddn.com>
333 R: Andrew Perepechko <andrew.perepechko@hpe.com>
334 M: Artem Blagodarenko <artem.blagodarenko@hpe.com>
335 R: Yang Sheng <ys@whamcloud.com>
337 F: ldiskfs/kernel_patches/
340 R: Mikhail Pershin <mpershin@whamcloud.com>
341 R: Alexander Boyko <alexander.boyko@hpe.com>
342 M: Emoly Liu <emoly@whamcloud.com>
344 F: lustre/doc/lctl-llog*.8
345 F: lustre/doc/llog_reader.8
346 F: lustre/include/llog_*.h
347 F: lustre/obdclass/llog*.[ch]
348 F: lustre/ptlrpc/llog*.[ch]
349 F: lustre/utils/llog_reader.c
351 Lustre Metadata Target - MDT
352 R: Lai Siyao <lai.siyao@whamcloud.com>
354 F: lustre/include/lustre_mds.h
358 Lustre Network Request Scheduler - NRS
359 R: Qian Yingjin <qian@whamcloud.com>
360 R: Nikitas Angelinas <nikitas.angelinas@hpe.com>
362 F: lustre/include/lustre_nrs*.c
363 F: lustre/ptlrpc/nrs*.c
366 R: Amir Shehata <ashehata@whamcloud.com>
367 R: Chris Horn <chris.horn@hpe.com>
368 M: Sonia Sharma <sharmaso@whamcloud.com>
370 F: Documentation/dlc.txt
371 F: lustre/conf/ko2iblnd.conf
373 F: lustre/doc/lustre_routes_config.8
374 F: lustre/doc/lustre_routes_conversion.8
376 F: lustre/scripts/ko2iblnd-probe
379 Lustre Networking GNILND
380 R: Chris Horn <chris.horn@hpe.com>
381 R: Chuck Fossen <charles.fossen@hpe.com>
383 F: lnet/klnds/gnilnd/
385 Lustre Networking O2IBLND
386 R: Amir Shehata <ashehata@whamcloud.com>
388 F: lnet/klnds/o2iblnd
390 Lustre Networking TCP Sockets LND
391 R: Amir Shehata <ashehata@whamcloud.com>
393 F: lnet/klnds/socklnd
396 R: Sebastien Buisson <sbuisson@whamcloud.com>
398 F: lustre/include/lustre_nodemap.h
399 F: lustre/include/lustre_idmap.h
400 F: lustre/ptlrpc/nodemap*.[ch]
401 F: lustre/doc/lctl-nodemap*.8
403 Lustre Object Storage Target - OST
404 R: Alex Zhuravlev <bzzz@whamcloud.com>
410 R: Alex Zhuravlev <bzzz@whamcloud.com>
412 F: include/lustre/dt_object.h
413 F: Documentation/osd-api.txt
416 R: Alex Zhuravlev <bzzz@whamcloud.com>
417 M: Artem Blagodarenko <artem.blagodarenko@hpe.com>
418 R: Andrew Perepechko <andrew.perepechko@hpe.com>
420 F: lustre/osd-ldiskfs/
421 F: Documentation/osd-api.txt
423 Lustre OSD Proxy - OSP
424 R: Alex Zhuravlev <bzzz@whamcloud.com>
425 R: Sergey Cheremencev <sergey.cheremencev@hpe.com>
428 F: Documentation/osd-api.txt
431 R: Alex Zhuravlev <bzzz@whamcloud.com>
432 R: Tony Hutter <hutter2@llnl.gov>
433 R: Olaf Faaland <faaland1@llnl.gov>
437 Lustre Patch Commit Hooks
438 R: Andreas Dilger <adilger@whamcloud.com>
440 F: contrib/git-hooks/
441 F: contrib/scripts/checkpatch.pl
442 F: contrib/scripts/const_structs.checkpatch
443 F: contrib/scripts/get_maintainer.pl
444 F: contrib/scripts/spelling.txt
445 F: contrib/scripts/updatecw.sh
447 Lustre Persistent Client Cache - PCC
448 R: Qian Yingjin <qian@ddn.com>
450 F: lustre/doc/lctl-pcc*.1
451 F: lustre/doc/lfs-pcc*.1
452 F: lustre/doc/llapi_pcc*.3
453 F: lustre/llite/pcc.[ch]
454 F: lustre/tests/sanity-pcc.sh
455 F: lustre/utils/liblustreapi_pcc.c
457 Lustre /proc and /sys
458 R: James Simmons <jsimmons@infradead.org>
460 F: lustre/*/*lproc*.[ch]
461 F: lustre/obdclass/obdsysfs.c
463 Lustre Protocol Compatibility
464 R: Andreas Dilger <adilger@whamcloud.com>
466 F: lustre/include/uapi/linux/lustre/lustre_idl.h
467 F: lustre/include/uapi/linux/lustre/lustre_user.h
468 F: lustre/ptlrpc/pack_generic.c
469 F: lustre/ptlrpc/layout.c
470 F: lustre/utils/wire*.[ch]
471 F: lustre/ptlrpc/wire*.[ch]
475 R: Hongchao Zhang <hongchao@whamcloud.com>
476 R: Sergey Cheremencev <sergey.cheremencev@hpe.com>
477 M: Wang Shilong <wshilong@whamcloud.com>
479 F: lustre/doc/*quota*.[13]
480 F: lustre/doc/lfs-project.1
481 F: lustre/include/lustre_quota.h
482 F: lustre/osc/osc_quota.c
483 F: lustre/osd-ldiskfs/osd_quota*.[ch]
484 F: lustre/osd-zfs/osd_quota*.[ch]
486 F: lustre/tests/sanity-quota.sh
490 R: Mikhail Pershin <mpershin@whamcloud.com>
496 F: lustre/doc/lctl-barrier.8
497 F: lustre/doc/lctl-snapshot*.8
498 F: lustre/doc/lctl-lcfg.8
499 F: lustre/mgs/mgs_barrier.c
500 F: lustre/tests/sanity-lsnapshot.sh
501 F: lustre/utils/lsnapshot.c
504 R: James Nunez <jnunez@whamcloud.com>
505 M: Elena Gryaznova <elena.gryaznova@hpe.com>
506 M: Sarah Liu <sarah@whamcloud.com>
510 Lustre User Documentation
511 R: Andreas Dilger <adilger@whamcloud.com>
513 F: lustre/doc/*.[1-9]
515 Lustre User Library Interface
516 R: Andreas Dilger <adilger@whamcloud.com>
518 F: lustre/doc/llapi_*.3
519 F: lustre/doc/lustreapi.7
520 F: lustre/include/lustre/lustreapi.h
521 F: lustre/include/uapi/linux/lustre/lustre_user.h
522 F: lustre/utils/liblustreapi*.c
523 F: lustre/utils/lustreapi_internal.h
526 R: Andreas Dilger <adilger@whamcloud.com>
527 R: Olaf Faaland <faaland1@llnl.gov>
530 F: lustre/doc/lctl*.8
531 F: lustre/doc/mkfs.lustre.8
532 F: lustre/doc/mount.lustre.8
533 F: lustre/doc/tunefs.lustre.8
534 F: lustre/scripts/lfs_migrate
535 F: lustre/scripts/lustre_rmmod