• Home
  • Raw
  • Download

Lines Matching full:code

3 Getting the code right
8 code. It is the code which will be examined by other developers and merged
9 (or not) into the mainline tree. So it is the quality of this code which
27 advisory. As a result, there is a substantial amount of code in the kernel
28 which does not meet the coding style guidelines. The presence of that code
33 code to the kernel is very difficult if that code is not coded according to
34 the standard; many developers will request that the code be reformatted
35 before they will even review it. A code base as large as the kernel
36 requires some uniformity of code to make it possible for developers to
38 strangely-formatted code.
42 win before the code can be merged. Putting code into the kernel means
44 how the code is formatted.
46 The other trap is to assume that code which is already in the kernel is
52 avoided. It is natural to fix the style of a piece of code while working
62 these rules, to quickly re-format parts of your code automatically,
76 involving several million lines of code could do otherwise and survive.
84 provides. By that time, though, chances are good that the code which
94 frowned upon. Such layers obscure the code and may impose a performance
97 On the other hand, if you find yourself copying significant amounts of code
99 make sense to pull out some of that code into a separate library or to
101 replicating the same code throughout the kernel.
110 use of it results in code which is much harder for others to read and
112 is almost always a sign of code which needs some cleanup work.
115 is used within the kernel. But there is little desire to see code which is
118 Conditionally-compiled code can be confined to functions which, if the code
121 code which is easier to follow.
126 instead. The code which results will be the same, but inline functions are
137 however, can actually reduce performance. Since their code is replicated
163 stack offered the promise of fixing that situation. Yet, this code did not
167 This code showed a number of signs of having been developed behind
173 Once upon a time, Linux kernel code could be developed without thinking
178 code could be written without thinking about locking are long past.
182 New code should be written with this requirement in mind; retrofitting
185 enough to pick the right tool for the job. Code which shows a lack of
224 Code checking tools
227 For now, at least, the writing of error-free code remains an ideal that few
229 many of those errors as possible before our code goes into the mainline
239 Code submitted for review should, as a rule, not produce any compiler
258 - DEBUG_OBJECTS will add code to track the lifetime of various objects
284 in an automated manner ahead of time. Code with any sort of non-trivial
291 are, probably, completely untested. Untested code tends to be broken code;
292 you could be much more confident of your code if all those error-handling
298 fail; these failures can be restricted to a specific range of code.
300 code responds when things go badly. See
310 distributor does not package it); it can then be run on the code by adding
321 Other kinds of portability errors are best found by compiling your code for
337 of new code into the kernel, make life easier for other developers, and
349 Any code which adds a new user-space interface - including new sysfs or
374 Anybody who reads through a significant amount of existing kernel code will
376 the expectations for new code are higher than they were in the past;
377 merging uncommented code will be harder. That said, there is little desire
378 for verbosely-commented code. The code should, itself, be readable, with
385 Non-obvious dependencies between separate bits of code should be pointed
386 out. Anything which might tempt a code janitor to make an incorrect
408 generally charged with the task of fixing any code within the kernel tree
417 ensure that code which has not been updated is caught by the compiler.
419 interface. It will also alert developers of out-of-tree code that there is
420 a change that they need to respond to. Supporting out-of-tree code is not