Lines Matching full:kernel

3 HOWTO do Linux kernel development
7 instructions on how to become a Linux kernel developer and how to learn
8 to work with the Linux kernel development community. It tries to not
9 contain anything related to the technical aspects of kernel programming,
20 So, you want to learn how to become a Linux kernel developer? Or you
27 The kernel is written mostly in C, with some architecture-dependent
29 kernel development. Assembly (any architecture) is not required unless
38 The kernel is written using GNU C and the GNU toolchain. While it
40 not featured in the standard. The kernel is a freestanding C
44 difficult to understand the assumptions the kernel has on the toolchain
62 The Linux kernel source code is released under the GPL. Please see the file
63 COPYING in the main directory of the source tree. The Linux kernel licensing
67 not ask on the Linux kernel mailing list. The people on the mailing lists are
78 The Linux kernel source tree has a large range of documents that are
79 invaluable for learning how to interact with the kernel community. When
80 new features are added to the kernel, it is recommended that new
82 When a kernel change causes the interface that the kernel exposes to
85 maintainer at alx@kernel.org, and CC the list linux-api@vger.kernel.org.
87 Here is a list of files that are in the kernel source tree that are
91 This file gives a short background on the Linux kernel and describes
92 what is necessary to do to configure and build the kernel. People
93 who are new to the kernel should start here.
97 packages that are necessary to build and run the kernel
101 This describes the Linux kernel coding style, and some of the
124 "Linux kernel patch submission format"
129 not have a stable API within the kernel, including things like:
133 - Mitigating rapid change within the kernel source tree (or
141 If you feel you have found a security problem in the Linux kernel,
142 please follow the steps in this document to help notify the kernel
146 This document describes how Linux kernel maintainers operate and the
148 for anyone new to kernel development (or anyone simply curious about
150 about the unique behavior of kernel maintainers.
152 :ref:`Documentation/process/stable-kernel-rules.rst <stable_kernel_rules>`
153 This file describes the rules on how the stable kernel releases
157 :ref:`Documentation/process/kernel-docs.rst <kernel_docs>`
158 A list of external documentation that pertains to kernel
160 are looking for within the in-kernel documentation.
164 apply it to the different development branches of the kernel.
166 The kernel also has a large number of documents that can be
169 full description of the in-kernel API, and rules on how to handle
177 respectively from the main kernel source directory.
185 Becoming A Kernel Developer
188 If you do not know anything about Linux kernel development, you should
194 of basic kernel development question (make sure to search the archives
198 learning about Linux kernel development.
202 some basic logistical information, like how to compile a kernel and
206 some task to start doing to join into the kernel development community,
207 go to the Linux Kernel Janitor's project:
212 problems that need to be cleaned up and fixed within the Linux kernel
214 will learn the basics of getting your patch into the Linux kernel tree,
218 Before making any actual modifications to the Linux kernel code, it is
225 repository of the kernel code may be found at:
233 Linux kernel development process currently consists of a few different
234 main kernel "branches" and lots of different subsystem-specific kernel
246 https://kernel.org or in the repo. Its development process is as follows:
248 - As soon as a new kernel is released a two week window is open,
252 is using git (the kernel's source management tool, more information
255 - After two weeks a -rc1 kernel is released and the focus is on making the
256 new kernel as rock solid as possible. Most of the patches at this point
267 release a new -rc kernel every week.
268 - Process continues until the kernel is considered "ready", the
271 It is worth mentioning what Andrew Morton wrote on the linux-kernel
272 mailing list about kernel releases:
274 *"Nobody knows when a kernel will be released, because it's
288 kernel and are not interested in helping test development/experimental
291 Stable trees are maintained by the "stable" team <stable@vger.kernel.org>, and
297 The file :ref:`Documentation/process/stable-kernel-rules.rst <stable_kernel_rules>`
298 in the kernel tree documents what kinds of changes are acceptable for
304 The maintainers of the various kernel subsystems --- and also many
305 kernel subsystem developers --- expose their current state of
307 happening in the different areas of the kernel. In areas where
309 onto such a subsystem kernel tree so that conflicts between the
315 of them can be browsed at https://git.kernel.org/.
319 respective section below). For several kernel subsystems, this review
324 https://patchwork.kernel.org/.
334 https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
337 expected to go into the mainline kernel at the next merge period.
344 The file 'Documentation/admin-guide/reporting-issues.rst' in the main kernel
345 source directory describes how to report a possible kernel bug, and details
346 what kind of information is needed by the kernel developers to help track
354 bugs reported by other people. Not only will you help to make the kernel
364 https://bugzilla.kernel.org for bug reports; only a handful of kernel subsystems
366 kernel get filed there.
372 As some of the above documents describe, the majority of the core kernel
373 developers participate on the Linux Kernel Mailing list. Details on how
376 https://subspace.kernel.org/subscribing.html
381 https://lore.kernel.org/linux-kernel/
388 Most of the individual kernel subsystems also have their own separate
393 Many of the lists are hosted on kernel.org. Information on them can be
396 https://subspace.kernel.org
402 https://subspace.kernel.org/etiquette.html
417 Kernel developers don't want to deal with
431 The goal of the kernel community is to provide the best possible kernel
442 Remember, this is part of getting your patch into the kernel. You have
459 the kernel. Or at least be willing to prove your idea is worth it.
470 Differences between the kernel community and corporate structures
473 The kernel community works differently than most traditional corporate
499 Another way the kernel community is different than most traditional
503 The Linux kernel work environment is accepting of women and minorities
507 Most women who have worked in the Linux kernel and have expressed an
520 The Linux kernel community does not gladly accept large chunks of code
548 Here is an analogy from kernel developer Al Viro:
557 *The same is true of kernel development. The maintainers and