format the codebase

laumann
Sep 20, 2022, 8:41 PM
XTKRT6OQYN4LARQRDLI2KBSAJTOFZNT4AMBZ46CPUDZXD7IDYYWQC

Dependencies

  • [2] AEMTSEJX change: simplify readout of offsets
  • [3] N3NHJNNG init: support -h
  • [4] LVX6U4EK change: decode metadata bytes
  • [5] OBKF6SII change: decompress the hashed section too
  • [6] AHIXA5ZE Get rid of all warnings, rework init code. How do I do multiline messages?
  • [7] 3FT3XTJM change: support -v/-h flags
  • [8] YG4DZB3A add representation of hash, decode dependencies
  • [9] B3XLVPNC Add ani.c and initial Makefile
  • [10] RIWSVVAS change: decompress the 'contents' with zstd_seekable
  • [11] Q7TKZCJP Add initial support for reading the offsets from a (fixed) change
  • [12] FD4A7HCM base32: describe known limitations
  • [13] QEFCNNVC change: display offsets for given change file
  • [14] DKX3RO3L base32: Add encoding of hashes, print base32-encoded hashes
  • [15] WMFNGOYT change: reduce printed noise, rework some code
  • [16] Y26WT3ZF change: decode message, description and timestamp
  • [17] VKLGQREY change: add base32 decode, initial deconstruction of hashed
  • [18] FB67XX5E add argument parsing setup
  • [19] VXGUQZIV bincode: rework so functions advance pointer
  • [20] LCEKN25G change: parse authors
  • [21] 4RYULBDD bincode: introduce a bincode_state struct
  • [*] PEUS54XQ

Change contents

  • replacement in scaffold.c at line 8
    [5.330][5.330:356]()
    void die(const char *msg)
    [5.330]
    [5.356]
    void
    die(const char *msg)
  • replacement in init.c at line 6
    [3.12][3.12:31]()
    cmd_init_usage() {
    [3.12]
    [3.31]
    cmd_init_usage()
    {
  • replacement in init.c at line 29
    [5.659][5.659:701]()
    int cmd_init(int argc, const char **argv)
    [5.659]
    [5.701]
    int
    cmd_init(int argc, const char **argv)
  • replacement in hash.h at line 4
    [5.63][5.63:105]()
    #define HASH_NONE 0
    #define HASH_BLAKE3 1
    [5.63]
    [5.105]
    #define HASH_NONE 0
    #define HASH_BLAKE3 1
  • replacement in hash.h at line 7
    [5.106][5.106:130]()
    #define BLAKE3_BYTES 32
    [5.106]
    [5.130]
    #define BLAKE3_BYTES 32
  • replacement in change.h at line 17
    [5.343][5.343:397]()
    uint64_t hashed_len; /* length of hashed contents */
    [5.343]
    [5.397]
    uint64_t hashed_len; /* length of hashed contents */
  • replacement in change.h at line 19
    [5.421][5.421:479]()
    uint64_t unhashed_len; /* length of unhashed contents */
    [5.421]
    [5.479]
    uint64_t unhashed_len; /* length of unhashed contents */
  • replacement in change.h at line 21
    [5.503][5.503:634]()
    uint64_t contents_len; /* length of contents (uncompressed) */
    uint64_t total; /* contents_off + length(compressed contents) */
    [5.503]
    [5.634]
    uint64_t contents_len; /* length of contents (uncompressed) */
    uint64_t total; /* contents_off + length(compressed contents) */
  • replacement in change.h at line 58
    [5.173][5.286:353]()
    struct authors authors; /* a list of "key"="value" collections */
    [5.173]
    [5.209]
    struct authors authors; /* a list of "key"="value" collections */
  • replacement in change.h at line 69
    [5.474][5.474:538]()
    uint64_t version; /* same as in offsets? here to be hashed! */
    [5.474]
    [5.538]
    uint64_t version; /* same as in offsets? here to be hashed! */
  • replacement in change.h at line 71
    [5.568][5.702:817]()
    struct hash_list dependencies; /* array of hashes */
    struct hash_list extra_known; /* another array of hashes */
    [5.568]
    [5.661]
    struct hash_list dependencies; /* array of hashes */
    struct hash_list extra_known; /* another array of hashes */
  • replacement in change.c at line 2
    [5.1068][5.1068:1133]()
    #include <unistd.h> /* read() */
    #include <fcntl.h> /* open() */
    [5.1068]
    [5.1133]
    #include <unistd.h> /* read() */
    #include <fcntl.h> /* open() */
  • replacement in change.c at line 68
    [5.1848][2.18:20]()
    [5.1848]
    [2.20]
  • replacement in change.c at line 88
    [5.435][5.435:513]()
    decompress_segment(
    int fd,
    size_t compressed_len,
    uint64_t expected_len
    )
    [5.435]
    [5.665]
    decompress_segment(int fd, size_t compressed_len, uint64_t expected_len)
  • replacement in change.c at line 112
    [5.1517][5.788:826]()
    compressed_len, compressed_read);
    [5.1517]
    [5.1559]
    compressed_len, compressed_read);
  • replacement in change.c at line 126
    [5.1905][5.1905:1937]()
    ZSTD_getErrorName(result));
    [5.1905]
    [5.1937]
    ZSTD_getErrorName(result));
  • replacement in change.c at line 134
    [5.2160][5.2160:2192]()
    ZSTD_getErrorName(result));
    [5.2160]
    [5.2192]
    ZSTD_getErrorName(result));
  • replacement in change.c at line 138
    [5.988][5.988:1064]()
    fprintf(stderr, "decoded %lu bytes, wanted %lu\n", result, expected_len);
    [5.988]
    [5.2330]
    fprintf(stderr, "decoded %lu bytes, wanted %lu\n", result,
    expected_len);
  • replacement in change.c at line 160
    [5.1083][5.208:306]()
    change_decode_hashed(int fd, size_t comp_hashed_len, size_t hashed_len,
    uint8_t *expected_hash)
    [5.1083]
    [5.1155]
    change_decode_hashed(
    int fd, size_t comp_hashed_len, size_t hashed_len,
    uint8_t *expected_hash
    )
  • replacement in change.c at line 189
    [5.489][5.489:552]()
    fprintf(stderr, "error: change hash mismatch, claimed \n");
    [5.489]
    [5.552]
    fprintf(stderr,
    "error: change hash mismatch, claimed \n");
  • replacement in change.c at line 227
    [5.1435][5.1435:1520]()
    printf("warning: timestamp field has unexpected length %lu (expected 30)\n", len);
    [5.1435]
    [5.418]
    printf("warning: timestamp field has unexpected length %lu (expected 30)\n",
    len);
  • replacement in change.c at line 240
    [5.634][5.634:713]()
    hashed.header.authors.map[i].entries = xmalloc(sizeof(struct author) * len);
    [5.634]
    [5.713]
    hashed.header.authors.map[i].entries =
    xmalloc(sizeof(struct author) * len);
  • replacement in change.c at line 245
    [5.849][5.849:929]()
    hashed.header.authors.map[i].entries[j].key = bincode_getstr(&binstat, len);
    [5.849]
    [5.929]
    hashed.header.authors.map[i].entries[j].key =
    bincode_getstr(&binstat, len);
  • replacement in change.c at line 248
    [5.964][5.964:1046]()
    hashed.header.authors.map[i].entries[j].value = bincode_getstr(&binstat, len);
    [5.964]
    [5.1046]
    hashed.header.authors.map[i].entries[j].value =
    bincode_getstr(&binstat, len);
  • replacement in change.c at line 251
    [5.1071][5.1071:1172]()
    hashed.header.authors.map[i].entries[j].key,
    hashed.header.authors.map[i].entries[j].value);
    [5.1071]
    [5.1172]
    hashed.header.authors.map[i].entries[j].key,
    hashed.header.authors.map[i].entries[j].value);
  • edit in change.c at line 254
    [5.1176][5.837:838]()
  • replacement in change.c at line 263
    [5.1094][5.1094:1163]()
    hashed.dependencies.entries[i].variant = bincode_getu32(&binstat);
    [5.1094]
    [5.1163]
    hashed.dependencies.entries[i].variant =
    bincode_getu32(&binstat);
  • replacement in change.c at line 267
    [5.1235][5.1235:1311]()
    memcpy(hashed.dependencies.entries[i].bytes, binstat.buf, BLAKE3_BYTES);
    [5.1235]
    [5.1311]
    memcpy(hashed.dependencies.entries[i].bytes,
    binstat.buf, BLAKE3_BYTES);
  • replacement in change.c at line 288
    [5.1784][5.1784:1852]()
    hashed.extra_known.entries[i].variant = bincode_getu32(&binstat);
    [5.1784]
    [5.1852]
    hashed.extra_known.entries[i].variant =
    bincode_getu32(&binstat);
  • replacement in change.c at line 292
    [5.1923][5.1923:1998]()
    memcpy(hashed.extra_known.entries[i].bytes, binstat.buf, BLAKE3_BYTES);
    [5.1923]
    [5.1998]
    memcpy(hashed.extra_known.entries[i].bytes, binstat.buf,
    BLAKE3_BYTES);
  • edit in change.c at line 306
    [4.1][5.2219:2220](),[5.2219][5.2219:2220]()
  • replacement in change.c at line 334
    [5.1774][5.1774:1857]()
    return decompress_segment(fd, off->total - off->contents_off, off->contents_len);
    [5.1774]
    [5.2592]
    return decompress_segment(
    fd, off->total - off->contents_off, off->contents_len
    );
  • replacement in change.c at line 352
    [5.132][5.132:231]()
    char chfile[78] = ".pijul/changes/AH/IXA5ZESN6QJXV2LKRSC4H5ZRFMJFHFPY2RQRARTH3XJLLCMCGQC.change";
    [5.132]
    [5.2254]
    char chfile[78] =
    ".pijul/changes/AH/IXA5ZESN6QJXV2LKRSC4H5ZRFMJFHFPY2RQRARTH3XJLLCMCGQC.change";
  • replacement in change.c at line 376
    [5.1874][5.1473:1570]()
    err = change_decode_hashed(fd, off.unhashed_off - OFFSETS_SIZE, off.hashed_len, contents_hash);
    [5.1874]
    [5.1956]
    err = change_decode_hashed(
    fd, off.unhashed_off - OFFSETS_SIZE, off.hashed_len,
    contents_hash
    );
  • replacement in change.c at line 412
    [5.2999][5.185:223]()
    int cmd_change(int argc, char **argv)
    [5.2999]
    [5.3043]
    int
    cmd_change(int argc, char **argv)
  • replacement in change.c at line 447
    [5.2973][5.2973:3060]()
    fprintf(stderr, "error: hash must be exactly 53 characters (got: %lu)\n", hash_len);
    [5.2973]
    [5.725]
    fprintf(stderr,
    "error: hash must be exactly 53 characters (got: %lu)\n",
    hash_len);
  • replacement in bincode.h at line 21
    [5.809][5.809:852]()
    size_t avail; /* bytes still available */
    [5.809]
    [5.852]
    size_t avail; /* bytes still available */
  • replacement in bincode.c at line 41
    [5.1393][5.686:714](),[5.686][5.686:714](),[5.714][5.3011:3080](),[5.3011][5.3011:3080]()
    ret = (uint32_t)b[3] << 24
    | (uint32_t)b[2] << 16
    | (uint32_t)b[1] << 8
    | (uint32_t)b[0];
    [5.1393]
    [5.715]
    ret = (uint32_t)b[3] << 24 | (uint32_t)b[2] << 16 |
    (uint32_t)b[1] << 8 | (uint32_t)b[0];
  • replacement in bincode.c at line 56
    [5.1480][5.825:853](),[5.825][5.825:853](),[5.853][5.3150:3319](),[5.3150][5.3150:3319]()
    ret = (uint64_t)b[7] << 56
    | (uint64_t)b[6] << 48
    | (uint64_t)b[5] << 40
    | (uint64_t)b[4] << 32
    | (uint64_t)b[3] << 24
    | (uint64_t)b[2] << 16
    | (uint64_t)b[1] << 8
    | (uint64_t)b[0];
    [5.1480]
    [5.854]
    ret = (uint64_t)b[7] << 56 | (uint64_t)b[6] << 48 |
    (uint64_t)b[5] << 40 | (uint64_t)b[4] << 32 |
    (uint64_t)b[3] << 24 | (uint64_t)b[2] << 16 |
    (uint64_t)b[1] << 8 | (uint64_t)b[0];
  • replacement in bincode.c at line 83
    [4.377][4.377:430]()
    bincode_getbytes(struct bincode_state*s, size_t len)
    [4.377]
    [4.430]
    bincode_getbytes(struct bincode_state *s, size_t len)
  • edit in base32.c at line 16
    [5.2241]
    [5.2241]
    /* clang-format off */
  • edit in base32.c at line 35
    [5.3074]
    [5.3074]
    /* clang-format on */
  • replacement in base32.c at line 58
    [5.3283][5.3283:3492]()
    dst[off] = v[0] << 3 | v[1] >> 2;
    dst[off+1] = v[1] << 6 | v[2] << 1 | v[3] >> 4;
    dst[off+2] = v[3] << 4 | v[4] >> 1;
    dst[off+3] = v[4] << 7 | v[5] << 2 | v[6] >> 3;
    dst[off+4] = v[6] << 5 | v[7];
    [5.3283]
    [5.3492]
    dst[off] = v[0] << 3 | v[1] >> 2;
    dst[off + 1] = v[1] << 6 | v[2] << 1 | v[3] >> 4;
    dst[off + 2] = v[3] << 4 | v[4] >> 1;
    dst[off + 3] = v[4] << 7 | v[5] << 2 | v[6] >> 3;
    dst[off + 4] = v[6] << 5 | v[7];
  • replacement in base32.c at line 67
    [5.3580][5.3580:3613]()
    v[i] = BASE32[(int)in[off+i]];
    [5.3580]
    [5.3613]
    v[i] = BASE32[(int)in[off + i]];
  • replacement in base32.c at line 70
    [5.3636][5.3636:3722]()
    dst[off] = v[0] << 3 | v[1] >> 2;
    dst[off+1] = v[1] << 6 | v[2] << 1 | v[3] >> 4;
    [5.3636]
    [5.3722]
    dst[off] = v[0] << 3 | v[1] >> 2;
    dst[off + 1] = v[1] << 6 | v[2] << 1 | v[3] >> 4;
  • replacement in ani.c at line 12
    [5.170][5.3102:3158](),[5.3158][5.170:173](),[5.170][5.170:173]()
    " change Show information about a particular change\n"
    ;
    [5.170]
    [5.173]
    " change Show information about a particular change\n";
  • replacement in ani.c at line 59
    [5.1706][5.361:441]()
    fprintf(stderr, "ani: '%s' is not an ani command. See 'ani -h'\n", cmd_name);
    [5.1706]
    [5.1763]
    fprintf(stderr,
    "ani: '%s' is not an ani command. See 'ani -h'\n",
    cmd_name);
  • file addition: .clang-format (----------)
    [23.1]
    # SPDX-License-Identifier: GPL-2.0
    #
    # clang-format configuration file. Intended for clang-format >= 11.
    #
    # For more information, see:
    #
    # Documentation/process/clang-format.rst
    # https://clang.llvm.org/docs/ClangFormat.html
    # https://clang.llvm.org/docs/ClangFormatStyleOptions.html
    #
    ---
    AccessModifierOffset: -4
    AlignAfterOpenBracket: BlockIndent
    AlignConsecutiveAssignments: false
    AlignConsecutiveDeclarations: false
    AlignEscapedNewlines: Left
    AlignOperands: true
    AlignTrailingComments: true
    AllowAllParametersOfDeclarationOnNextLine: false
    AllowShortBlocksOnASingleLine: false
    AllowShortCaseLabelsOnASingleLine: false
    AllowShortEnumsOnASingleLine: false
    AllowShortFunctionsOnASingleLine: None
    AllowShortIfStatementsOnASingleLine: false
    AllowShortLoopsOnASingleLine: false
    AlwaysBreakAfterDefinitionReturnType: None
    AlwaysBreakAfterReturnType: AllDefinitions
    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
    BeforeCatch: false
    BeforeElse: false
    IndentBraces: false
    SplitEmptyFunction: true
    SplitEmptyRecord: true
    SplitEmptyNamespace: true
    BreakBeforeBinaryOperators: None
    BreakBeforeBraces: Custom
    BreakBeforeInheritanceComma: false
    BreakBeforeTernaryOperators: false
    BreakConstructorInitializersBeforeComma: false
    BreakConstructorInitializers: BeforeComma
    BreakAfterJavaFieldAnnotations: false
    BreakStringLiterals: false
    ColumnLimit: 80
    CommentPragmas: '^ IWYU pragma:'
    CompactNamespaces: false
    ConstructorInitializerAllOnOneLineOrOnePerLine: false
    ConstructorInitializerIndentWidth: 8
    ContinuationIndentWidth: 8
    Cpp11BracedListStyle: false
    DerivePointerAlignment: false
    DisableFormat: false
    ExperimentalAutoDetectBinPacking: false
    FixNamespaceComments: false
    # Taken from:
    # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ tools/ \
    # | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \
    # | LC_ALL=C sort -u
    ForEachMacros:
    - '__ata_qc_for_each'
    - '__bio_for_each_bvec'
    - '__bio_for_each_segment'
    - '__evlist__for_each_entry'
    - '__evlist__for_each_entry_continue'
    - '__evlist__for_each_entry_from'
    - '__evlist__for_each_entry_reverse'
    - '__evlist__for_each_entry_safe'
    - '__for_each_mem_range'
    - '__for_each_mem_range_rev'
    - '__for_each_thread'
    - '__hlist_for_each_rcu'
    - '__map__for_each_symbol_by_name'
    - '__perf_evlist__for_each_entry'
    - '__perf_evlist__for_each_entry_reverse'
    - '__perf_evlist__for_each_entry_safe'
    - '__rq_for_each_bio'
    - '__shost_for_each_device'
    - 'apei_estatus_for_each_section'
    - 'ata_for_each_dev'
    - 'ata_for_each_link'
    - 'ata_qc_for_each'
    - 'ata_qc_for_each_raw'
    - 'ata_qc_for_each_with_internal'
    - 'ax25_for_each'
    - 'ax25_uid_for_each'
    - 'bio_for_each_bvec'
    - 'bio_for_each_bvec_all'
    - 'bio_for_each_folio_all'
    - 'bio_for_each_integrity_vec'
    - 'bio_for_each_segment'
    - 'bio_for_each_segment_all'
    - 'bio_list_for_each'
    - 'bip_for_each_vec'
    - 'bond_for_each_slave'
    - 'bond_for_each_slave_rcu'
    - 'bpf__perf_for_each_map'
    - 'bpf__perf_for_each_map_named'
    - 'bpf_for_each_spilled_reg'
    - 'bpf_object__for_each_map'
    - 'bpf_object__for_each_program'
    - 'bpf_object__for_each_safe'
    - 'bpf_perf_object__for_each'
    - 'btree_for_each_safe128'
    - 'btree_for_each_safe32'
    - 'btree_for_each_safe64'
    - 'btree_for_each_safel'
    - 'card_for_each_dev'
    - 'cgroup_taskset_for_each'
    - 'cgroup_taskset_for_each_leader'
    - 'cpufreq_for_each_efficient_entry_idx'
    - 'cpufreq_for_each_entry'
    - 'cpufreq_for_each_entry_idx'
    - 'cpufreq_for_each_valid_entry'
    - 'cpufreq_for_each_valid_entry_idx'
    - 'css_for_each_child'
    - 'css_for_each_descendant_post'
    - 'css_for_each_descendant_pre'
    - 'damon_for_each_region'
    - 'damon_for_each_region_safe'
    - 'damon_for_each_scheme'
    - 'damon_for_each_scheme_safe'
    - 'damon_for_each_target'
    - 'damon_for_each_target_safe'
    - 'data__for_each_file'
    - 'data__for_each_file_new'
    - 'data__for_each_file_start'
    - 'device_for_each_child_node'
    - 'displayid_iter_for_each'
    - 'dma_fence_array_for_each'
    - 'dma_fence_chain_for_each'
    - 'dma_fence_unwrap_for_each'
    - 'dma_resv_for_each_fence'
    - 'dma_resv_for_each_fence_unlocked'
    - 'do_for_each_ftrace_op'
    - 'drm_atomic_crtc_for_each_plane'
    - 'drm_atomic_crtc_state_for_each_plane'
    - 'drm_atomic_crtc_state_for_each_plane_state'
    - 'drm_atomic_for_each_plane_damage'
    - 'drm_client_for_each_connector_iter'
    - 'drm_client_for_each_modeset'
    - 'drm_connector_for_each_possible_encoder'
    - 'drm_for_each_bridge_in_chain'
    - 'drm_for_each_connector_iter'
    - 'drm_for_each_crtc'
    - 'drm_for_each_crtc_reverse'
    - 'drm_for_each_encoder'
    - 'drm_for_each_encoder_mask'
    - 'drm_for_each_fb'
    - 'drm_for_each_legacy_plane'
    - 'drm_for_each_plane'
    - 'drm_for_each_plane_mask'
    - 'drm_for_each_privobj'
    - 'drm_mm_for_each_hole'
    - 'drm_mm_for_each_node'
    - 'drm_mm_for_each_node_in_range'
    - 'drm_mm_for_each_node_safe'
    - 'dsa_switch_for_each_available_port'
    - 'dsa_switch_for_each_cpu_port'
    - 'dsa_switch_for_each_port'
    - 'dsa_switch_for_each_port_continue_reverse'
    - 'dsa_switch_for_each_port_safe'
    - 'dsa_switch_for_each_user_port'
    - 'dsa_tree_for_each_user_port'
    - 'dso__for_each_symbol'
    - 'dsos__for_each_with_build_id'
    - 'elf_hash_for_each_possible'
    - 'elf_section__for_each_rel'
    - 'elf_section__for_each_rela'
    - 'elf_symtab__for_each_symbol'
    - 'evlist__for_each_cpu'
    - 'evlist__for_each_entry'
    - 'evlist__for_each_entry_continue'
    - 'evlist__for_each_entry_from'
    - 'evlist__for_each_entry_reverse'
    - 'evlist__for_each_entry_safe'
    - 'flow_action_for_each'
    - 'for_each_acpi_dev_match'
    - 'for_each_active_dev_scope'
    - 'for_each_active_drhd_unit'
    - 'for_each_active_iommu'
    - 'for_each_aggr_pgid'
    - 'for_each_available_child_of_node'
    - 'for_each_bench'
    - 'for_each_bio'
    - 'for_each_board_func_rsrc'
    - 'for_each_btf_ext_rec'
    - 'for_each_btf_ext_sec'
    - 'for_each_bvec'
    - 'for_each_card_auxs'
    - 'for_each_card_auxs_safe'
    - 'for_each_card_components'
    - 'for_each_card_dapms'
    - 'for_each_card_pre_auxs'
    - 'for_each_card_prelinks'
    - 'for_each_card_rtds'
    - 'for_each_card_rtds_safe'
    - 'for_each_card_widgets'
    - 'for_each_card_widgets_safe'
    - 'for_each_cgroup_storage_type'
    - 'for_each_child_of_node'
    - 'for_each_clear_bit'
    - 'for_each_clear_bit_from'
    - 'for_each_clear_bitrange'
    - 'for_each_clear_bitrange_from'
    - 'for_each_cmd'
    - 'for_each_cmsghdr'
    - 'for_each_collection'
    - 'for_each_comp_order'
    - 'for_each_compatible_node'
    - 'for_each_component_dais'
    - 'for_each_component_dais_safe'
    - 'for_each_console'
    - 'for_each_cpu'
    - 'for_each_cpu_and'
    - 'for_each_cpu_not'
    - 'for_each_cpu_wrap'
    - 'for_each_dapm_widgets'
    - 'for_each_dedup_cand'
    - 'for_each_dev_addr'
    - 'for_each_dev_scope'
    - 'for_each_dma_cap_mask'
    - 'for_each_dpcm_be'
    - 'for_each_dpcm_be_rollback'
    - 'for_each_dpcm_be_safe'
    - 'for_each_dpcm_fe'
    - 'for_each_drhd_unit'
    - 'for_each_dss_dev'
    - 'for_each_efi_memory_desc'
    - 'for_each_efi_memory_desc_in_map'
    - 'for_each_element'
    - 'for_each_element_extid'
    - 'for_each_element_id'
    - 'for_each_endpoint_of_node'
    - 'for_each_event'
    - 'for_each_event_tps'
    - 'for_each_evictable_lru'
    - 'for_each_fib6_node_rt_rcu'
    - 'for_each_fib6_walker_rt'
    - 'for_each_free_mem_pfn_range_in_zone'
    - 'for_each_free_mem_pfn_range_in_zone_from'
    - 'for_each_free_mem_range'
    - 'for_each_free_mem_range_reverse'
    - 'for_each_func_rsrc'
    - 'for_each_group_evsel'
    - 'for_each_group_member'
    - 'for_each_hstate'
    - 'for_each_if'
    - 'for_each_inject_fn'
    - 'for_each_insn'
    - 'for_each_insn_prefix'
    - 'for_each_intid'
    - 'for_each_iommu'
    - 'for_each_ip_tunnel_rcu'
    - 'for_each_irq_nr'
    - 'for_each_lang'
    - 'for_each_link_codecs'
    - 'for_each_link_cpus'
    - 'for_each_link_platforms'
    - 'for_each_lru'
    - 'for_each_matching_node'
    - 'for_each_matching_node_and_match'
    - 'for_each_mem_pfn_range'
    - 'for_each_mem_range'
    - 'for_each_mem_range_rev'
    - 'for_each_mem_region'
    - 'for_each_member'
    - 'for_each_memory'
    - 'for_each_migratetype_order'
    - 'for_each_missing_reg'
    - 'for_each_net'
    - 'for_each_net_continue_reverse'
    - 'for_each_net_rcu'
    - 'for_each_netdev'
    - 'for_each_netdev_continue'
    - 'for_each_netdev_continue_rcu'
    - 'for_each_netdev_continue_reverse'
    - 'for_each_netdev_feature'
    - 'for_each_netdev_in_bond_rcu'
    - 'for_each_netdev_rcu'
    - 'for_each_netdev_reverse'
    - 'for_each_netdev_safe'
    - 'for_each_new_connector_in_state'
    - 'for_each_new_crtc_in_state'
    - 'for_each_new_mst_mgr_in_state'
    - 'for_each_new_plane_in_state'
    - 'for_each_new_plane_in_state_reverse'
    - 'for_each_new_private_obj_in_state'
    - 'for_each_new_reg'
    - 'for_each_node'
    - 'for_each_node_by_name'
    - 'for_each_node_by_type'
    - 'for_each_node_mask'
    - 'for_each_node_state'
    - 'for_each_node_with_cpus'
    - 'for_each_node_with_property'
    - 'for_each_nonreserved_multicast_dest_pgid'
    - 'for_each_of_allnodes'
    - 'for_each_of_allnodes_from'
    - 'for_each_of_cpu_node'
    - 'for_each_of_pci_range'
    - 'for_each_old_connector_in_state'
    - 'for_each_old_crtc_in_state'
    - 'for_each_old_mst_mgr_in_state'
    - 'for_each_old_plane_in_state'
    - 'for_each_old_private_obj_in_state'
    - 'for_each_oldnew_connector_in_state'
    - 'for_each_oldnew_crtc_in_state'
    - 'for_each_oldnew_mst_mgr_in_state'
    - 'for_each_oldnew_plane_in_state'
    - 'for_each_oldnew_plane_in_state_reverse'
    - 'for_each_oldnew_private_obj_in_state'
    - 'for_each_online_cpu'
    - 'for_each_online_node'
    - 'for_each_online_pgdat'
    - 'for_each_path'
    - 'for_each_pci_bridge'
    - 'for_each_pci_dev'
    - 'for_each_pcm_streams'
    - 'for_each_physmem_range'
    - 'for_each_populated_zone'
    - 'for_each_possible_cpu'
    - 'for_each_present_cpu'
    - 'for_each_prime_number'
    - 'for_each_prime_number_from'
    - 'for_each_probe_cache_entry'
    - 'for_each_process'
    - 'for_each_process_thread'
    - 'for_each_prop_codec_conf'
    - 'for_each_prop_dai_codec'
    - 'for_each_prop_dai_cpu'
    - 'for_each_prop_dlc_codecs'
    - 'for_each_prop_dlc_cpus'
    - 'for_each_prop_dlc_platforms'
    - 'for_each_property_of_node'
    - 'for_each_reg'
    - 'for_each_reg_filtered'
    - 'for_each_registered_fb'
    - 'for_each_requested_gpio'
    - 'for_each_requested_gpio_in_range'
    - 'for_each_reserved_mem_range'
    - 'for_each_reserved_mem_region'
    - 'for_each_rtd_codec_dais'
    - 'for_each_rtd_components'
    - 'for_each_rtd_cpu_dais'
    - 'for_each_rtd_dais'
    - 'for_each_script'
    - 'for_each_sec'
    - 'for_each_set_bit'
    - 'for_each_set_bit_from'
    - 'for_each_set_bitrange'
    - 'for_each_set_bitrange_from'
    - 'for_each_set_clump8'
    - 'for_each_sg'
    - 'for_each_sg_dma_page'
    - 'for_each_sg_page'
    - 'for_each_sgtable_dma_page'
    - 'for_each_sgtable_dma_sg'
    - 'for_each_sgtable_page'
    - 'for_each_sgtable_sg'
    - 'for_each_shell_test'
    - 'for_each_sibling_event'
    - 'for_each_subelement'
    - 'for_each_subelement_extid'
    - 'for_each_subelement_id'
    - 'for_each_sublist'
    - 'for_each_subsystem'
    - 'for_each_supported_activate_fn'
    - 'for_each_supported_inject_fn'
    - 'for_each_test'
    - 'for_each_thread'
    - 'for_each_token'
    - 'for_each_unicast_dest_pgid'
    - 'for_each_vsi'
    - 'for_each_wakeup_source'
    - 'for_each_zone'
    - 'for_each_zone_zonelist'
    - 'for_each_zone_zonelist_nodemask'
    - 'func_for_each_insn'
    - 'fwnode_for_each_available_child_node'
    - 'fwnode_for_each_child_node'
    - 'fwnode_graph_for_each_endpoint'
    - 'gadget_for_each_ep'
    - 'genradix_for_each'
    - 'genradix_for_each_from'
    - 'hash_for_each'
    - 'hash_for_each_possible'
    - 'hash_for_each_possible_rcu'
    - 'hash_for_each_possible_rcu_notrace'
    - 'hash_for_each_possible_safe'
    - 'hash_for_each_rcu'
    - 'hash_for_each_safe'
    - 'hashmap__for_each_entry'
    - 'hashmap__for_each_entry_safe'
    - 'hashmap__for_each_key_entry'
    - 'hashmap__for_each_key_entry_safe'
    - 'hctx_for_each_ctx'
    - 'hists__for_each_format'
    - 'hists__for_each_sort_list'
    - 'hlist_bl_for_each_entry'
    - 'hlist_bl_for_each_entry_rcu'
    - 'hlist_bl_for_each_entry_safe'
    - 'hlist_for_each'
    - 'hlist_for_each_entry'
    - 'hlist_for_each_entry_continue'
    - 'hlist_for_each_entry_continue_rcu'
    - 'hlist_for_each_entry_continue_rcu_bh'
    - 'hlist_for_each_entry_from'
    - 'hlist_for_each_entry_from_rcu'
    - 'hlist_for_each_entry_rcu'
    - 'hlist_for_each_entry_rcu_bh'
    - 'hlist_for_each_entry_rcu_notrace'
    - 'hlist_for_each_entry_safe'
    - 'hlist_for_each_entry_srcu'
    - 'hlist_for_each_safe'
    - 'hlist_nulls_for_each_entry'
    - 'hlist_nulls_for_each_entry_from'
    - 'hlist_nulls_for_each_entry_rcu'
    - 'hlist_nulls_for_each_entry_safe'
    - 'i3c_bus_for_each_i2cdev'
    - 'i3c_bus_for_each_i3cdev'
    - 'idr_for_each_entry'
    - 'idr_for_each_entry_continue'
    - 'idr_for_each_entry_continue_ul'
    - 'idr_for_each_entry_ul'
    - 'in_dev_for_each_ifa_rcu'
    - 'in_dev_for_each_ifa_rtnl'
    - 'inet_bind_bucket_for_each'
    - 'inet_lhash2_for_each_icsk'
    - 'inet_lhash2_for_each_icsk_continue'
    - 'inet_lhash2_for_each_icsk_rcu'
    - 'intlist__for_each_entry'
    - 'intlist__for_each_entry_safe'
    - 'kcore_copy__for_each_phdr'
    - 'key_for_each'
    - 'key_for_each_safe'
    - 'klp_for_each_func'
    - 'klp_for_each_func_safe'
    - 'klp_for_each_func_static'
    - 'klp_for_each_object'
    - 'klp_for_each_object_safe'
    - 'klp_for_each_object_static'
    - 'kunit_suite_for_each_test_case'
    - 'kvm_for_each_memslot'
    - 'kvm_for_each_memslot_in_gfn_range'
    - 'kvm_for_each_vcpu'
    - 'libbpf_nla_for_each_attr'
    - 'list_for_each'
    - 'list_for_each_codec'
    - 'list_for_each_codec_safe'
    - 'list_for_each_continue'
    - 'list_for_each_entry'
    - 'list_for_each_entry_continue'
    - 'list_for_each_entry_continue_rcu'
    - 'list_for_each_entry_continue_reverse'
    - 'list_for_each_entry_from'
    - 'list_for_each_entry_from_rcu'
    - 'list_for_each_entry_from_reverse'
    - 'list_for_each_entry_lockless'
    - 'list_for_each_entry_rcu'
    - 'list_for_each_entry_reverse'
    - 'list_for_each_entry_safe'
    - 'list_for_each_entry_safe_continue'
    - 'list_for_each_entry_safe_from'
    - 'list_for_each_entry_safe_reverse'
    - 'list_for_each_entry_srcu'
    - 'list_for_each_from'
    - 'list_for_each_prev'
    - 'list_for_each_prev_safe'
    - 'list_for_each_safe'
    - 'llist_for_each'
    - 'llist_for_each_entry'
    - 'llist_for_each_entry_safe'
    - 'llist_for_each_safe'
    - 'map__for_each_symbol'
    - 'map__for_each_symbol_by_name'
    - 'map_for_each_event'
    - 'map_for_each_metric'
    - 'maps__for_each_entry'
    - 'maps__for_each_entry_safe'
    - 'mci_for_each_dimm'
    - 'media_device_for_each_entity'
    - 'media_device_for_each_intf'
    - 'media_device_for_each_link'
    - 'media_device_for_each_pad'
    - 'msi_for_each_desc'
    - 'nanddev_io_for_each_page'
    - 'netdev_for_each_lower_dev'
    - 'netdev_for_each_lower_private'
    - 'netdev_for_each_lower_private_rcu'
    - 'netdev_for_each_mc_addr'
    - 'netdev_for_each_uc_addr'
    - 'netdev_for_each_upper_dev_rcu'
    - 'netdev_hw_addr_list_for_each'
    - 'nft_rule_for_each_expr'
    - 'nla_for_each_attr'
    - 'nla_for_each_nested'
    - 'nlmsg_for_each_attr'
    - 'nlmsg_for_each_msg'
    - 'nr_neigh_for_each'
    - 'nr_neigh_for_each_safe'
    - 'nr_node_for_each'
    - 'nr_node_for_each_safe'
    - 'of_for_each_phandle'
    - 'of_property_for_each_string'
    - 'of_property_for_each_u32'
    - 'pci_bus_for_each_resource'
    - 'pci_doe_for_each_off'
    - 'pcl_for_each_chunk'
    - 'pcl_for_each_segment'
    - 'pcm_for_each_format'
    - 'perf_config_items__for_each_entry'
    - 'perf_config_sections__for_each_entry'
    - 'perf_config_set__for_each_entry'
    - 'perf_cpu_map__for_each_cpu'
    - 'perf_evlist__for_each_entry'
    - 'perf_evlist__for_each_entry_reverse'
    - 'perf_evlist__for_each_entry_safe'
    - 'perf_evlist__for_each_evsel'
    - 'perf_evlist__for_each_mmap'
    - 'perf_hpp_list__for_each_format'
    - 'perf_hpp_list__for_each_format_safe'
    - 'perf_hpp_list__for_each_sort_list'
    - 'perf_hpp_list__for_each_sort_list_safe'
    - 'perf_pmu__for_each_hybrid_pmu'
    - 'ping_portaddr_for_each_entry'
    - 'plist_for_each'
    - 'plist_for_each_continue'
    - 'plist_for_each_entry'
    - 'plist_for_each_entry_continue'
    - 'plist_for_each_entry_safe'
    - 'plist_for_each_safe'
    - 'pnp_for_each_card'
    - 'pnp_for_each_dev'
    - 'protocol_for_each_card'
    - 'protocol_for_each_dev'
    - 'queue_for_each_hw_ctx'
    - 'radix_tree_for_each_slot'
    - 'radix_tree_for_each_tagged'
    - 'rb_for_each'
    - 'rbtree_postorder_for_each_entry_safe'
    - 'rdma_for_each_block'
    - 'rdma_for_each_port'
    - 'rdma_umem_for_each_dma_block'
    - 'resort_rb__for_each_entry'
    - 'resource_list_for_each_entry'
    - 'resource_list_for_each_entry_safe'
    - 'rhl_for_each_entry_rcu'
    - 'rhl_for_each_rcu'
    - 'rht_for_each'
    - 'rht_for_each_entry'
    - 'rht_for_each_entry_from'
    - 'rht_for_each_entry_rcu'
    - 'rht_for_each_entry_rcu_from'
    - 'rht_for_each_entry_safe'
    - 'rht_for_each_from'
    - 'rht_for_each_rcu'
    - 'rht_for_each_rcu_from'
    - 'rq_for_each_bvec'
    - 'rq_for_each_segment'
    - 'rq_list_for_each'
    - 'rq_list_for_each_safe'
    - 'scsi_for_each_prot_sg'
    - 'scsi_for_each_sg'
    - 'sctp_for_each_hentry'
    - 'sctp_skb_for_each'
    - 'sec_for_each_insn'
    - 'sec_for_each_insn_continue'
    - 'sec_for_each_insn_from'
    - 'shdma_for_each_chan'
    - 'shost_for_each_device'
    - 'sk_for_each'
    - 'sk_for_each_bound'
    - 'sk_for_each_entry_offset_rcu'
    - 'sk_for_each_from'
    - 'sk_for_each_rcu'
    - 'sk_for_each_safe'
    - 'sk_nulls_for_each'
    - 'sk_nulls_for_each_from'
    - 'sk_nulls_for_each_rcu'
    - 'snd_array_for_each'
    - 'snd_pcm_group_for_each_entry'
    - 'snd_soc_dapm_widget_for_each_path'
    - 'snd_soc_dapm_widget_for_each_path_safe'
    - 'snd_soc_dapm_widget_for_each_sink_path'
    - 'snd_soc_dapm_widget_for_each_source_path'
    - 'strlist__for_each_entry'
    - 'strlist__for_each_entry_safe'
    - 'sym_for_each_insn'
    - 'sym_for_each_insn_continue_reverse'
    - 'symbols__for_each_entry'
    - 'tb_property_for_each'
    - 'tcf_act_for_each_action'
    - 'tcf_exts_for_each_action'
    - 'udp_portaddr_for_each_entry'
    - 'udp_portaddr_for_each_entry_rcu'
    - 'usb_hub_for_each_child'
    - 'v4l2_device_for_each_subdev'
    - 'v4l2_m2m_for_each_dst_buf'
    - 'v4l2_m2m_for_each_dst_buf_safe'
    - 'v4l2_m2m_for_each_src_buf'
    - 'v4l2_m2m_for_each_src_buf_safe'
    - 'virtio_device_for_each_vq'
    - 'while_for_each_ftrace_op'
    - 'xa_for_each'
    - 'xa_for_each_marked'
    - 'xa_for_each_range'
    - 'xa_for_each_start'
    - 'xas_for_each'
    - 'xas_for_each_conflict'
    - 'xas_for_each_marked'
    - 'xbc_array_for_each_value'
    - 'xbc_for_each_key_value'
    - 'xbc_node_for_each_array_value'
    - 'xbc_node_for_each_child'
    - 'xbc_node_for_each_key_value'
    - 'xbc_node_for_each_subkey'
    - 'zorro_for_each_dev'
    IncludeBlocks: Preserve
    IncludeCategories:
    - Regex: '.*'
    Priority: 1
    IncludeIsMainRegex: '(Test)?$'
    IndentCaseLabels: false
    IndentGotoLabels: false
    IndentPPDirectives: None
    IndentWidth: 8
    IndentWrappedFunctionNames: false
    JavaScriptQuotes: Leave
    JavaScriptWrapImports: true
    KeepEmptyLinesAtTheStartOfBlocks: false
    MacroBlockBegin: ''
    MacroBlockEnd: ''
    MaxEmptyLinesToKeep: 1
    NamespaceIndentation: None
    ObjCBinPackProtocolList: Auto
    ObjCBlockIndentWidth: 8
    ObjCSpaceAfterProperty: true
    ObjCSpaceBeforeProtocolList: true
    # Taken from git's rules
    PenaltyBreakAssignment: 10
    PenaltyBreakBeforeFirstCallParameter: 30
    PenaltyBreakComment: 10
    PenaltyBreakFirstLessLess: 0
    PenaltyBreakString: 10
    PenaltyExcessCharacter: 100
    PenaltyReturnTypeOnItsOwnLine: 60
    PointerAlignment: Right
    ReflowComments: false
    SortIncludes: false
    SortUsingDeclarations: false
    SpaceAfterCStyleCast: false
    SpaceAfterTemplateKeyword: true
    SpaceBeforeAssignmentOperators: true
    SpaceBeforeCtorInitializerColon: true
    SpaceBeforeInheritanceColon: true
    SpaceBeforeParens: ControlStatementsExceptForEachMacros
    SpaceBeforeRangeBasedForLoopColon: true
    SpaceInEmptyParentheses: false
    SpacesBeforeTrailingComments: 1
    SpacesInAngles: false
    SpacesInContainerLiterals: false
    SpacesInCStyleCastParentheses: false
    SpacesInParentheses: false
    SpacesInSquareBrackets: false
    Standard: Cpp03
    TabWidth: 8
    UseTab: Always
    ...