On Fri, Sep 17, 2021 at 3:46 PM Utkarsh Verma <utkarshverma294@xxxxxxxxx> wrote: > > Added and documented 4 new message types: > - INCLUDE_LINUX > - INDENTED_LABEL > - IF_0 > - IF_1 > > Signed-off-by: Utkarsh Verma <utkarshverma294@xxxxxxxxx> > --- > Documentation/dev-tools/checkpatch.rst | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/Documentation/dev-tools/checkpatch.rst b/Documentation/dev-tools/checkpatch.rst > index f0956e9ea2d8..ea343a7a5b46 100644 > --- a/Documentation/dev-tools/checkpatch.rst > +++ b/Documentation/dev-tools/checkpatch.rst > @@ -435,6 +435,11 @@ API usage > **EXPORT_SYMBOL** > EXPORT_SYMBOL should immediately follow the symbol to be exported. > > + **INCLUDE_LINUX** > + Whenever asm/file.h is included and linux/file.h exists, a > + conversion can be made when linux/file.h includes asm/file.h. > + However this is not always the case (See signal.h). > + Can you suggest why? And is this true for every use? > **IN_ATOMIC** > in_atomic() is not for driver use so any such use is reported as an ERROR. > Also in_atomic() is often used to determine if sleeping is permitted, > @@ -661,6 +666,10 @@ Indentation and Line Breaks > > See: https://lore.kernel.org/lkml/1328311239.21255.24.camel@joe2Laptop/ > > + **INDENTED_LABEL** > + goto labels either should not have any indentation or only a single > + space indentation. > + Some reference here maybe? > **SWITCH_CASE_INDENT_LEVEL** > switch should be at the same indent as case. > Example:: > @@ -790,6 +799,19 @@ Macros, Attributes and Symbols > **DO_WHILE_MACRO_WITH_TRAILING_SEMICOLON** > do {} while(0) macros should not have a trailing semicolon. > > + **IF_0** > + The code enclosed within #if 0 and #endif is not executed and is used > + for temporarily removing the segments of code with the intention of > + using it in the future, much like comments. But comments cannot be > + nested, so #if 0 is preferred. But if the code inside #if 0 and #endif > + doesn't seem to be anymore required then remove it. > + > + **IF_1** > + The code enclosed within #if 1 and #endif is always executed, so the > + #if 1 and #endif statements are redundant, thus remove it. > + It is only useful for debugging purposes, it can quickly disable the > + code enclosed within itself by changing #if 1 to #if 0 > + These two are good. > **INIT_ATTRIBUTE** > Const init definitions should use __initconst instead of > __initdata. > -- > 2.25.1 > Thanks, Dwaipayan.