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
278 Lustre GSSAPI - Kerberos
279 M: Sebastien Buisson <sbuisson@whamcloud.com>
281 F: lustre/ptlrpc/gss/gss_krb5*.[ch]
283 Lustre GSSAPI - Shared Secret Key
284 M: Sebastien Buisson <sbuisson@whamcloud.com>
286 F: lustre/conf/lgssc.conf
287 F: lustre/conf/lsvcgss
288 F: lustre/doc/lgss_sk.8
289 F: lustre/ptlrpc/gss/gss_sk_mech.c
292 Lustre High Availability
293 R: Nathaniel Clark <nclark@whamcloud.com>
295 F: contrib/scripts/pacemaker/
296 F: lustre/conf/Lustre/
300 F: lustre/doc/lfs-hsm.1
301 F: lustre/doc/llapi_hsm*.3
302 F: lustre/include/lustre_kernelcomm.h
303 F: lustre/include/uapi/linux/lustre/lustre_kernelcomm.h
304 F: lustre/obdclass/kernelcomm.c
305 F: lustre/mdt/mdt_coordinator.c
306 F: lustre/mdt/mdt_hsm*.c
307 F: lustre/tests/llapi_hsm_test.c
308 F: lustre/tests/sanity-hsm.sh
309 F: lustre/utils/liblustreapi_hsm.c
310 F: lustre/utils/liblustreapi_kernelconn.c
312 Lustre HSM POSIX Copytool
313 M: Qian Yingjin <qian@ddn.com>
315 F: lustre/utils/lhsmtool_posix.c
317 Lustre Kernel Compatibility
318 R: James Simmons <jsimmons@infradead.org>
321 F: lustre/include/lustre_compat.h
322 F: lustre/include/lustre_patchless_compat.h
324 Lustre Kernel Patches
325 R: Yang Sheng <ys@whamcloud.com>
326 R: Shaun Tancheff <shaun.tancheff@hpe.com>
328 F: lustre/kernel_patches/
330 Lustre Kernel Patches for ldiskfs
331 R: Li Dongyang <dongyangli@ddn.com>
332 R: Andrew Perepechko <andrew.perepechko@hpe.com>
333 M: Artem Blagodarenko <artem.blagodarenko@hpe.com>
334 R: Yang Sheng <ys@whamcloud.com>
336 F: ldiskfs/kernel_patches/
339 R: Mikhail Pershin <mpershin@whamcloud.com>
340 R: Alexander Boyko <alexander.boyko@hpe.com>
341 M: Emoly Liu <emoly@whamcloud.com>
343 F: lustre/doc/lctl-llog*.8
344 F: lustre/doc/llog_reader.8
345 F: lustre/include/llog_*.h
346 F: lustre/obdclass/llog*.[ch]
347 F: lustre/ptlrpc/llog*.[ch]
348 F: lustre/utils/llog_reader.c
350 Lustre Metadata Target - MDT
351 R: Lai Siyao <lai.siyao@whamcloud.com>
353 F: lustre/include/lustre_mds.h
357 Lustre Network Request Scheduler - NRS
358 R: Qian Yingjin <qian@whamcloud.com>
359 R: Nikitas Angelinas <nikitas.angelinas@hpe.com>
361 F: lustre/include/lustre_nrs*.c
362 F: lustre/ptlrpc/nrs*.c
365 R: Amir Shehata <ashehata@whamcloud.com>
366 R: Chris Horn <chris.horn@hpe.com>
367 M: Sonia Sharma <sharmaso@whamcloud.com>
369 F: Documentation/dlc.txt
370 F: lustre/conf/ko2iblnd.conf
372 F: lustre/doc/lustre_routes_config.8
373 F: lustre/doc/lustre_routes_conversion.8
375 F: lustre/scripts/ko2iblnd-probe
378 Lustre Networking GNILND
379 R: Chris Horn <chris.horn@hpe.com>
380 R: Chuck Fossen <charles.fossen@hpe.com>
382 F: lnet/klnds/gnilnd/
384 Lustre Networking O2IBLND
385 R: Amir Shehata <ashehata@whamcloud.com>
387 F: lnet/klnds/o2iblnd
389 Lustre Networking TCP Sockets LND
390 R: Amir Shehata <ashehata@whamcloud.com>
392 F: lnet/klnds/socklnd
395 R: Sebastien Buisson <sbuisson@whamcloud.com>
397 F: lustre/include/lustre_nodemap.h
398 F: lustre/include/lustre_idmap.h
399 F: lustre/ptlrpc/nodemap*.[ch]
400 F: lustre/doc/lctl-nodemap*.8
402 Lustre Object Storage Target - OST
403 R: Alex Zhuravlev <bzzz@whamcloud.com>
409 R: Alex Zhuravlev <bzzz@whamcloud.com>
411 F: include/lustre/dt_object.h
412 F: Documentation/osd-api.txt
415 R: Alex Zhuravlev <bzzz@whamcloud.com>
416 M: Artem Blagodarenko <artem.blagodarenko@hpe.com>
417 R: Andrew Perepechko <andrew.perepechko@hpe.com>
419 F: lustre/osd-ldiskfs/
420 F: Documentation/osd-api.txt
422 Lustre OSD Proxy - OSP
423 R: Alex Zhuravlev <bzzz@whamcloud.com>
424 R: Sergey Cheremencev <sergey.cheremencev@hpe.com>
427 F: Documentation/osd-api.txt
430 R: Alex Zhuravlev <bzzz@whamcloud.com>
431 R: Tony Hutter <hutter2@llnl.gov>
432 R: Olaf Faaland <faaland1@llnl.gov>
436 Lustre Patch Commit Hooks
437 R: Andreas Dilger <adilger@whamcloud.com>
439 F: contrib/git-hooks/
440 F: contrib/scripts/checkpatch.pl
441 F: contrib/scripts/const_structs.checkpatch
442 F: contrib/scripts/get_maintainer.pl
443 F: contrib/scripts/spelling.txt
444 F: contrib/scripts/updatecw.sh
446 Lustre Persistent Client Cache - PCC
447 R: Qian Yingjin <qian@ddn.com>
449 F: lustre/doc/lctl-pcc*.1
450 F: lustre/doc/lfs-pcc*.1
451 F: lustre/doc/llapi_pcc*.3
452 F: lustre/llite/pcc.[ch]
453 F: lustre/tests/sanity-pcc.sh
454 F: lustre/utils/liblustreapi_pcc.c
456 Lustre /proc and /sys
457 R: James Simmons <jsimmons@infradead.org>
459 F: lustre/*/*lproc*.[ch]
460 F: lustre/obdclass/obdsysfs.c
462 Lustre Protocol Compatibility
463 R: Andreas Dilger <adilger@whamcloud.com>
465 F: lustre/include/uapi/linux/lustre/lustre_idl.h
466 F: lustre/include/uapi/linux/lustre/lustre_user.h
467 F: lustre/ptlrpc/pack_generic.c
468 F: lustre/ptlrpc/layout.c
469 F: lustre/utils/wire*.[ch]
470 F: lustre/ptlrpc/wire*.[ch]
474 R: Hongchao Zhang <hongchao@whamcloud.com>
475 R: Sergey Cheremencev <sergey.cheremencev@hpe.com>
476 M: Wang Shilong <wshilong@whamcloud.com>
478 F: lustre/doc/*quota*.[13]
479 F: lustre/doc/lfs-project.1
480 F: lustre/include/lustre_quota.h
481 F: lustre/osc/osc_quota.c
482 F: lustre/osd-ldiskfs/osd_quota*.[ch]
483 F: lustre/osd-zfs/osd_quota*.[ch]
485 F: lustre/tests/sanity-quota.sh
489 R: Mikhail Pershin <mpershin@whamcloud.com>
495 F: lustre/doc/lctl-barrier.8
496 F: lustre/doc/lctl-snapshot*.8
497 F: lustre/doc/lctl-lcfg.8
498 F: lustre/mgs/mgs_barrier.c
499 F: lustre/tests/sanity-lsnapshot.sh
500 F: lustre/utils/lsnapshot.c
503 R: James Nunez <jnunez@whamcloud.com>
504 M: Elena Gryaznova <elena.gryaznova@hpe.com>
505 M: Sarah Liu <sarah@whamcloud.com>
509 Lustre User Documentation
510 R: Andreas Dilger <adilger@whamcloud.com>
512 F: lustre/doc/*.[1-9]
514 Lustre User Library Interface
515 R: Andreas Dilger <adilger@whamcloud.com>
517 F: lustre/doc/llapi_*.3
518 F: lustre/doc/lustreapi.7
519 F: lustre/include/lustre/lustreapi.h
520 F: lustre/include/uapi/linux/lustre/lustre_user.h
521 F: lustre/utils/liblustreapi*.c
522 F: lustre/utils/lustreapi_internal.h
525 R: Andreas Dilger <adilger@whamcloud.com>
526 R: Olaf Faaland <faaland1@llnl.gov>
529 F: lustre/doc/lctl*.8
530 F: lustre/doc/mkfs.lustre.8
531 F: lustre/doc/mount.lustre.8
532 F: lustre/doc/tunefs.lustre.8
533 F: lustre/scripts/lfs_migrate
534 F: lustre/scripts/lustre_rmmod