@@ -163,7 +163,7 @@ Let's be more positive, you manage to attract the attention of some developer
163163and he says, he does not like the approach of the patch(es). Better than
164164nothing, isn't it? Depending on the feedback, try to understand the objections
165165and try to find a solution or insist on your approach but possibly back it by
166- good arguments (performance gain, expected usecase ) or a better explanation
166+ good arguments (performance gain, expected use case ) or a better explanation
167167*why * the change is needed.
168168
169169Repeated submissions
@@ -175,7 +175,7 @@ why they're wrong or not needed. (You can try to pinkie-swear to implement them
175175later, but do not try this too often.)
176176
177177For the next iteration, add a short description of the changes made, under the
178- first **--- ** (tripple dash) marker in the patch. For example (see also Example
178+ first **--- ** (triple dash) marker in the patch. For example (see also Example
1791793):
180180
181181.. code-block ::
@@ -195,7 +195,7 @@ can send an early version, use a *[RFC]* string somewhere in the subject. This
195195means *request for comments *. Be prepared to get comments.
196196
197197Please describe the level of completeness, e.g. what tests it does or does not
198- pass or what type of usecases is not yet implemented. The purpose is to get
198+ pass or what type of use cases is not yet implemented. The purpose is to get
199199feedback from other developers about the direction or implementation approach.
200200This may save you hours of coding.
201201
@@ -222,7 +222,7 @@ moving development base.
222222**Do: ** make sure that each patch compiles and does not deliberately introduce
223223a bug, this is a good practice that makes *bisecting * go smooth
224224
225- **Do: ** send the cover letter (ie . the non-patch mail) with brief description
225+ **Do: ** send the cover letter (i.e . the non-patch mail) with brief description
226226of the series, this is a place where feedback to the whole patchset will be
227227sent rather than comments to the individual patches. To generate the series
228228with cover letter use *git format-patch --cover-letter --thread *.
@@ -233,7 +233,7 @@ Good practices, contribution hints
233233- if you feel that you understand some area of code enough to stick your
234234 *Reviewed-by * to submitted patches, please do. Even for small patches.
235235- don't hesitate to be vocal if you see that a wrong patch has been committed
236- - be patient if your patch is not accepted immediatelly , try to send a gentle
236+ - be patient if your patch is not accepted immediately , try to send a gentle
237237 ping if there's a significant time without any action
238238- if you want to start contributing but are not sure about how to do that,
239239 lurk in the mailingist or on the IRC channel
@@ -337,15 +337,15 @@ should meet/have:
337337- no coding style violations
338338- good quality of implementation, should not exhibit trivial mistakes, lack of
339339 comments
340- - unspecified number of other things that usually get poitned out in review
340+ - unspecified number of other things that usually get pointed out in review
341341 comments
342342
343343 - this knowledge can be demonstrated by doing reviews of other developers'
344344 patches
345345 - doing reviews of other developers' patches is strongly recommended
346346
347347- good changelogs and subject lines
348- - the base point of the git branch is well-defined (ie . a stable release point
348+ - the base point of the git branch is well-defined (i.e . a stable release point
349349 or last development point, that will not get rebased)
350350
351351The third point is vague, mostly refers to preferred coding patterns that we
@@ -375,8 +375,8 @@ Patches for next development cycle:
375375
376376- **base ** -- the last release candidate tag in Linus' tree, be sure
377377 not to be ahead of the integration branches that will become the pull
378- requests for the next dev cycle.
379- - **for-next ** -- patches should be in a good state, ie . don't
378+ requests for the next development cycle.
379+ - **for-next ** -- patches should be in a good state, i.e . don't
380380 complicate testing too much, workarounds or known problems should be
381381 documented (e.g. in the patchset cover letter)
382382- other names, for example a patchset for a given feature as a topic
@@ -413,7 +413,7 @@ Quoting https://spdx.dev/about/:
413413 international open standard for security, license compliance, and
414414 other software supply chain artifacts as ISO/IEC 5962:2021.
415415
416- The initiative started in 2017 ` 1 < https://lwn.net/Articles/739183/ >`__ aims to
416+ The initiative started in 2017 https://lwn.net/Articles/739183/ aims to
417417unify licensing information in all files using **SPDX ** tags, this is driven by
418418the Linux Foundation. Therefore it's not necessary to repeat the license header
419419(GPL) in each file, the licensing rules are documented in
@@ -454,7 +454,7 @@ copyright holders of changes in a given file. The code is usually heavily
454454changed over time in smaller portions, slowly morphing into something that does
455455not resemble the original code anymore though it shares a lot of the core ideas
456456and implemented logic. A copyright notice by a company that does not exist
457- anymore from 10 years ago is a clear example of uselessnes for the developers.
457+ anymore from 10 years ago is a clear example of uselesness for the developers.
458458
459459When code is moved verbatim from a file to another file, in the new file it
460460appears to be contributed by a single author while it is in most cases code
@@ -495,7 +495,7 @@ Major release
495495position of the version, e.g. it's *4.6 *. This usually means distributions
496496start to adopt the sources, the stable kernels are going to be released.
497497
498- *Developers: * expect bugreports based on this version, this usually does not
498+ *Developers: * expect bug reports based on this version, this usually does not
499499have other significance regarding development of new features or bugfixes
500500
501501Merge window
@@ -551,10 +551,18 @@ more release candidates.
551551tested, can be found in the *for-next * branch
552552
553553Sending intrusive changes at this point is not guaranteed to be reviewed or
554- testd in time so it gets queued for the next kernel. This highly depends on the
554+ tested in time so it gets queued for the next kernel. This highly depends on the
555555nature of the changes. Patch count should not be an issue if the patches are
556556revieweable or do not do intrusive changes.
557557
558+ Last rcX before major release (rc7 or rc8)
559+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
560+
561+ The releases typically take 3 months, which means that rc7 or rc8 are the
562+ last ones, followed by a release and the merge window opens. Before that the
563+ development is effectively frozen or continues in parallel. Up to date list of
564+ release dates is at https://en.wikipedia.org/wiki/Linux_kernel_version_history .
565+
558566Major release
559567~~~~~~~~~~~~~
560568
@@ -593,40 +601,30 @@ to newcomers.
593601How to get started - development
594602~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
595603
596- - Build and install the latest kernel from Linus's git repo.
597- - Read and understand the user documentation
598- (`Main_Page#Guides_and_usage_information <Main_Page#Guides_and_usage_information >`__).
604+ - Build and install the latest kernel from Linus's git repository.
599605- Create one or several btrfs filesystems with different configurations
600606 and learn how they work in userspace -- what are the features, what
601607 are the problems you see? Actually use at least one of the
602608 filesystems you created for real data in daily use (with backups)
603609- Build the userspace tools from git
604- - Pick up one of the userspace projects from
605- `Project_ideas#Userspace_tools_projects <Project_ideas#Userspace_tools_projects >`__
606- and implement that. If you pick the right one(s), you'll have to
607- learn about some of the internal structures of the FS anyway. Compile
610+ - Project ideas used to be tracked on the wiki
611+ (https://archive.kernel.org/oldwiki/btrfs.wiki.kernel.org/index.php/Project_ideas.html)
612+ but this contains outdated information and will be moved elsewhere eventually.
613+ If you pick the right one(s), you'll have to
614+ learn about some of the internal structures of the filesystem anyway. Compile
608615 and test your patch. If you're adding a new feature, write an
609- automated xfstest for it as well.
616+ automated fstests case for it as well.
610617- Get that patch accepted. This will probably involve a sequence of
611618 revisions to it, multiple versions over a period of several weeks or
612619 more, with a review process. You should also send your test to
613- xfstests and get that accepted.
620+ fstests and get that accepted.
614621- Do the above again, until you get used to the processes involved, and
615622 have demonstrated that you can work well with the other people in the
616623 subsystem, and are generally producing useful and sane code. It's all
617624 about trust -- can you be trusted to mostly do the right thing?
618- - Use the documentation at
619- `Main_Page#Developer_documentation <Main_Page#Developer_documentation >`__,
620- and the output of btrfs-debug-tree to understand the internal
621- structure of the FS
622- - Pick up one of the smaller, more self-contained ideas from the
623- projects page `Project_ideas <Project_ideas >`__ (say,
624- `Project_ideas#Cancellable_operations <Project_ideas#Cancellable_operations >`__
625- or
626- `Project_ideas#Implement_new_FALLOC_FL_.2A_modes <Project_ideas#Implement_new_FALLOC_FL_.2A_modes >`__)
627- and try to implement it. Again: build, write test code, test
628- thoroughly, submit patch for review, modify as suggested by
629- reviewers, and repeat as often as necessary.
625+ - Developer documentation is listed in a section on the main documentation page.
626+ - Output of *btrfs inspect-internal dump-tree * can be helpful to understand
627+ the internal structure of the filesystem.
630628
631629How not to start
632630~~~~~~~~~~~~~~~~
@@ -637,7 +635,7 @@ that. The following text reflects our stance:
637635
638636If you want to contribute and do something useful for others and yourself, just
639637don't keep sending these patches to fix whitespace/style issues reported by
640- checkpatch. Think about it:
638+ checkpatch.pl. Think about it:
641639
642640#. You don't learn anything by doing them. You don't learn nothing about btrfs
643641 internals, filesystems in general, kernel programming in general, general
0 commit comments