Message ID | 20210701201005.3065299-2-vishal.l.verma@intel.com |
---|---|
State | New, archived |
Headers | show |
Series | Initial CXL support | expand |
On Thu, Jul 1, 2021 at 1:10 PM Vishal Verma <vishal.l.verma@intel.com> wrote: > > Copy the Linux kernel's .clang-format and modify it for ndctl. Only the > 'ForEachMacros' section has been modified from the original kernel copy. > > Cc: Dan Williams <dan.j.williams@intel.com> > Reported-by: Ben Widawsky <ben.widawsky@intel.com> > Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> Nice! Reviewed-by: Dan Williams <dan.j.williams@intel.com> > --- > .clang-format | 161 ++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 161 insertions(+) > create mode 100644 .clang-format > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 0000000..4e00fff > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,161 @@ > +# SPDX-License-Identifier: GPL-2.0 > +# > +# clang-format configuration file. Intended for clang-format >= 4. > +# Copied from Linux's .clang-format > +# > +# For more information, see: > +# > +# https://clang.llvm.org/docs/ClangFormat.html > +# https://clang.llvm.org/docs/ClangFormatStyleOptions.html > +# > +--- > +AccessModifierOffset: -4 > +AlignAfterOpenBracket: Align > +AlignConsecutiveAssignments: false > +AlignConsecutiveDeclarations: false > +#AlignEscapedNewlines: Left # Unknown to clang-format-4.0 > +AlignOperands: true > +AlignTrailingComments: false > +AllowAllParametersOfDeclarationOnNextLine: false > +AllowShortBlocksOnASingleLine: false > +AllowShortCaseLabelsOnASingleLine: false > +AllowShortFunctionsOnASingleLine: None > +AllowShortIfStatementsOnASingleLine: false > +AllowShortLoopsOnASingleLine: false > +AlwaysBreakAfterDefinitionReturnType: None > +AlwaysBreakAfterReturnType: None > +AlwaysBreakBeforeMultilineStrings: false > +AlwaysBreakTemplateDeclarations: false > +BinPackArguments: true > +BinPackParameters: true > +BraceWrapping: > + AfterClass: false > + AfterControlStatement: false > + AfterEnum: false > + AfterFunction: true > + AfterNamespace: true > + AfterObjCDeclaration: false > + AfterStruct: false > + AfterUnion: false > + #AfterExternBlock: false # Unknown to clang-format-5.0 > + BeforeCatch: false > + BeforeElse: false > + IndentBraces: false > + #SplitEmptyFunction: true # Unknown to clang-format-4.0 > + #SplitEmptyRecord: true # Unknown to clang-format-4.0 > + #SplitEmptyNamespace: true # Unknown to clang-format-4.0 > +BreakBeforeBinaryOperators: None > +BreakBeforeBraces: Custom > +#BreakBeforeInheritanceComma: false # Unknown to clang-format-4.0 > +BreakBeforeTernaryOperators: false > +BreakConstructorInitializersBeforeComma: false > +#BreakConstructorInitializers: BeforeComma # Unknown to clang-format-4.0 > +BreakAfterJavaFieldAnnotations: false > +BreakStringLiterals: false > +ColumnLimit: 80 > +CommentPragmas: '^ IWYU pragma:' > +#CompactNamespaces: false # Unknown to clang-format-4.0 > +ConstructorInitializerAllOnOneLineOrOnePerLine: false > +ConstructorInitializerIndentWidth: 8 > +ContinuationIndentWidth: 8 > +Cpp11BracedListStyle: false > +DerivePointerAlignment: false > +DisableFormat: false > +ExperimentalAutoDetectBinPacking: false > +#FixNamespaceComments: false # Unknown to clang-format-4.0 > + > +# Taken from: > +# while read -r sym; do > +# printf " - '%s'\n" "$sym"; > +# done < \ > +# <(cscope -dL6 "foreach|for_each" \ > +# | awk '{ print $4 $5 }' | grep -E 'foreach|for_each' \ > +# | sed -e 's/#define//' \ > +# -e 's/*//' \ > +# -e 's/://' \ > +# -e 's/\(.*for_each.*\)(.*/\1/' \ > +# -e 's/\(.*foreach.*\)(.*/\1/' \ > +# | sort -u) > +ForEachMacros: > + - 'daxctl_dev_foreach' > + - 'daxctl_mapping_foreach' > + - 'daxctl_region_foreach' > + - 'kmod_list_foreach' > + - 'kmod_list_foreach_reverse' > + - 'list_for_each' > + - 'list_for_each_off' > + - 'list_for_each_rev' > + - 'list_for_each_safe' > + - 'list_for_each_safe_off' > + - 'ndctl_btt_foreach' > + - 'ndctl_btt_foreach_safe' > + - 'ndctl_bus_foreach' > + - 'ndctl_dax_foreach' > + - 'ndctl_dax_foreach_safe' > + - 'ndctl_dimm_foreach' > + - 'ndctl_dimm_foreach_in_interleave_set' > + - 'ndctl_dimm_foreach_in_region' > + - 'ndctl_interleave_set_foreach' > + - 'ndctl_mapping_foreach' > + - 'ndctl_namespace_badblock_foreach' > + - 'ndctl_namespace_bb_foreach' > + - 'ndctl_namespace_foreach' > + - 'ndctl_namespace_foreach_safe' > + - 'ndctl_pfn_foreach' > + - 'ndctl_pfn_foreach_safe' > + - 'ndctl_region_badblock_foreach' > + - 'ndctl_region_foreach' > + - 'udev_list_entry_foreach' > + > +#IncludeBlocks: Preserve # Unknown to clang-format-5.0 > +IncludeCategories: > + - Regex: '.*' > + Priority: 1 > +IncludeIsMainRegex: '(Test)?$' > +IndentCaseLabels: false > +#IndentPPDirectives: None # Unknown to clang-format-5.0 > +IndentWidth: 8 > +IndentWrappedFunctionNames: false > +JavaScriptQuotes: Leave > +JavaScriptWrapImports: true > +KeepEmptyLinesAtTheStartOfBlocks: false > +MacroBlockBegin: '' > +MacroBlockEnd: '' > +MaxEmptyLinesToKeep: 1 > +NamespaceIndentation: None > +#ObjCBinPackProtocolList: Auto # Unknown to clang-format-5.0 > +ObjCBlockIndentWidth: 8 > +ObjCSpaceAfterProperty: true > +ObjCSpaceBeforeProtocolList: true > + > +# Taken from git's rules > +#PenaltyBreakAssignment: 10 # Unknown to clang-format-4.0 > +PenaltyBreakBeforeFirstCallParameter: 30 > +PenaltyBreakComment: 10 > +PenaltyBreakFirstLessLess: 0 > +PenaltyBreakString: 10 > +PenaltyExcessCharacter: 100 > +PenaltyReturnTypeOnItsOwnLine: 60 > + > +PointerAlignment: Right > +ReflowComments: false > +SortIncludes: false > +#SortUsingDeclarations: false # Unknown to clang-format-4.0 > +SpaceAfterCStyleCast: false > +SpaceAfterTemplateKeyword: true > +SpaceBeforeAssignmentOperators: true > +#SpaceBeforeCtorInitializerColon: true # Unknown to clang-format-5.0 > +#SpaceBeforeInheritanceColon: true # Unknown to clang-format-5.0 > +SpaceBeforeParens: ControlStatements > +#SpaceBeforeRangeBasedForLoopColon: true # Unknown to clang-format-5.0 > +SpaceInEmptyParentheses: false > +SpacesBeforeTrailingComments: 1 > +SpacesInAngles: false > +SpacesInContainerLiterals: false > +SpacesInCStyleCastParentheses: false > +SpacesInParentheses: false > +SpacesInSquareBrackets: false > +Standard: Cpp03 > +TabWidth: 8 > +UseTab: Always > +... > -- > 2.31.1 >
diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..4e00fff --- /dev/null +++ b/.clang-format @@ -0,0 +1,161 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# clang-format configuration file. Intended for clang-format >= 4. +# Copied from Linux's .clang-format +# +# For more information, see: +# +# https://clang.llvm.org/docs/ClangFormat.html +# https://clang.llvm.org/docs/ClangFormatStyleOptions.html +# +--- +AccessModifierOffset: -4 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +#AlignEscapedNewlines: Left # Unknown to clang-format-4.0 +AlignOperands: true +AlignTrailingComments: false +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: None +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: false +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: true + AfterNamespace: true + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + #AfterExternBlock: false # Unknown to clang-format-5.0 + BeforeCatch: false + BeforeElse: false + IndentBraces: false + #SplitEmptyFunction: true # Unknown to clang-format-4.0 + #SplitEmptyRecord: true # Unknown to clang-format-4.0 + #SplitEmptyNamespace: true # Unknown to clang-format-4.0 +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Custom +#BreakBeforeInheritanceComma: false # Unknown to clang-format-4.0 +BreakBeforeTernaryOperators: false +BreakConstructorInitializersBeforeComma: false +#BreakConstructorInitializers: BeforeComma # Unknown to clang-format-4.0 +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: false +ColumnLimit: 80 +CommentPragmas: '^ IWYU pragma:' +#CompactNamespaces: false # Unknown to clang-format-4.0 +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 8 +ContinuationIndentWidth: 8 +Cpp11BracedListStyle: false +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +#FixNamespaceComments: false # Unknown to clang-format-4.0 + +# Taken from: +# while read -r sym; do +# printf " - '%s'\n" "$sym"; +# done < \ +# <(cscope -dL6 "foreach|for_each" \ +# | awk '{ print $4 $5 }' | grep -E 'foreach|for_each' \ +# | sed -e 's/#define//' \ +# -e 's/*//' \ +# -e 's/://' \ +# -e 's/\(.*for_each.*\)(.*/\1/' \ +# -e 's/\(.*foreach.*\)(.*/\1/' \ +# | sort -u) +ForEachMacros: + - 'daxctl_dev_foreach' + - 'daxctl_mapping_foreach' + - 'daxctl_region_foreach' + - 'kmod_list_foreach' + - 'kmod_list_foreach_reverse' + - 'list_for_each' + - 'list_for_each_off' + - 'list_for_each_rev' + - 'list_for_each_safe' + - 'list_for_each_safe_off' + - 'ndctl_btt_foreach' + - 'ndctl_btt_foreach_safe' + - 'ndctl_bus_foreach' + - 'ndctl_dax_foreach' + - 'ndctl_dax_foreach_safe' + - 'ndctl_dimm_foreach' + - 'ndctl_dimm_foreach_in_interleave_set' + - 'ndctl_dimm_foreach_in_region' + - 'ndctl_interleave_set_foreach' + - 'ndctl_mapping_foreach' + - 'ndctl_namespace_badblock_foreach' + - 'ndctl_namespace_bb_foreach' + - 'ndctl_namespace_foreach' + - 'ndctl_namespace_foreach_safe' + - 'ndctl_pfn_foreach' + - 'ndctl_pfn_foreach_safe' + - 'ndctl_region_badblock_foreach' + - 'ndctl_region_foreach' + - 'udev_list_entry_foreach' + +#IncludeBlocks: Preserve # Unknown to clang-format-5.0 +IncludeCategories: + - Regex: '.*' + Priority: 1 +IncludeIsMainRegex: '(Test)?$' +IndentCaseLabels: false +#IndentPPDirectives: None # Unknown to clang-format-5.0 +IndentWidth: 8 +IndentWrappedFunctionNames: false +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +#ObjCBinPackProtocolList: Auto # Unknown to clang-format-5.0 +ObjCBlockIndentWidth: 8 +ObjCSpaceAfterProperty: true +ObjCSpaceBeforeProtocolList: true + +# Taken from git's rules +#PenaltyBreakAssignment: 10 # Unknown to clang-format-4.0 +PenaltyBreakBeforeFirstCallParameter: 30 +PenaltyBreakComment: 10 +PenaltyBreakFirstLessLess: 0 +PenaltyBreakString: 10 +PenaltyExcessCharacter: 100 +PenaltyReturnTypeOnItsOwnLine: 60 + +PointerAlignment: Right +ReflowComments: false +SortIncludes: false +#SortUsingDeclarations: false # Unknown to clang-format-4.0 +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +#SpaceBeforeCtorInitializerColon: true # Unknown to clang-format-5.0 +#SpaceBeforeInheritanceColon: true # Unknown to clang-format-5.0 +SpaceBeforeParens: ControlStatements +#SpaceBeforeRangeBasedForLoopColon: true # Unknown to clang-format-5.0 +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInContainerLiterals: false +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp03 +TabWidth: 8 +UseTab: Always +...
Copy the Linux kernel's .clang-format and modify it for ndctl. Only the 'ForEachMacros' section has been modified from the original kernel copy. Cc: Dan Williams <dan.j.williams@intel.com> Reported-by: Ben Widawsky <ben.widawsky@intel.com> Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> --- .clang-format | 161 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 161 insertions(+) create mode 100644 .clang-format