* [igt-dev] [PATCH i-g-t] tooling: Add linux's .clang-format @ 2022-07-26 19:01 Jim Shargo 2022-07-27 10:52 ` Petri Latvala 0 siblings, 1 reply; 15+ messages in thread From: Jim Shargo @ 2022-07-26 19:01 UTC (permalink / raw) To: Development mailing list for IGT GPU Tools, Petri Latvala, Arkadiusz Hiler Cc: Jim Shargo As I was authoring my first patchset for IGT, I found myself fighting the tooling a bit to get everything right. I had to add a bunch of extra command line args to use my linux checkout's formatting rules to get the style right. I grabbed this from a recent checkout of torvald's repo. The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e I've also updated CONTRIBUTING.md with a link to git-clang-format, which is a useful tool for using clang-format from git just on a commit's changes. Signed-off-by: Jim Shargo <jshargo@chromium.org> --- .clang-format | 682 ++++++++++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 8 +- 2 files changed, 687 insertions(+), 3 deletions(-) create mode 100644 .clang-format diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..9b87ea1f --- /dev/null +++ b/.clang-format @@ -0,0 +1,682 @@ +# 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: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +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 + 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' + - '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 +... diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6d1294ad..8d7320b7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,8 +10,9 @@ improvements for documentation and new tools and testcases. The Code -------- -- The code should follow kernel coding style: - https://www.kernel.org/doc/html/latest/process/coding-style.html +- The code should follow [kernel coding style](coding-style). Before + sending out a patch, changes can be formatted with + [git-clang-format](git-clang-format). - Testcases (subtests) have to use minus signs (-) as a word separator. The generated documentation contains glossary of commonly used terms. @@ -30,9 +31,10 @@ The Code provided by the igt library. The semantic patch lib/igt.cocci can help with more automatic conversions. +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe - Sending Patches --------------- -- 2.37.1.359.gd136c6c3e2-goog ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t] tooling: Add linux's .clang-format 2022-07-26 19:01 [igt-dev] [PATCH i-g-t] tooling: Add linux's .clang-format Jim Shargo @ 2022-07-27 10:52 ` Petri Latvala 2022-07-27 20:10 ` Jim Shargo ` (3 more replies) 0 siblings, 4 replies; 15+ messages in thread From: Petri Latvala @ 2022-07-27 10:52 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools On Tue, Jul 26, 2022 at 03:01:00PM -0400, Jim Shargo wrote: > As I was authoring my first patchset for IGT, I found myself fighting > the tooling a bit to get everything right. I had to add a bunch of extra > command line args to use my linux checkout's formatting rules to get the > style right. > > I grabbed this from a recent checkout of torvald's repo. > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > I've also updated CONTRIBUTING.md with a link to git-clang-format, which > is a useful tool for using clang-format from git just on a commit's > changes. > > Signed-off-by: Jim Shargo <jshargo@chromium.org> I tried to get a clang-format configuration together myself some years ago and absolutely failed. This is getting closer to being useful! Some incorrectness I found: /* * multiline comments are indented * weirdly. Or rather aligned weirdly. */ igt_subtest_group, igt_subtest, igt_until_timeout blocks have their { incorrectly placed, should be on the same line like with for loops, instead of on their own line. Since you're adding pointers to the tooling in CONTRIBUTING (thanks for that!) can you also add a note about the .editorconfig file? I suspect many new people haven't even realized it's there... -- Petri Latvala > --- > .clang-format | 682 ++++++++++++++++++++++++++++++++++++++++++++++++ > CONTRIBUTING.md | 8 +- > 2 files changed, 687 insertions(+), 3 deletions(-) > create mode 100644 .clang-format > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 00000000..9b87ea1f > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,682 @@ > +# 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: Align > +AlignConsecutiveAssignments: false > +AlignConsecutiveDeclarations: false > +AlignEscapedNewlines: Left > +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 > + 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' > + - '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 > +... > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > index 6d1294ad..8d7320b7 100644 > --- a/CONTRIBUTING.md > +++ b/CONTRIBUTING.md > @@ -10,8 +10,9 @@ improvements for documentation and new tools and testcases. > The Code > -------- > > -- The code should follow kernel coding style: > - https://www.kernel.org/doc/html/latest/process/coding-style.html > +- The code should follow [kernel coding style](coding-style). Before > + sending out a patch, changes can be formatted with > + [git-clang-format](git-clang-format). > > - Testcases (subtests) have to use minus signs (-) as a word separator. > The generated documentation contains glossary of commonly used terms. > @@ -30,9 +31,10 @@ The Code > provided by the igt library. The semantic patch lib/igt.cocci can help with > more automatic conversions. > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > - > Sending Patches > --------------- > > -- > 2.37.1.359.gd136c6c3e2-goog > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t] tooling: Add linux's .clang-format 2022-07-27 10:52 ` Petri Latvala @ 2022-07-27 20:10 ` Jim Shargo 2022-07-27 20:21 ` [igt-dev] [PATCH i-g-t v2] " Jim Shargo ` (2 subsequent siblings) 3 siblings, 0 replies; 15+ messages in thread From: Jim Shargo @ 2022-07-27 20:10 UTC (permalink / raw) To: Petri Latvala; +Cc: Jim Shargo, Development mailing list for IGT GPU Tools Thanks for the kind, quick, and thoughtful review! I think I figured out the tricks to make these things work. Follow-up incoming. Also, when updating the file, I found it really nice to use `watch` to compare and eval the changes: $ watch -n1 "sdiff format-test.c <(clang-format format-test.c)" or $ watch -n1 "cat format-test.c; clang-format format-test.c" On Wed, Jul 27, 2022 at 6:55 AM Petri Latvala <petri.latvala@intel.com> wrote: > > On Tue, Jul 26, 2022 at 03:01:00PM -0400, Jim Shargo wrote: > > As I was authoring my first patchset for IGT, I found myself fighting > > the tooling a bit to get everything right. I had to add a bunch of extra > > command line args to use my linux checkout's formatting rules to get the > > style right. > > > > I grabbed this from a recent checkout of torvald's repo. > > > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > > > I've also updated CONTRIBUTING.md with a link to git-clang-format, which > > is a useful tool for using clang-format from git just on a commit's > > changes. > > > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > > > > I tried to get a clang-format configuration together myself some years > ago and absolutely failed. This is getting closer to being useful! > > Some incorrectness I found: > > /* > * multiline comments are indented > * weirdly. Or rather aligned weirdly. > */ > > igt_subtest_group, igt_subtest, igt_until_timeout blocks have their { > incorrectly placed, should be on the same line like with for loops, > instead of on their own line. > > Since you're adding pointers to the tooling in CONTRIBUTING (thanks > for that!) can you also add a note about the .editorconfig file? I > suspect many new people haven't even realized it's there... > > > -- > Petri Latvala > > > > --- > > .clang-format | 682 ++++++++++++++++++++++++++++++++++++++++++++++++ > > CONTRIBUTING.md | 8 +- > > 2 files changed, 687 insertions(+), 3 deletions(-) > > create mode 100644 .clang-format > > > > diff --git a/.clang-format b/.clang-format > > new file mode 100644 > > index 00000000..9b87ea1f > > --- /dev/null > > +++ b/.clang-format > > @@ -0,0 +1,682 @@ > > +# 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: Align > > +AlignConsecutiveAssignments: false > > +AlignConsecutiveDeclarations: false > > +AlignEscapedNewlines: Left > > +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 > > + 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' > > + - '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 > > +... > > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > > index 6d1294ad..8d7320b7 100644 > > --- a/CONTRIBUTING.md > > +++ b/CONTRIBUTING.md > > @@ -10,8 +10,9 @@ improvements for documentation and new tools and testcases. > > The Code > > -------- > > > > -- The code should follow kernel coding style: > > - https://www.kernel.org/doc/html/latest/process/coding-style.html > > +- The code should follow [kernel coding style](coding-style). Before > > + sending out a patch, changes can be formatted with > > + [git-clang-format](git-clang-format). > > > > - Testcases (subtests) have to use minus signs (-) as a word separator. > > The generated documentation contains glossary of commonly used terms. > > @@ -30,9 +31,10 @@ The Code > > provided by the igt library. The semantic patch lib/igt.cocci can help with > > more automatic conversions. > > > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > > > - > > Sending Patches > > --------------- > > > > -- > > 2.37.1.359.gd136c6c3e2-goog > > ^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] [PATCH i-g-t v2] tooling: Add linux's .clang-format 2022-07-27 10:52 ` Petri Latvala 2022-07-27 20:10 ` Jim Shargo @ 2022-07-27 20:21 ` Jim Shargo 2022-07-28 7:55 ` Petri Latvala 2022-07-29 9:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tooling: Add linux's .clang-format (rev3) Patchwork 2022-07-29 10:38 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 3 siblings, 1 reply; 15+ messages in thread From: Jim Shargo @ 2022-07-27 20:21 UTC (permalink / raw) To: Development mailing list for IGT GPU Tools, Petri Latvala, Arkadiusz Hiler Cc: Jim Shargo As I was authoring my first patchset for IGT, I found myself fighting the tooling a bit to get everything right. I had to add a bunch of extra command line args to use my linux checkout's formatting rules to get the style right. I grabbed this from a recent checkout of torvald's repo. The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e To make this discoverable to new contributors, this change: - Updates CONTRIBUTING.md with a link to git-clang-format, which is a useful tool for using clang-format from git just on a commit's changes. - Updates .editorconfig with a reference to .clang-format and a pointer to CONTRIBUTING.md Changes made to the linux kernel style: - Reflowing comments, including multi-line comments (ReflowComments) - Support for magic code blocks (ForEachMacros, IfMacros) Signed-off-by: Jim Shargo <jshargo@chromium.org> --- V1 -> V2: Better support for IGT style and addressing comments .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ .editorconfig | 6 +- CONTRIBUTING.md | 8 ++- 3 files changed, 185 insertions(+), 5 deletions(-) create mode 100644 .clang-format diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..da42bead --- /dev/null +++ b/.clang-format @@ -0,0 +1,176 @@ +# 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 +# +# This file was pulled from the linux kernel at revision +# e0dccc3b76fb35bb257b4118367a883073d7390e. +# +# Changes made for IGT-specific styles should include a comment noting +# the previous value with "kernel-value". This makes it clear what we +# want to keep when updating this file. +--- +AccessModifierOffset: -4 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +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 + 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: # kernel-value: (long list removed) + # IGT rules, found via: + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | + # sed "s,^#define \([^(]\+\).*,'\1'," | + # grep -v "__" | + # sort -u + - 'for_each_collection_data' + - 'for_each_combination' + - 'for_each_connected_output' + - 'for_each_connector_mode' + - 'for_each_ctx_cfg_engine' + - 'for_each_ctx_engine' + - 'for_each_format' + - 'for_each_if' + - 'for_each_memory_region' + - 'for_each_mmap_offset_type' + - 'for_each_physical_engine' + - 'for_each_physical_ring' + - 'for_each_pipe' + - 'for_each_pipe_static' + - 'for_each_pipe_with_single_output' + - 'for_each_pipe_with_valid_output' + - 'for_each_plane_on_pipe' + - 'for_each_prime_number' + - 'for_each_ring' + - 'for_each_subset' + - 'for_each_sysfs_gt_dirfd' + - 'for_each_sysfs_gt_path' + - 'for_each_valid_output_on_pipe' + - 'for_each_variation_nr' + - 'for_each_variation_r' + - 'igt_list_for_each_entry' + - 'igt_list_for_each_entry_reverse' + - 'igt_list_for_each_entry_safe' + - 'igt_list_for_each_entry_safe_reverse' + +IfMacros: # kernel-value: none + - 'igt_dynamic' + - 'igt_fixture' + - 'igt_fork' + - 'igt_subtest' + - 'igt_subtest_f' + - 'igt_subtest_group' + - 'igt_subtest_with_dynamic' + - 'igt_subtest_with_dynamic_f' + - 'igt_until_timeout' + +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: true # kernel-value: 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 +... diff --git a/.editorconfig b/.editorconfig index 7b7f1375..5c7e31d3 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,5 +1,7 @@ -# To use this config in your editor, follow the instructions at: -# http://editorconfig.org +# To use this config in your editor, follow the instructions at +# http://editorconfig.org. You can also use "clang-format" for new C +# code (see CONTRIBUTING.md for suggestions and .clang-format for more +# details). root = true diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6d1294ad..8d7320b7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,8 +10,9 @@ improvements for documentation and new tools and testcases. The Code -------- -- The code should follow kernel coding style: - https://www.kernel.org/doc/html/latest/process/coding-style.html +- The code should follow [kernel coding style](coding-style). Before + sending out a patch, changes can be formatted with + [git-clang-format](git-clang-format). - Testcases (subtests) have to use minus signs (-) as a word separator. The generated documentation contains glossary of commonly used terms. @@ -30,9 +31,10 @@ The Code provided by the igt library. The semantic patch lib/igt.cocci can help with more automatic conversions. +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe - Sending Patches --------------- -- 2.37.1.359.gd136c6c3e2-goog ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2] tooling: Add linux's .clang-format 2022-07-27 20:21 ` [igt-dev] [PATCH i-g-t v2] " Jim Shargo @ 2022-07-28 7:55 ` Petri Latvala 2022-07-28 17:55 ` Jim Shargo 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo 0 siblings, 2 replies; 15+ messages in thread From: Petri Latvala @ 2022-07-28 7:55 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools On Wed, Jul 27, 2022 at 04:21:25PM -0400, Jim Shargo wrote: > As I was authoring my first patchset for IGT, I found myself fighting > the tooling a bit to get everything right. I had to add a bunch of extra > command line args to use my linux checkout's formatting rules to get the > style right. > > I grabbed this from a recent checkout of torvald's repo. > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > To make this discoverable to new contributors, this change: > > - Updates CONTRIBUTING.md with a link to git-clang-format, which is > a useful tool for using clang-format from git just on a commit's > changes. > - Updates .editorconfig with a reference to .clang-format and a > pointer to CONTRIBUTING.md > > Changes made to the linux kernel style: > > - Reflowing comments, including multi-line comments (ReflowComments) > - Support for magic code blocks (ForEachMacros, IfMacros) > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > --- > V1 -> V2: Better support for IGT style and addressing comments > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > .editorconfig | 6 +- > CONTRIBUTING.md | 8 ++- > 3 files changed, 185 insertions(+), 5 deletions(-) > create mode 100644 .clang-format > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 00000000..da42bead > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,176 @@ > +# 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 > +# > +# This file was pulled from the linux kernel at revision > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > +# > +# Changes made for IGT-specific styles should include a comment noting > +# the previous value with "kernel-value". This makes it clear what we > +# want to keep when updating this file. > +--- > +AccessModifierOffset: -4 > +AlignAfterOpenBracket: Align > +AlignConsecutiveAssignments: false > +AlignConsecutiveDeclarations: false > +AlignEscapedNewlines: Left > +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 > + 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: # kernel-value: (long list removed) > + # IGT rules, found via: > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | > + # sed "s,^#define \([^(]\+\).*,'\1'," | > + # grep -v "__" | > + # sort -u > + - 'for_each_collection_data' > + - 'for_each_combination' > + - 'for_each_connected_output' > + - 'for_each_connector_mode' > + - 'for_each_ctx_cfg_engine' > + - 'for_each_ctx_engine' > + - 'for_each_format' > + - 'for_each_if' > + - 'for_each_memory_region' > + - 'for_each_mmap_offset_type' > + - 'for_each_physical_engine' > + - 'for_each_physical_ring' > + - 'for_each_pipe' > + - 'for_each_pipe_static' > + - 'for_each_pipe_with_single_output' > + - 'for_each_pipe_with_valid_output' > + - 'for_each_plane_on_pipe' > + - 'for_each_prime_number' > + - 'for_each_ring' > + - 'for_each_subset' > + - 'for_each_sysfs_gt_dirfd' > + - 'for_each_sysfs_gt_path' > + - 'for_each_valid_output_on_pipe' > + - 'for_each_variation_nr' > + - 'for_each_variation_r' > + - 'igt_list_for_each_entry' > + - 'igt_list_for_each_entry_reverse' > + - 'igt_list_for_each_entry_safe' > + - 'igt_list_for_each_entry_safe_reverse' > + > +IfMacros: # kernel-value: none > + - 'igt_dynamic' > + - 'igt_fixture' > + - 'igt_fork' > + - 'igt_subtest' > + - 'igt_subtest_f' > + - 'igt_subtest_group' > + - 'igt_subtest_with_dynamic' > + - 'igt_subtest_with_dynamic_f' > + - 'igt_until_timeout' > + > +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: true # kernel-value: 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 > +... > diff --git a/.editorconfig b/.editorconfig > index 7b7f1375..5c7e31d3 100644 > --- a/.editorconfig > +++ b/.editorconfig > @@ -1,5 +1,7 @@ > -# To use this config in your editor, follow the instructions at: > -# http://editorconfig.org > +# To use this config in your editor, follow the instructions at > +# http://editorconfig.org. You can also use "clang-format" for new C > +# code (see CONTRIBUTING.md for suggestions and .clang-format for more > +# details). > > root = true > > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > index 6d1294ad..8d7320b7 100644 > --- a/CONTRIBUTING.md > +++ b/CONTRIBUTING.md > @@ -10,8 +10,9 @@ improvements for documentation and new tools and testcases. > The Code > -------- > > -- The code should follow kernel coding style: > - https://www.kernel.org/doc/html/latest/process/coding-style.html > +- The code should follow [kernel coding style](coding-style). Before > + sending out a patch, changes can be formatted with > + [git-clang-format](git-clang-format). I meant pointing to .editorconfig here. -- Petri Latvala > > - Testcases (subtests) have to use minus signs (-) as a word separator. > The generated documentation contains glossary of commonly used terms. > @@ -30,9 +31,10 @@ The Code > provided by the igt library. The semantic patch lib/igt.cocci can help with > more automatic conversions. > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > - > Sending Patches > --------------- > > -- > 2.37.1.359.gd136c6c3e2-goog > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v2] tooling: Add linux's .clang-format 2022-07-28 7:55 ` Petri Latvala @ 2022-07-28 17:55 ` Jim Shargo 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo 1 sibling, 0 replies; 15+ messages in thread From: Jim Shargo @ 2022-07-28 17:55 UTC (permalink / raw) To: Petri Latvala; +Cc: Jim Shargo, Development mailing list for IGT GPU Tools [-- Attachment #1: Type: text/plain, Size: 9510 bytes --] Ah! Gotcha. v3 incoming. On Thu, Jul 28, 2022 at 3:59 AM Petri Latvala <petri.latvala@intel.com> wrote: > On Wed, Jul 27, 2022 at 04:21:25PM -0400, Jim Shargo wrote: > > As I was authoring my first patchset for IGT, I found myself fighting > > the tooling a bit to get everything right. I had to add a bunch of extra > > command line args to use my linux checkout's formatting rules to get the > > style right. > > > > I grabbed this from a recent checkout of torvald's repo. > > > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > > > To make this discoverable to new contributors, this change: > > > > - Updates CONTRIBUTING.md with a link to git-clang-format, which is > > a useful tool for using clang-format from git just on a commit's > > changes. > > - Updates .editorconfig with a reference to .clang-format and a > > pointer to CONTRIBUTING.md > > > > Changes made to the linux kernel style: > > > > - Reflowing comments, including multi-line comments (ReflowComments) > > - Support for magic code blocks (ForEachMacros, IfMacros) > > > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > > --- > > V1 -> V2: Better support for IGT style and addressing comments > > > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > > .editorconfig | 6 +- > > CONTRIBUTING.md | 8 ++- > > 3 files changed, 185 insertions(+), 5 deletions(-) > > create mode 100644 .clang-format > > > > diff --git a/.clang-format b/.clang-format > > new file mode 100644 > > index 00000000..da42bead > > --- /dev/null > > +++ b/.clang-format > > @@ -0,0 +1,176 @@ > > +# 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 > > +# > > +# This file was pulled from the linux kernel at revision > > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > > +# > > +# Changes made for IGT-specific styles should include a comment noting > > +# the previous value with "kernel-value". This makes it clear what we > > +# want to keep when updating this file. > > +--- > > +AccessModifierOffset: -4 > > +AlignAfterOpenBracket: Align > > +AlignConsecutiveAssignments: false > > +AlignConsecutiveDeclarations: false > > +AlignEscapedNewlines: Left > > +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 > > + 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: # kernel-value: (long list removed) > > + # IGT rules, found via: > > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ > lib/ | > > + # sed "s,^#define \([^(]\+\).*,'\1'," | > > + # grep -v "__" | > > + # sort -u > > + - 'for_each_collection_data' > > + - 'for_each_combination' > > + - 'for_each_connected_output' > > + - 'for_each_connector_mode' > > + - 'for_each_ctx_cfg_engine' > > + - 'for_each_ctx_engine' > > + - 'for_each_format' > > + - 'for_each_if' > > + - 'for_each_memory_region' > > + - 'for_each_mmap_offset_type' > > + - 'for_each_physical_engine' > > + - 'for_each_physical_ring' > > + - 'for_each_pipe' > > + - 'for_each_pipe_static' > > + - 'for_each_pipe_with_single_output' > > + - 'for_each_pipe_with_valid_output' > > + - 'for_each_plane_on_pipe' > > + - 'for_each_prime_number' > > + - 'for_each_ring' > > + - 'for_each_subset' > > + - 'for_each_sysfs_gt_dirfd' > > + - 'for_each_sysfs_gt_path' > > + - 'for_each_valid_output_on_pipe' > > + - 'for_each_variation_nr' > > + - 'for_each_variation_r' > > + - 'igt_list_for_each_entry' > > + - 'igt_list_for_each_entry_reverse' > > + - 'igt_list_for_each_entry_safe' > > + - 'igt_list_for_each_entry_safe_reverse' > > + > > +IfMacros: # kernel-value: none > > + - 'igt_dynamic' > > + - 'igt_fixture' > > + - 'igt_fork' > > + - 'igt_subtest' > > + - 'igt_subtest_f' > > + - 'igt_subtest_group' > > + - 'igt_subtest_with_dynamic' > > + - 'igt_subtest_with_dynamic_f' > > + - 'igt_until_timeout' > > + > > +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: true # kernel-value: 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 > > +... > > diff --git a/.editorconfig b/.editorconfig > > index 7b7f1375..5c7e31d3 100644 > > --- a/.editorconfig > > +++ b/.editorconfig > > @@ -1,5 +1,7 @@ > > -# To use this config in your editor, follow the instructions at: > > -# http://editorconfig.org > > +# To use this config in your editor, follow the instructions at > > +# http://editorconfig.org. You can also use "clang-format" for new C > > +# code (see CONTRIBUTING.md for suggestions and .clang-format for more > > +# details). > > > > root = true > > > > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > > index 6d1294ad..8d7320b7 100644 > > --- a/CONTRIBUTING.md > > +++ b/CONTRIBUTING.md > > @@ -10,8 +10,9 @@ improvements for documentation and new tools and > testcases. > > The Code > > -------- > > > > -- The code should follow kernel coding style: > > - https://www.kernel.org/doc/html/latest/process/coding-style.html > > +- The code should follow [kernel coding style](coding-style). Before > > + sending out a patch, changes can be formatted with > > + [git-clang-format](git-clang-format). > > I meant pointing to .editorconfig here. > > > -- > Petri Latvala > > > > > > - Testcases (subtests) have to use minus signs (-) as a word separator. > > The generated documentation contains glossary of commonly used terms. > > @@ -30,9 +31,10 @@ The Code > > provided by the igt library. The semantic patch lib/igt.cocci can > help with > > more automatic conversions. > > > > +[coding-style]: > https://www.kernel.org/doc/html/latest/process/coding-style.html > > +[git-clang-format]: > https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > > [igt-describe]: > https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > > > - > > Sending Patches > > --------------- > > > > -- > > 2.37.1.359.gd136c6c3e2-goog > > > [-- Attachment #2: Type: text/html, Size: 12864 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-07-28 7:55 ` Petri Latvala 2022-07-28 17:55 ` Jim Shargo @ 2022-07-28 17:57 ` Jim Shargo 2022-08-12 12:53 ` Petri Latvala ` (2 more replies) 1 sibling, 3 replies; 15+ messages in thread From: Jim Shargo @ 2022-07-28 17:57 UTC (permalink / raw) To: Development mailing list for IGT GPU Tools, Petri Latvala, Arkadiusz Hiler Cc: Jim Shargo As I was authoring my first patchset for IGT, I found myself fighting the tooling a bit to get everything right. I had to add a bunch of extra command line args to use my linux checkout's formatting rules to get the style right. I grabbed this from a recent checkout of torvald's repo. The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e To make this discoverable to new contributors, this change also updates CONTRIBUTING.md with: - A link to git-clang-format, which is a useful tool for using clang-format from git just on a commit's changes - A link to .editorconfig to make it more discoverable Changes made to the linux kernel style: - Reflowing comments, including multi-line comments (ReflowComments) - Support for magic code blocks (ForEachMacros, IfMacros) Signed-off-by: Jim Shargo <jshargo@chromium.org> --- V2 -> V3: Update CONTRIBUTING.md with a note about .editorconfig, remove reference to .clang-format from the .editorconfig V1 -> V2: Better support for IGT style and addressing comments .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 9 ++- 2 files changed, 182 insertions(+), 3 deletions(-) create mode 100644 .clang-format diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..da42bead --- /dev/null +++ b/.clang-format @@ -0,0 +1,176 @@ +# 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 +# +# This file was pulled from the linux kernel at revision +# e0dccc3b76fb35bb257b4118367a883073d7390e. +# +# Changes made for IGT-specific styles should include a comment noting +# the previous value with "kernel-value". This makes it clear what we +# want to keep when updating this file. +--- +AccessModifierOffset: -4 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +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 + 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: # kernel-value: (long list removed) + # IGT rules, found via: + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | + # sed "s,^#define \([^(]\+\).*,'\1'," | + # grep -v "__" | + # sort -u + - 'for_each_collection_data' + - 'for_each_combination' + - 'for_each_connected_output' + - 'for_each_connector_mode' + - 'for_each_ctx_cfg_engine' + - 'for_each_ctx_engine' + - 'for_each_format' + - 'for_each_if' + - 'for_each_memory_region' + - 'for_each_mmap_offset_type' + - 'for_each_physical_engine' + - 'for_each_physical_ring' + - 'for_each_pipe' + - 'for_each_pipe_static' + - 'for_each_pipe_with_single_output' + - 'for_each_pipe_with_valid_output' + - 'for_each_plane_on_pipe' + - 'for_each_prime_number' + - 'for_each_ring' + - 'for_each_subset' + - 'for_each_sysfs_gt_dirfd' + - 'for_each_sysfs_gt_path' + - 'for_each_valid_output_on_pipe' + - 'for_each_variation_nr' + - 'for_each_variation_r' + - 'igt_list_for_each_entry' + - 'igt_list_for_each_entry_reverse' + - 'igt_list_for_each_entry_safe' + - 'igt_list_for_each_entry_safe_reverse' + +IfMacros: # kernel-value: none + - 'igt_dynamic' + - 'igt_fixture' + - 'igt_fork' + - 'igt_subtest' + - 'igt_subtest_f' + - 'igt_subtest_group' + - 'igt_subtest_with_dynamic' + - 'igt_subtest_with_dynamic_f' + - 'igt_until_timeout' + +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: true # kernel-value: 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 +... diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6d1294ad..f2af5a18 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,8 +10,10 @@ improvements for documentation and new tools and testcases. The Code -------- -- The code should follow kernel coding style: - https://www.kernel.org/doc/html/latest/process/coding-style.html +- The code should follow [kernel coding style](coding-style). Before + sending out a patch, changes can be formatted with + [git-clang-format](git-clang-format). Editors can be configured + using .editorconfig for additional style support. - Testcases (subtests) have to use minus signs (-) as a word separator. The generated documentation contains glossary of commonly used terms. @@ -30,9 +32,10 @@ The Code provided by the igt library. The semantic patch lib/igt.cocci can help with more automatic conversions. +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe - Sending Patches --------------- -- 2.37.1.455.g008518b4e5-goog ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo @ 2022-08-12 12:53 ` Petri Latvala 2022-08-12 16:00 ` Jim Shargo 2022-08-23 11:01 ` Petri Latvala 2023-08-31 17:03 ` Mauro Carvalho Chehab 2 siblings, 1 reply; 15+ messages in thread From: Petri Latvala @ 2022-08-12 12:53 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools On Thu, Jul 28, 2022 at 01:57:36PM -0400, Jim Shargo wrote: > As I was authoring my first patchset for IGT, I found myself fighting > the tooling a bit to get everything right. I had to add a bunch of extra > command line args to use my linux checkout's formatting rules to get the > style right. > > I grabbed this from a recent checkout of torvald's repo. > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > To make this discoverable to new contributors, this change also > updates CONTRIBUTING.md with: > > - A link to git-clang-format, which is a useful tool for using > clang-format from git just on a commit's changes > - A link to .editorconfig to make it more discoverable > > Changes made to the linux kernel style: > > - Reflowing comments, including multi-line comments (ReflowComments) > - Support for magic code blocks (ForEachMacros, IfMacros) > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > --- > V2 -> V3: Update CONTRIBUTING.md with a note about .editorconfig, > remove reference to .clang-format from the .editorconfig > V1 -> V2: Better support for IGT style and addressing comments > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > CONTRIBUTING.md | 9 ++- > 2 files changed, 182 insertions(+), 3 deletions(-) > create mode 100644 .clang-format > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 00000000..da42bead > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,176 @@ > +# 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 > +# > +# This file was pulled from the linux kernel at revision > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > +# > +# Changes made for IGT-specific styles should include a comment noting > +# the previous value with "kernel-value". This makes it clear what we > +# want to keep when updating this file. > +--- > +AccessModifierOffset: -4 > +AlignAfterOpenBracket: Align > +AlignConsecutiveAssignments: false > +AlignConsecutiveDeclarations: false > +AlignEscapedNewlines: Left > +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 > + 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: # kernel-value: (long list removed) > + # IGT rules, found via: > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | > + # sed "s,^#define \([^(]\+\).*,'\1'," | > + # grep -v "__" | > + # sort -u > + - 'for_each_collection_data' > + - 'for_each_combination' > + - 'for_each_connected_output' > + - 'for_each_connector_mode' > + - 'for_each_ctx_cfg_engine' > + - 'for_each_ctx_engine' > + - 'for_each_format' > + - 'for_each_if' > + - 'for_each_memory_region' > + - 'for_each_mmap_offset_type' > + - 'for_each_physical_engine' > + - 'for_each_physical_ring' > + - 'for_each_pipe' > + - 'for_each_pipe_static' > + - 'for_each_pipe_with_single_output' > + - 'for_each_pipe_with_valid_output' > + - 'for_each_plane_on_pipe' > + - 'for_each_prime_number' > + - 'for_each_ring' > + - 'for_each_subset' > + - 'for_each_sysfs_gt_dirfd' > + - 'for_each_sysfs_gt_path' > + - 'for_each_valid_output_on_pipe' > + - 'for_each_variation_nr' > + - 'for_each_variation_r' > + - 'igt_list_for_each_entry' > + - 'igt_list_for_each_entry_reverse' > + - 'igt_list_for_each_entry_safe' > + - 'igt_list_for_each_entry_safe_reverse' > + > +IfMacros: # kernel-value: none > + - 'igt_dynamic' > + - 'igt_fixture' > + - 'igt_fork' > + - 'igt_subtest' > + - 'igt_subtest_f' > + - 'igt_subtest_group' > + - 'igt_subtest_with_dynamic' > + - 'igt_subtest_with_dynamic_f' > + - 'igt_until_timeout' What version of clang-format is needed for IfMacros? -- Petri Latvala > + > +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: true # kernel-value: 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 > +... > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > index 6d1294ad..f2af5a18 100644 > --- a/CONTRIBUTING.md > +++ b/CONTRIBUTING.md > @@ -10,8 +10,10 @@ improvements for documentation and new tools and testcases. > The Code > -------- > > -- The code should follow kernel coding style: > - https://www.kernel.org/doc/html/latest/process/coding-style.html > +- The code should follow [kernel coding style](coding-style). Before > + sending out a patch, changes can be formatted with > + [git-clang-format](git-clang-format). Editors can be configured > + using .editorconfig for additional style support. > > - Testcases (subtests) have to use minus signs (-) as a word separator. > The generated documentation contains glossary of commonly used terms. > @@ -30,9 +32,10 @@ The Code > provided by the igt library. The semantic patch lib/igt.cocci can help with > more automatic conversions. > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > - > Sending Patches > --------------- > > -- > 2.37.1.455.g008518b4e5-goog > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-08-12 12:53 ` Petri Latvala @ 2022-08-12 16:00 ` Jim Shargo 2022-08-19 14:23 ` Jim Shargo 0 siblings, 1 reply; 15+ messages in thread From: Jim Shargo @ 2022-08-12 16:00 UTC (permalink / raw) To: Petri Latvala; +Cc: Jim Shargo, Development mailing list for IGT GPU Tools It appears to be 13: https://clang.llvm.org/docs/ClangFormatStyleOptions.html On Fri, Aug 12, 2022 at 8:54 AM Petri Latvala <petri.latvala@intel.com> wrote: > > On Thu, Jul 28, 2022 at 01:57:36PM -0400, Jim Shargo wrote: > > As I was authoring my first patchset for IGT, I found myself fighting > > the tooling a bit to get everything right. I had to add a bunch of extra > > command line args to use my linux checkout's formatting rules to get the > > style right. > > > > I grabbed this from a recent checkout of torvald's repo. > > > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > > > To make this discoverable to new contributors, this change also > > updates CONTRIBUTING.md with: > > > > - A link to git-clang-format, which is a useful tool for using > > clang-format from git just on a commit's changes > > - A link to .editorconfig to make it more discoverable > > > > Changes made to the linux kernel style: > > > > - Reflowing comments, including multi-line comments (ReflowComments) > > - Support for magic code blocks (ForEachMacros, IfMacros) > > > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > > --- > > V2 -> V3: Update CONTRIBUTING.md with a note about .editorconfig, > > remove reference to .clang-format from the .editorconfig > > V1 -> V2: Better support for IGT style and addressing comments > > > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > > CONTRIBUTING.md | 9 ++- > > 2 files changed, 182 insertions(+), 3 deletions(-) > > create mode 100644 .clang-format > > > > diff --git a/.clang-format b/.clang-format > > new file mode 100644 > > index 00000000..da42bead > > --- /dev/null > > +++ b/.clang-format > > @@ -0,0 +1,176 @@ > > +# 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 > > +# > > +# This file was pulled from the linux kernel at revision > > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > > +# > > +# Changes made for IGT-specific styles should include a comment noting > > +# the previous value with "kernel-value". This makes it clear what we > > +# want to keep when updating this file. > > +--- > > +AccessModifierOffset: -4 > > +AlignAfterOpenBracket: Align > > +AlignConsecutiveAssignments: false > > +AlignConsecutiveDeclarations: false > > +AlignEscapedNewlines: Left > > +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 > > + 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: # kernel-value: (long list removed) > > + # IGT rules, found via: > > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | > > + # sed "s,^#define \([^(]\+\).*,'\1'," | > > + # grep -v "__" | > > + # sort -u > > + - 'for_each_collection_data' > > + - 'for_each_combination' > > + - 'for_each_connected_output' > > + - 'for_each_connector_mode' > > + - 'for_each_ctx_cfg_engine' > > + - 'for_each_ctx_engine' > > + - 'for_each_format' > > + - 'for_each_if' > > + - 'for_each_memory_region' > > + - 'for_each_mmap_offset_type' > > + - 'for_each_physical_engine' > > + - 'for_each_physical_ring' > > + - 'for_each_pipe' > > + - 'for_each_pipe_static' > > + - 'for_each_pipe_with_single_output' > > + - 'for_each_pipe_with_valid_output' > > + - 'for_each_plane_on_pipe' > > + - 'for_each_prime_number' > > + - 'for_each_ring' > > + - 'for_each_subset' > > + - 'for_each_sysfs_gt_dirfd' > > + - 'for_each_sysfs_gt_path' > > + - 'for_each_valid_output_on_pipe' > > + - 'for_each_variation_nr' > > + - 'for_each_variation_r' > > + - 'igt_list_for_each_entry' > > + - 'igt_list_for_each_entry_reverse' > > + - 'igt_list_for_each_entry_safe' > > + - 'igt_list_for_each_entry_safe_reverse' > > + > > +IfMacros: # kernel-value: none > > + - 'igt_dynamic' > > + - 'igt_fixture' > > + - 'igt_fork' > > + - 'igt_subtest' > > + - 'igt_subtest_f' > > + - 'igt_subtest_group' > > + - 'igt_subtest_with_dynamic' > > + - 'igt_subtest_with_dynamic_f' > > + - 'igt_until_timeout' > > What version of clang-format is needed for IfMacros? > > > -- > Petri Latvala > > > > + > > +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: true # kernel-value: 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 > > +... > > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > > index 6d1294ad..f2af5a18 100644 > > --- a/CONTRIBUTING.md > > +++ b/CONTRIBUTING.md > > @@ -10,8 +10,10 @@ improvements for documentation and new tools and testcases. > > The Code > > -------- > > > > -- The code should follow kernel coding style: > > - https://www.kernel.org/doc/html/latest/process/coding-style.html > > +- The code should follow [kernel coding style](coding-style). Before > > + sending out a patch, changes can be formatted with > > + [git-clang-format](git-clang-format). Editors can be configured > > + using .editorconfig for additional style support. > > > > - Testcases (subtests) have to use minus signs (-) as a word separator. > > The generated documentation contains glossary of commonly used terms. > > @@ -30,9 +32,10 @@ The Code > > provided by the igt library. The semantic patch lib/igt.cocci can help with > > more automatic conversions. > > > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > > > - > > Sending Patches > > --------------- > > > > -- > > 2.37.1.455.g008518b4e5-goog > > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-08-12 16:00 ` Jim Shargo @ 2022-08-19 14:23 ` Jim Shargo 0 siblings, 0 replies; 15+ messages in thread From: Jim Shargo @ 2022-08-19 14:23 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools, Petri Latvala [-- Attachment #1: Type: text/plain, Size: 9923 bytes --] Hi! Just checking in--is this ready to commit? Is there anything else I need to fix up? Thanks! On Fri, Aug 12, 2022 at 12:00 PM Jim Shargo <jshargo@google.com> wrote: > It appears to be 13: > https://clang.llvm.org/docs/ClangFormatStyleOptions.html > > > On Fri, Aug 12, 2022 at 8:54 AM Petri Latvala <petri.latvala@intel.com> > wrote: > > > > On Thu, Jul 28, 2022 at 01:57:36PM -0400, Jim Shargo wrote: > > > As I was authoring my first patchset for IGT, I found myself fighting > > > the tooling a bit to get everything right. I had to add a bunch of > extra > > > command line args to use my linux checkout's formatting rules to get > the > > > style right. > > > > > > I grabbed this from a recent checkout of torvald's repo. > > > > > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > > > > > To make this discoverable to new contributors, this change also > > > updates CONTRIBUTING.md with: > > > > > > - A link to git-clang-format, which is a useful tool for using > > > clang-format from git just on a commit's changes > > > - A link to .editorconfig to make it more discoverable > > > > > > Changes made to the linux kernel style: > > > > > > - Reflowing comments, including multi-line comments (ReflowComments) > > > - Support for magic code blocks (ForEachMacros, IfMacros) > > > > > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > > > --- > > > V2 -> V3: Update CONTRIBUTING.md with a note about .editorconfig, > > > remove reference to .clang-format from the .editorconfig > > > V1 -> V2: Better support for IGT style and addressing comments > > > > > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > > > CONTRIBUTING.md | 9 ++- > > > 2 files changed, 182 insertions(+), 3 deletions(-) > > > create mode 100644 .clang-format > > > > > > diff --git a/.clang-format b/.clang-format > > > new file mode 100644 > > > index 00000000..da42bead > > > --- /dev/null > > > +++ b/.clang-format > > > @@ -0,0 +1,176 @@ > > > +# 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 > > > +# > > > +# This file was pulled from the linux kernel at revision > > > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > > > +# > > > +# Changes made for IGT-specific styles should include a comment noting > > > +# the previous value with "kernel-value". This makes it clear what we > > > +# want to keep when updating this file. > > > +--- > > > +AccessModifierOffset: -4 > > > +AlignAfterOpenBracket: Align > > > +AlignConsecutiveAssignments: false > > > +AlignConsecutiveDeclarations: false > > > +AlignEscapedNewlines: Left > > > +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 > > > + 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: # kernel-value: (long list removed) > > > + # IGT rules, found via: > > > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' > include/ lib/ | > > > + # sed "s,^#define \([^(]\+\).*,'\1'," | > > > + # grep -v "__" | > > > + # sort -u > > > + - 'for_each_collection_data' > > > + - 'for_each_combination' > > > + - 'for_each_connected_output' > > > + - 'for_each_connector_mode' > > > + - 'for_each_ctx_cfg_engine' > > > + - 'for_each_ctx_engine' > > > + - 'for_each_format' > > > + - 'for_each_if' > > > + - 'for_each_memory_region' > > > + - 'for_each_mmap_offset_type' > > > + - 'for_each_physical_engine' > > > + - 'for_each_physical_ring' > > > + - 'for_each_pipe' > > > + - 'for_each_pipe_static' > > > + - 'for_each_pipe_with_single_output' > > > + - 'for_each_pipe_with_valid_output' > > > + - 'for_each_plane_on_pipe' > > > + - 'for_each_prime_number' > > > + - 'for_each_ring' > > > + - 'for_each_subset' > > > + - 'for_each_sysfs_gt_dirfd' > > > + - 'for_each_sysfs_gt_path' > > > + - 'for_each_valid_output_on_pipe' > > > + - 'for_each_variation_nr' > > > + - 'for_each_variation_r' > > > + - 'igt_list_for_each_entry' > > > + - 'igt_list_for_each_entry_reverse' > > > + - 'igt_list_for_each_entry_safe' > > > + - 'igt_list_for_each_entry_safe_reverse' > > > + > > > +IfMacros: # kernel-value: none > > > + - 'igt_dynamic' > > > + - 'igt_fixture' > > > + - 'igt_fork' > > > + - 'igt_subtest' > > > + - 'igt_subtest_f' > > > + - 'igt_subtest_group' > > > + - 'igt_subtest_with_dynamic' > > > + - 'igt_subtest_with_dynamic_f' > > > + - 'igt_until_timeout' > > > > What version of clang-format is needed for IfMacros? > > > > > > -- > > Petri Latvala > > > > > > > + > > > +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: true # kernel-value: 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 > > > +... > > > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > > > index 6d1294ad..f2af5a18 100644 > > > --- a/CONTRIBUTING.md > > > +++ b/CONTRIBUTING.md > > > @@ -10,8 +10,10 @@ improvements for documentation and new tools and > testcases. > > > The Code > > > -------- > > > > > > -- The code should follow kernel coding style: > > > - https://www.kernel.org/doc/html/latest/process/coding-style.html > > > +- The code should follow [kernel coding style](coding-style). Before > > > + sending out a patch, changes can be formatted with > > > + [git-clang-format](git-clang-format). Editors can be configured > > > + using .editorconfig for additional style support. > > > > > > - Testcases (subtests) have to use minus signs (-) as a word > separator. > > > The generated documentation contains glossary of commonly used > terms. > > > @@ -30,9 +32,10 @@ The Code > > > provided by the igt library. The semantic patch lib/igt.cocci can > help with > > > more automatic conversions. > > > > > > +[coding-style]: > https://www.kernel.org/doc/html/latest/process/coding-style.html > > > +[git-clang-format]: > https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > > > [igt-describe]: > https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > > > > > - > > > Sending Patches > > > --------------- > > > > > > -- > > > 2.37.1.455.g008518b4e5-goog > > > > [-- Attachment #2: Type: text/html, Size: 14006 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo 2022-08-12 12:53 ` Petri Latvala @ 2022-08-23 11:01 ` Petri Latvala 2023-08-31 17:03 ` Mauro Carvalho Chehab 2 siblings, 0 replies; 15+ messages in thread From: Petri Latvala @ 2022-08-23 11:01 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools On Thu, Jul 28, 2022 at 01:57:36PM -0400, Jim Shargo wrote: > As I was authoring my first patchset for IGT, I found myself fighting > the tooling a bit to get everything right. I had to add a bunch of extra > command line args to use my linux checkout's formatting rules to get the > style right. > > I grabbed this from a recent checkout of torvald's repo. > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > To make this discoverable to new contributors, this change also > updates CONTRIBUTING.md with: > > - A link to git-clang-format, which is a useful tool for using > clang-format from git just on a commit's changes > - A link to .editorconfig to make it more discoverable > > Changes made to the linux kernel style: > > - Reflowing comments, including multi-line comments (ReflowComments) > - Support for magic code blocks (ForEachMacros, IfMacros) > > Signed-off-by: Jim Shargo <jshargo@chromium.org> > --- It looks good in this form. Just two observations now: igt_fork_helper() gets its {} incorrectly placed, example in lib/igt_aux.c. Didn't spot this last time. Is it possible to have function attributes on their separate lines? Example diff that clang-format produces with this: -__attribute__((format(printf, 2, 3))) -static void internal_assert(bool cond, const char *format, ...) +__attribute__((format(printf, 2, 3))) static void +internal_assert(bool cond, const char *format, ...) Other stuff that it changes that I semi-quickly checked are either debatable differences, absolutely correct, or irrelevantly different so that should be the last things to mention. Oh, and the minimum clang-format version needs to be mentioned in the docs, Debian stable for example only has 11. -- Petri Latvala > V2 -> V3: Update CONTRIBUTING.md with a note about .editorconfig, > remove reference to .clang-format from the .editorconfig > V1 -> V2: Better support for IGT style and addressing comments > > .clang-format | 176 ++++++++++++++++++++++++++++++++++++++++++++++++ > CONTRIBUTING.md | 9 ++- > 2 files changed, 182 insertions(+), 3 deletions(-) > create mode 100644 .clang-format > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 00000000..da42bead > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,176 @@ > +# 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 > +# > +# This file was pulled from the linux kernel at revision > +# e0dccc3b76fb35bb257b4118367a883073d7390e. > +# > +# Changes made for IGT-specific styles should include a comment noting > +# the previous value with "kernel-value". This makes it clear what we > +# want to keep when updating this file. > +--- > +AccessModifierOffset: -4 > +AlignAfterOpenBracket: Align > +AlignConsecutiveAssignments: false > +AlignConsecutiveDeclarations: false > +AlignEscapedNewlines: Left > +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 > + 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: # kernel-value: (long list removed) > + # IGT rules, found via: > + # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ lib/ | > + # sed "s,^#define \([^(]\+\).*,'\1'," | > + # grep -v "__" | > + # sort -u > + - 'for_each_collection_data' > + - 'for_each_combination' > + - 'for_each_connected_output' > + - 'for_each_connector_mode' > + - 'for_each_ctx_cfg_engine' > + - 'for_each_ctx_engine' > + - 'for_each_format' > + - 'for_each_if' > + - 'for_each_memory_region' > + - 'for_each_mmap_offset_type' > + - 'for_each_physical_engine' > + - 'for_each_physical_ring' > + - 'for_each_pipe' > + - 'for_each_pipe_static' > + - 'for_each_pipe_with_single_output' > + - 'for_each_pipe_with_valid_output' > + - 'for_each_plane_on_pipe' > + - 'for_each_prime_number' > + - 'for_each_ring' > + - 'for_each_subset' > + - 'for_each_sysfs_gt_dirfd' > + - 'for_each_sysfs_gt_path' > + - 'for_each_valid_output_on_pipe' > + - 'for_each_variation_nr' > + - 'for_each_variation_r' > + - 'igt_list_for_each_entry' > + - 'igt_list_for_each_entry_reverse' > + - 'igt_list_for_each_entry_safe' > + - 'igt_list_for_each_entry_safe_reverse' > + > +IfMacros: # kernel-value: none > + - 'igt_dynamic' > + - 'igt_fixture' > + - 'igt_fork' > + - 'igt_subtest' > + - 'igt_subtest_f' > + - 'igt_subtest_group' > + - 'igt_subtest_with_dynamic' > + - 'igt_subtest_with_dynamic_f' > + - 'igt_until_timeout' > + > +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: true # kernel-value: 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 > +... > diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md > index 6d1294ad..f2af5a18 100644 > --- a/CONTRIBUTING.md > +++ b/CONTRIBUTING.md > @@ -10,8 +10,10 @@ improvements for documentation and new tools and testcases. > The Code > -------- > > -- The code should follow kernel coding style: > - https://www.kernel.org/doc/html/latest/process/coding-style.html > +- The code should follow [kernel coding style](coding-style). Before > + sending out a patch, changes can be formatted with > + [git-clang-format](git-clang-format). Editors can be configured > + using .editorconfig for additional style support. > > - Testcases (subtests) have to use minus signs (-) as a word separator. > The generated documentation contains glossary of commonly used terms. > @@ -30,9 +32,10 @@ The Code > provided by the igt library. The semantic patch lib/igt.cocci can help with > more automatic conversions. > > +[coding-style]: https://www.kernel.org/doc/html/latest/process/coding-style.html > +[git-clang-format]: https://github.com/llvm-mirror/clang/blob/master/tools/clang-format/git-clang-format > [igt-describe]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe > > - > Sending Patches > --------------- > > -- > 2.37.1.455.g008518b4e5-goog > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] [PATCH i-g-t v3] tooling: Add linux's .clang-format 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo 2022-08-12 12:53 ` Petri Latvala 2022-08-23 11:01 ` Petri Latvala @ 2023-08-31 17:03 ` Mauro Carvalho Chehab 2 siblings, 0 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2023-08-31 17:03 UTC (permalink / raw) To: Jim Shargo; +Cc: Development mailing list for IGT GPU Tools, Petri Latvala On Thu, 28 Jul 2022 13:57:36 -0400 Jim Shargo <jshargo@chromium.org> wrote: > As I was authoring my first patchset for IGT, I found myself fighting > the tooling a bit to get everything right. I had to add a bunch of extra > command line args to use my linux checkout's formatting rules to get the > style right. > > I grabbed this from a recent checkout of torvald's repo. > > The commit I used was: e0dccc3b76fb35bb257b4118367a883073d7390e > > To make this discoverable to new contributors, this change also > updates CONTRIBUTING.md with: > > - A link to git-clang-format, which is a useful tool for using > clang-format from git just on a commit's changes > - A link to .editorconfig to make it more discoverable > > Changes made to the linux kernel style: > > - Reflowing comments, including multi-line comments (ReflowComments) > - Support for magic code blocks (ForEachMacros, IfMacros) > > Signed-off-by: Jim Shargo <jshargo@chromium.org> This is not a full validation of the results, but, running this with: git-clang-format 8c64183a461a I found several places where the output format is worse than what we have. Strictly speaking, the results may be following the documented Kernel coding style, but for sure they don't follow the usual Kernel nor IGT practices. Also, checkpatch.pl won't be complaining about such things as the original code already follows the Kernel coding style. Some examples below: #ifndef likely -# ifdef __GNUC__ -# define likely(x) __builtin_expect(!!(x), 1) -# define unlikely(x) __builtin_expect(!!(x), 0) -# else -# define likely(x) (x) -# define unlikely(x) (x) -# endif +#ifdef __GNUC__ +#define likely(x) __builtin_expect(!!(x), 1) +#define unlikely(x) __builtin_expect(!!(x), 0) +#else +#define likely(x) (x) +#define unlikely(x) (x) +#endif #endif The above is a lot worse to read, making reviews harder. Other defines also are re-formatted in a way that makes harder to review: -#define PIPE_CONTROL_NOWRITE 0x00 -#define PIPE_CONTROL_WRITEIMMEDIATE 0x01 -#define PIPE_CONTROL_WRITEDEPTH 0x02 -#define PIPE_CONTROL_WRITETIMESTAMP 0x03 +#define PIPE_CONTROL_NOWRITE 0x00 +#define PIPE_CONTROL_WRITEIMMEDIATE 0x01 +#define PIPE_CONTROL_WRITEDEPTH 0x02 +#define PIPE_CONTROL_WRITETIMESTAMP 0x03 Tables are also weird-formatted: -static const char * const end_of_thread[2] = { - [0] = "", - [1] = "EOT" -}; - +static const char *const end_of_thread[2] = { [0] = "", [1] = "EOT" }; Placing multiple values per line. On a small tame like this, not a big issue, but on bigger tables, it makes a lot harder to check if there are gaps at the values. Looking at function prototypes: -static int src_ia1 (FILE *file, - unsigned type, - unsigned _reg_file, - int _addr_imm, - unsigned _addr_subreg_nr, - unsigned _negate, - unsigned __abs, - unsigned _addr_mode, - unsigned _horiz_stride, - unsigned _width, - unsigned _vert_stride) +static int src_ia1(FILE *file, unsigned type, unsigned _reg_file, int _addr_imm, + unsigned _addr_subreg_nr, unsigned _negate, unsigned __abs, + unsigned _addr_mode, unsigned _horiz_stride, unsigned _width, + unsigned _vert_stride) At least for functions with that many arguments, having one argument per line makes easier for reviewers and for users. So, I'd say it is not ready yet for merging. Regards, Mauro ^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for tooling: Add linux's .clang-format (rev3) 2022-07-27 10:52 ` Petri Latvala 2022-07-27 20:10 ` Jim Shargo 2022-07-27 20:21 ` [igt-dev] [PATCH i-g-t v2] " Jim Shargo @ 2022-07-29 9:21 ` Patchwork 2022-07-29 10:38 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 3 siblings, 0 replies; 15+ messages in thread From: Patchwork @ 2022-07-29 9:21 UTC (permalink / raw) To: Jim Shargo; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 8571 bytes --] == Series Details == Series: tooling: Add linux's .clang-format (rev3) URL : https://patchwork.freedesktop.org/series/106835/ State : success == Summary == CI Bug Log - changes from IGT_6603 -> IGTPW_7582 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html Participating hosts (42 -> 41) ------------------------------ Additional (2): bat-rplp-1 fi-icl-u2 Missing (3): fi-cml-u2 fi-bxt-dsi fi-bdw-samus Known issues ------------ Here are the changes found in IGTPW_7582 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_huc_copy@huc-copy: - fi-icl-u2: NOTRUN -> [SKIP][1] ([i915#2190]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@gem_huc_copy@huc-copy.html * igt@i915_selftest@live@late_gt_pm: - fi-cfl-8109u: [PASS][2] -> [DMESG-WARN][3] ([i915#5904]) +29 similar issues [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html * igt@i915_suspend@basic-s2idle-without-i915: - fi-cfl-8109u: [PASS][4] -> [DMESG-WARN][5] ([i915#5904] / [i915#62]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html * igt@kms_chamelium@common-hpd-after-suspend: - fi-hsw-4770: NOTRUN -> [SKIP][6] ([fdo#109271] / [fdo#111827]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-hsw-4770/igt@kms_chamelium@common-hpd-after-suspend.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-icl-u2: NOTRUN -> [SKIP][7] ([fdo#111827]) +7 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor: - fi-icl-u2: NOTRUN -> [SKIP][8] ([i915#4103]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html * igt@kms_force_connector_basic@force-connector-state: - fi-icl-u2: NOTRUN -> [WARN][9] ([i915#6008]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@kms_force_connector_basic@force-connector-state.html * igt@kms_force_connector_basic@force-load-detect: - fi-icl-u2: NOTRUN -> [SKIP][10] ([fdo#109285]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_frontbuffer_tracking@basic: - fi-cfl-8109u: [PASS][11] -> [DMESG-FAIL][12] ([i915#62]) +1 similar issue [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html * igt@kms_pipe_crc_basic@hang-read-crc@pipe-c-dp-2: - fi-icl-u2: NOTRUN -> [INCOMPLETE][13] ([i915#4890]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@kms_pipe_crc_basic@hang-read-crc@pipe-c-dp-2.html * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1: - fi-cfl-8109u: [PASS][14] -> [DMESG-WARN][15] ([i915#62]) +10 similar issues [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-cfl-8109u/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-cfl-8109u/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html * igt@runner@aborted: - fi-icl-u2: NOTRUN -> [FAIL][16] ([i915#4312]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-icl-u2/igt@runner@aborted.html #### Possible fixes #### * igt@gem_ringfill@basic-all: - {bat-dg2-9}: [FAIL][17] ([i915#5886]) -> [PASS][18] [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/bat-dg2-9/igt@gem_ringfill@basic-all.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/bat-dg2-9/igt@gem_ringfill@basic-all.html * igt@i915_selftest@live@gt_pm: - {bat-rpls-1}: [INCOMPLETE][19] -> [PASS][20] [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/bat-rpls-1/igt@i915_selftest@live@gt_pm.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/bat-rpls-1/igt@i915_selftest@live@gt_pm.html * igt@i915_selftest@live@hangcheck: - fi-hsw-4770: [INCOMPLETE][21] ([i915#4785]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html * igt@i915_selftest@live@perf: - {bat-dg2-9}: [DMESG-WARN][23] ([i915#5763]) -> [PASS][24] +2 similar issues [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/bat-dg2-9/igt@i915_selftest@live@perf.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/bat-dg2-9/igt@i915_selftest@live@perf.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size: - fi-bsw-kefka: [FAIL][25] ([i915#6298]) -> [PASS][26] [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845 [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582 [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637 [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708 [i915#4093]: https://gitlab.freedesktop.org/drm/intel/issues/4093 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213 [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312 [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785 [i915#4890]: https://gitlab.freedesktop.org/drm/intel/issues/4890 [i915#5537]: https://gitlab.freedesktop.org/drm/intel/issues/5537 [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763 [i915#5886]: https://gitlab.freedesktop.org/drm/intel/issues/5886 [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903 [i915#5904]: https://gitlab.freedesktop.org/drm/intel/issues/5904 [i915#5950]: https://gitlab.freedesktop.org/drm/intel/issues/5950 [i915#6008]: https://gitlab.freedesktop.org/drm/intel/issues/6008 [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298 [i915#6380]: https://gitlab.freedesktop.org/drm/intel/issues/6380 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6603 -> IGTPW_7582 CI-20190529: 20190529 CI_DRM_11946: 0e9c43d76a145712da46e935d429ce2a3eea80e8 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_7582: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html IGT_6603: d851d950cf805f3021d67666db67e24fae1b99ee @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html [-- Attachment #2: Type: text/html, Size: 8721 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for tooling: Add linux's .clang-format (rev3) 2022-07-27 10:52 ` Petri Latvala ` (2 preceding siblings ...) 2022-07-29 9:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tooling: Add linux's .clang-format (rev3) Patchwork @ 2022-07-29 10:38 ` Patchwork 2022-08-02 22:25 ` Jim Shargo 3 siblings, 1 reply; 15+ messages in thread From: Patchwork @ 2022-07-29 10:38 UTC (permalink / raw) To: Jim Shargo; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 52183 bytes --] == Series Details == Series: tooling: Add linux's .clang-format (rev3) URL : https://patchwork.freedesktop.org/series/106835/ State : failure == Summary == CI Bug Log - changes from IGT_6603_full -> IGTPW_7582_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_7582_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_7582_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html Participating hosts (7 -> 10) ------------------------------ Additional (3): shard-rkl shard-dg1 shard-tglu Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_7582_full: ### IGT changes ### #### Possible regressions #### * igt@kms_flip@flip-vs-modeset-vs-hang@c-dp1: - shard-apl: [PASS][1] -> [DMESG-WARN][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl1/igt@kms_flip@flip-vs-modeset-vs-hang@c-dp1.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl3/igt@kms_flip@flip-vs-modeset-vs-hang@c-dp1.html #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@kms_sysfs_edid_timing: - {shard-dg1}: NOTRUN -> [FAIL][3] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-dg1-14/igt@kms_sysfs_edid_timing.html Known issues ------------ Here are the changes found in IGTPW_7582_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_busy@close-race: - shard-snb: [PASS][4] -> [INCOMPLETE][5] ([i915#6234]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-snb6/igt@gem_busy@close-race.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb4/igt@gem_busy@close-race.html * igt@gem_ctx_persistence@engines-hostile: - shard-snb: NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#1099]) +1 similar issue [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb5/igt@gem_ctx_persistence@engines-hostile.html * igt@gem_ctx_sseu@engines: - shard-tglb: NOTRUN -> [SKIP][7] ([i915#280]) +1 similar issue [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb7/igt@gem_ctx_sseu@engines.html * igt@gem_exec_balancer@parallel-contexts: - shard-iclb: [PASS][8] -> [SKIP][9] ([i915#4525]) +1 similar issue [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb2/igt@gem_exec_balancer@parallel-contexts.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb8/igt@gem_exec_balancer@parallel-contexts.html * igt@gem_exec_balancer@parallel-ordering: - shard-tglb: NOTRUN -> [FAIL][10] ([i915#6117]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@gem_exec_balancer@parallel-ordering.html - shard-iclb: NOTRUN -> [SKIP][11] ([i915#4525]) +1 similar issue [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb5/igt@gem_exec_balancer@parallel-ordering.html - shard-kbl: NOTRUN -> [FAIL][12] ([i915#6117]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl4/igt@gem_exec_balancer@parallel-ordering.html * igt@gem_exec_fair@basic-deadline: - shard-glk: [PASS][13] -> [FAIL][14] ([i915#2846]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-glk9/igt@gem_exec_fair@basic-deadline.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk9/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-tglb: [PASS][15] -> [FAIL][16] ([i915#2842]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-tglb6/igt@gem_exec_fair@basic-pace-share@rcs0.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb2/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_fair@basic-sync@rcs0: - shard-kbl: [PASS][17] -> [SKIP][18] ([fdo#109271]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl4/igt@gem_exec_fair@basic-sync@rcs0.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl1/igt@gem_exec_fair@basic-sync@rcs0.html * igt@gem_lmem_swapping@heavy-verify-multi-ccs: - shard-tglb: NOTRUN -> [SKIP][19] ([i915#4613]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb6/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html - shard-glk: NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk8/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html - shard-iclb: NOTRUN -> [SKIP][21] ([i915#4613]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb3/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html - shard-kbl: NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#4613]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl4/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html * igt@gem_lmem_swapping@parallel-random-engines: - shard-apl: NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#4613]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl1/igt@gem_lmem_swapping@parallel-random-engines.html * igt@gem_pxp@create-regular-context-2: - shard-tglb: NOTRUN -> [SKIP][24] ([i915#4270]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@gem_pxp@create-regular-context-2.html - shard-iclb: NOTRUN -> [SKIP][25] ([i915#4270]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@gem_pxp@create-regular-context-2.html * igt@gem_render_copy@x-tiled-to-vebox-yf-tiled: - shard-iclb: NOTRUN -> [SKIP][26] ([i915#768]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb6/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html * igt@gen7_exec_parse@cmd-crossing-page: - shard-tglb: NOTRUN -> [SKIP][27] ([fdo#109289]) +2 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb5/igt@gen7_exec_parse@cmd-crossing-page.html - shard-iclb: NOTRUN -> [SKIP][28] ([fdo#109289]) +1 similar issue [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb6/igt@gen7_exec_parse@cmd-crossing-page.html * igt@gen9_exec_parse@allowed-all: - shard-glk: [PASS][29] -> [DMESG-WARN][30] ([i915#5566] / [i915#716]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-glk7/igt@gen9_exec_parse@allowed-all.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk9/igt@gen9_exec_parse@allowed-all.html * igt@gen9_exec_parse@basic-rejected-ctx-param: - shard-snb: NOTRUN -> [SKIP][31] ([fdo#109271]) +119 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb2/igt@gen9_exec_parse@basic-rejected-ctx-param.html * igt@gen9_exec_parse@unaligned-access: - shard-tglb: NOTRUN -> [SKIP][32] ([i915#2527] / [i915#2856]) +1 similar issue [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb1/igt@gen9_exec_parse@unaligned-access.html - shard-iclb: NOTRUN -> [SKIP][33] ([i915#2856]) +1 similar issue [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@gen9_exec_parse@unaligned-access.html * igt@i915_module_load@reload-with-fault-injection: - shard-snb: [PASS][34] -> [INCOMPLETE][35] ([i915#5178]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-snb6/igt@i915_module_load@reload-with-fault-injection.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb5/igt@i915_module_load@reload-with-fault-injection.html * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp: - shard-apl: NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#1937]) [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl3/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp.html - shard-kbl: NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#1937]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl7/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp.html * igt@i915_pm_rpm@gem-execbuf-stress-pc8: - shard-glk: NOTRUN -> [SKIP][38] ([fdo#109271]) +72 similar issues [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk5/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html - shard-iclb: NOTRUN -> [SKIP][39] ([fdo#109293] / [fdo#109506]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html - shard-tglb: NOTRUN -> [SKIP][40] ([fdo#109506] / [i915#2411]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html * igt@kms_big_fb@4-tiled-32bpp-rotate-90: - shard-tglb: NOTRUN -> [SKIP][41] ([i915#5286]) +1 similar issue [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb1/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html - shard-iclb: NOTRUN -> [SKIP][42] ([i915#5286]) +1 similar issue [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html * igt@kms_big_fb@linear-32bpp-rotate-270: - shard-tglb: NOTRUN -> [SKIP][43] ([fdo#111614]) +1 similar issue [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_big_fb@linear-32bpp-rotate-270.html - shard-iclb: NOTRUN -> [SKIP][44] ([fdo#110725] / [fdo#111614]) +1 similar issue [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@kms_big_fb@linear-32bpp-rotate-270.html * igt@kms_big_fb@yf-tiled-64bpp-rotate-0: - shard-iclb: NOTRUN -> [SKIP][45] ([fdo#110723]) +1 similar issue [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html * igt@kms_big_fb@yf-tiled-64bpp-rotate-90: - shard-kbl: NOTRUN -> [SKIP][46] ([fdo#109271]) +115 similar issues [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl1/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip: - shard-tglb: NOTRUN -> [SKIP][47] ([fdo#111615]) +2 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html * igt@kms_ccs@pipe-a-ccs-on-another-bo-yf_tiled_ccs: - shard-tglb: NOTRUN -> [SKIP][48] ([fdo#111615] / [i915#3689]) +4 similar issues [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb1/igt@kms_ccs@pipe-a-ccs-on-another-bo-yf_tiled_ccs.html * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs: - shard-iclb: NOTRUN -> [SKIP][49] ([fdo#109278]) +16 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb1/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs.html * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc: - shard-iclb: NOTRUN -> [SKIP][50] ([fdo#109278] / [i915#3886]) +2 similar issues [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb8/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html - shard-kbl: NOTRUN -> [SKIP][51] ([fdo#109271] / [i915#3886]) +2 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl6/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html * igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs: - shard-apl: NOTRUN -> [SKIP][52] ([fdo#109271] / [i915#3886]) +4 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl6/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_rc_ccs: - shard-tglb: NOTRUN -> [SKIP][53] ([i915#3689] / [i915#6095]) +2 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_rc_ccs.html * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs: - shard-tglb: NOTRUN -> [SKIP][54] ([i915#3689] / [i915#3886]) +1 similar issue [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb2/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html - shard-glk: NOTRUN -> [SKIP][55] ([fdo#109271] / [i915#3886]) +2 similar issues [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk2/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-d-bad-pixel-format-y_tiled_gen12_mc_ccs: - shard-apl: NOTRUN -> [SKIP][56] ([fdo#109271]) +132 similar issues [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl4/igt@kms_ccs@pipe-d-bad-pixel-format-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_mc_ccs: - shard-tglb: NOTRUN -> [SKIP][57] ([i915#3689]) +1 similar issue [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb5/igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs: - shard-tglb: NOTRUN -> [SKIP][58] ([i915#6095]) +2 similar issues [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs.html * igt@kms_chamelium@dp-hpd-for-each-pipe: - shard-glk: NOTRUN -> [SKIP][59] ([fdo#109271] / [fdo#111827]) +7 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk5/igt@kms_chamelium@dp-hpd-for-each-pipe.html * igt@kms_chamelium@hdmi-mode-timings: - shard-apl: NOTRUN -> [SKIP][60] ([fdo#109271] / [fdo#111827]) +11 similar issues [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl2/igt@kms_chamelium@hdmi-mode-timings.html * igt@kms_color_chamelium@pipe-a-ctm-0-25: - shard-snb: NOTRUN -> [SKIP][61] ([fdo#109271] / [fdo#111827]) +6 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb2/igt@kms_color_chamelium@pipe-a-ctm-0-25.html * igt@kms_color_chamelium@pipe-b-ctm-0-5: - shard-iclb: NOTRUN -> [SKIP][62] ([fdo#109284] / [fdo#111827]) +6 similar issues [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb8/igt@kms_color_chamelium@pipe-b-ctm-0-5.html * igt@kms_color_chamelium@pipe-b-ctm-negative: - shard-tglb: NOTRUN -> [SKIP][63] ([fdo#109284] / [fdo#111827]) +7 similar issues [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb7/igt@kms_color_chamelium@pipe-b-ctm-negative.html * igt@kms_color_chamelium@pipe-d-ctm-negative: - shard-iclb: NOTRUN -> [SKIP][64] ([fdo#109278] / [fdo#109284] / [fdo#111827]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@kms_color_chamelium@pipe-d-ctm-negative.html - shard-kbl: NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +8 similar issues [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl1/igt@kms_color_chamelium@pipe-d-ctm-negative.html * igt@kms_content_protection@legacy: - shard-apl: NOTRUN -> [TIMEOUT][66] ([i915#1319]) +1 similar issue [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl2/igt@kms_content_protection@legacy.html - shard-tglb: NOTRUN -> [SKIP][67] ([i915#1063]) +1 similar issue [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@kms_content_protection@legacy.html - shard-iclb: NOTRUN -> [SKIP][68] ([fdo#109300] / [fdo#111066]) +1 similar issue [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@kms_content_protection@legacy.html - shard-kbl: NOTRUN -> [TIMEOUT][69] ([i915#1319]) +1 similar issue [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl7/igt@kms_content_protection@legacy.html * igt@kms_content_protection@uevent: - shard-kbl: NOTRUN -> [FAIL][70] ([i915#2105]) [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl7/igt@kms_content_protection@uevent.html * igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1: - shard-apl: NOTRUN -> [DMESG-WARN][71] ([i915#180]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl4/igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1.html * igt@kms_cursor_crc@cursor-suspend@pipe-b-edp-1: - shard-iclb: NOTRUN -> [DMESG-WARN][72] ([i915#2867]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb5/igt@kms_cursor_crc@cursor-suspend@pipe-b-edp-1.html * igt@kms_cursor_legacy@cursorb-vs-flipa@varying-size: - shard-tglb: NOTRUN -> [SKIP][73] ([fdo#109274] / [fdo#111825]) +6 similar issues [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb2/igt@kms_cursor_legacy@cursorb-vs-flipa@varying-size.html * igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-4tiled: - shard-tglb: NOTRUN -> [SKIP][74] ([i915#5287]) [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-4tiled.html - shard-iclb: NOTRUN -> [SKIP][75] ([i915#5287]) [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-4tiled.html * igt@kms_fbcon_fbt@fbc-suspend: - shard-apl: [PASS][76] -> [INCOMPLETE][77] ([i915#180] / [i915#4939]) [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl8/igt@kms_fbcon_fbt@fbc-suspend.html [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl6/igt@kms_fbcon_fbt@fbc-suspend.html * igt@kms_flip@2x-absolute-wf_vblank: - shard-tglb: NOTRUN -> [SKIP][78] ([fdo#109274] / [fdo#111825] / [i915#3637] / [i915#3966]) [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_flip@2x-absolute-wf_vblank.html * igt@kms_flip@2x-flip-vs-panning: - shard-iclb: NOTRUN -> [SKIP][79] ([fdo#109274]) +11 similar issues [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb3/igt@kms_flip@2x-flip-vs-panning.html * igt@kms_flip@2x-plain-flip-fb-recreate@ab-hdmi-a1-hdmi-a2: - shard-glk: [PASS][80] -> [FAIL][81] ([i915#2122]) [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-glk9/igt@kms_flip@2x-plain-flip-fb-recreate@ab-hdmi-a1-hdmi-a2.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk5/igt@kms_flip@2x-plain-flip-fb-recreate@ab-hdmi-a1-hdmi-a2.html * igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset: - shard-tglb: NOTRUN -> [SKIP][82] ([fdo#109274] / [fdo#111825] / [i915#3637]) +3 similar issues [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb7/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1: - shard-apl: [PASS][83] -> [FAIL][84] ([i915#79]) [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl2/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1.html * igt@kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling@pipe-a-default-mode: - shard-iclb: NOTRUN -> [SKIP][85] ([i915#3555]) +2 similar issues [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling@pipe-a-default-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode: - shard-iclb: NOTRUN -> [SKIP][86] ([i915#2672]) +6 similar issues [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode: - shard-tglb: NOTRUN -> [SKIP][87] ([i915#2672]) +1 similar issue [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling@pipe-a-default-mode: - shard-iclb: NOTRUN -> [SKIP][88] ([i915#2672] / [i915#3555]) +1 similar issue [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling@pipe-a-default-mode.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt: - shard-iclb: NOTRUN -> [SKIP][89] ([fdo#109280]) +12 similar issues [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite: - shard-tglb: NOTRUN -> [SKIP][90] ([i915#6497]) +4 similar issues [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite.html * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-gtt: - shard-tglb: NOTRUN -> [SKIP][91] ([fdo#109280] / [fdo#111825]) +12 similar issues [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-gtt.html * igt@kms_hdmi_inject@inject-audio: - shard-tglb: [PASS][92] -> [SKIP][93] ([i915#433]) [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-tglb1/igt@kms_hdmi_inject@inject-audio.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb5/igt@kms_hdmi_inject@inject-audio.html * igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1: - shard-kbl: [PASS][94] -> [FAIL][95] ([i915#1188]) [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl6/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl4/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html * igt@kms_plane_lowres@tiling-x@pipe-b-edp-1: - shard-iclb: NOTRUN -> [SKIP][96] ([i915#3536]) +2 similar issues [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@kms_plane_lowres@tiling-x@pipe-b-edp-1.html * igt@kms_plane_lowres@tiling-x@pipe-c-edp-1: - shard-tglb: NOTRUN -> [SKIP][97] ([i915#3536]) +3 similar issues [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_plane_lowres@tiling-x@pipe-c-edp-1.html * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1: - shard-iclb: [PASS][98] -> [SKIP][99] ([i915#5176]) +1 similar issue [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb3/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf: - shard-tglb: NOTRUN -> [SKIP][100] ([i915#2920]) [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb5/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html - shard-iclb: NOTRUN -> [SKIP][101] ([i915#2920]) [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html * igt@kms_psr2_su@frontbuffer-xrgb8888: - shard-apl: NOTRUN -> [SKIP][102] ([fdo#109271] / [i915#658]) +1 similar issue [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl6/igt@kms_psr2_su@frontbuffer-xrgb8888.html * igt@kms_psr2_su@page_flip-nv12: - shard-tglb: NOTRUN -> [SKIP][103] ([i915#1911]) [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb1/igt@kms_psr2_su@page_flip-nv12.html - shard-glk: NOTRUN -> [SKIP][104] ([fdo#109271] / [i915#658]) +1 similar issue [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk3/igt@kms_psr2_su@page_flip-nv12.html - shard-iclb: NOTRUN -> [FAIL][105] ([i915#5939]) [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_psr2_su@page_flip-nv12.html - shard-kbl: NOTRUN -> [SKIP][106] ([fdo#109271] / [i915#658]) +1 similar issue [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl6/igt@kms_psr2_su@page_flip-nv12.html * igt@kms_psr@psr2_dpms: - shard-tglb: NOTRUN -> [FAIL][107] ([i915#132] / [i915#3467]) [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb8/igt@kms_psr@psr2_dpms.html - shard-iclb: NOTRUN -> [SKIP][108] ([fdo#109441]) [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb5/igt@kms_psr@psr2_dpms.html * igt@kms_psr@psr2_primary_page_flip: - shard-iclb: [PASS][109] -> [SKIP][110] ([fdo#109441]) +2 similar issues [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb6/igt@kms_psr@psr2_primary_page_flip.html * igt@kms_vblank@pipe-b-ts-continuation-suspend: - shard-apl: [PASS][111] -> [DMESG-WARN][112] ([i915#180]) +1 similar issue [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl4/igt@kms_vblank@pipe-b-ts-continuation-suspend.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html * igt@kms_vrr@flip-suspend: - shard-tglb: NOTRUN -> [SKIP][113] ([i915#3555]) [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb7/igt@kms_vrr@flip-suspend.html * igt@kms_writeback@writeback-invalid-parameters: - shard-apl: NOTRUN -> [SKIP][114] ([fdo#109271] / [i915#2437]) [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl8/igt@kms_writeback@writeback-invalid-parameters.html - shard-tglb: NOTRUN -> [SKIP][115] ([i915#2437]) [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb6/igt@kms_writeback@writeback-invalid-parameters.html - shard-glk: NOTRUN -> [SKIP][116] ([fdo#109271] / [i915#2437]) [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk8/igt@kms_writeback@writeback-invalid-parameters.html - shard-iclb: NOTRUN -> [SKIP][117] ([i915#2437]) [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@kms_writeback@writeback-invalid-parameters.html - shard-kbl: NOTRUN -> [SKIP][118] ([fdo#109271] / [i915#2437]) [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl1/igt@kms_writeback@writeback-invalid-parameters.html * igt@perf@polling-parameterized: - shard-tglb: [PASS][119] -> [FAIL][120] ([i915#5639]) [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-tglb8/igt@perf@polling-parameterized.html [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb5/igt@perf@polling-parameterized.html * igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name: - shard-tglb: NOTRUN -> [SKIP][121] ([fdo#109291]) +3 similar issues [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb6/igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name.html - shard-iclb: NOTRUN -> [SKIP][122] ([fdo#109291]) +3 similar issues [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb4/igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name.html * igt@sysfs_clients@create: - shard-apl: NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#2994]) [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl4/igt@sysfs_clients@create.html #### Possible fixes #### * igt@gem_eio@in-flight-contexts-1us: - shard-iclb: [TIMEOUT][124] ([i915#3070]) -> [PASS][125] [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb5/igt@gem_eio@in-flight-contexts-1us.html [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb1/igt@gem_eio@in-flight-contexts-1us.html * igt@gem_exec_balancer@parallel: - shard-iclb: [SKIP][126] ([i915#4525]) -> [PASS][127] [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb7/igt@gem_exec_balancer@parallel.html [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@gem_exec_balancer@parallel.html * igt@gem_exec_fair@basic-none@rcs0: - shard-kbl: [FAIL][128] ([i915#2842]) -> [PASS][129] [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl6/igt@gem_exec_fair@basic-none@rcs0.html [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl7/igt@gem_exec_fair@basic-none@rcs0.html * igt@gem_exec_fair@basic-pace-solo@rcs0: - shard-iclb: [FAIL][130] ([i915#2842]) -> [PASS][131] [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb6/igt@gem_exec_fair@basic-pace-solo@rcs0.html [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@gem_exec_fair@basic-pace-solo@rcs0.html * igt@gem_huc_copy@huc-copy: - shard-tglb: [SKIP][132] ([i915#2190]) -> [PASS][133] [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-tglb6/igt@gem_huc_copy@huc-copy.html [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-tglb3/igt@gem_huc_copy@huc-copy.html * igt@i915_pm_dc@dc6-dpms: - shard-iclb: [FAIL][134] ([i915#454]) -> [PASS][135] +1 similar issue [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb1/igt@i915_pm_dc@dc6-dpms.html * igt@i915_pm_rpm@modeset-non-lpsp-stress: - shard-kbl: [TIMEOUT][136] ([i915#6168]) -> [PASS][137] [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl7/igt@i915_pm_rpm@modeset-non-lpsp-stress.html [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl6/igt@i915_pm_rpm@modeset-non-lpsp-stress.html - shard-apl: [TIMEOUT][138] ([i915#6168]) -> [PASS][139] [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl3/igt@i915_pm_rpm@modeset-non-lpsp-stress.html [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl8/igt@i915_pm_rpm@modeset-non-lpsp-stress.html * igt@i915_suspend@forcewake: - shard-kbl: [DMESG-WARN][140] ([i915#180]) -> [PASS][141] [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl7/igt@i915_suspend@forcewake.html [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl6/igt@i915_suspend@forcewake.html * igt@kms_ccs@pipe-b-bad-pixel-format-y_tiled_ccs: - shard-apl: [DMESG-WARN][142] ([i915#62]) -> [PASS][143] +46 similar issues [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_ccs@pipe-b-bad-pixel-format-y_tiled_ccs.html [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl4/igt@kms_ccs@pipe-b-bad-pixel-format-y_tiled_ccs.html * igt@kms_draw_crc@draw-method-rgb565-render-xtiled: - shard-glk: [FAIL][144] ([i915#5160]) -> [PASS][145] [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-glk6/igt@kms_draw_crc@draw-method-rgb565-render-xtiled.html [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-glk7/igt@kms_draw_crc@draw-method-rgb565-render-xtiled.html * igt@kms_flip@blocking-wf_vblank@a-dp1: - shard-apl: [DMESG-WARN][146] ([i915#1982] / [i915#62]) -> [PASS][147] [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_flip@blocking-wf_vblank@a-dp1.html [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl7/igt@kms_flip@blocking-wf_vblank@a-dp1.html * igt@kms_flip@flip-vs-suspend@a-dp1: - shard-apl: [DMESG-WARN][148] ([i915#180]) -> [PASS][149] +3 similar issues [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl1/igt@kms_flip@flip-vs-suspend@a-dp1.html [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl8/igt@kms_flip@flip-vs-suspend@a-dp1.html * igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render: - shard-snb: [SKIP][150] ([fdo#109271]) -> [PASS][151] [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-snb6/igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render.html [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-snb5/igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render.html * igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1: - shard-kbl: [FAIL][152] ([i915#1188]) -> [PASS][153] [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl1/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl7/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html * igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1: - shard-iclb: [SKIP][154] ([i915#5235]) -> [PASS][155] +2 similar issues [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb8/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html * igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-b-dp-1: - shard-apl: [DMESG-WARN][156] ([i915#180] / [i915#62]) -> [PASS][157] +2 similar issues [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-b-dp-1.html [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl6/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-b-dp-1.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-iclb: [SKIP][158] ([fdo#109441]) -> [PASS][159] [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb1/igt@kms_psr@psr2_cursor_mmap_cpu.html [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@kms_vblank@pipe-c-wait-busy-hang: - shard-apl: [SKIP][160] ([fdo#109271]) -> [PASS][161] +11 similar issues [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_vblank@pipe-c-wait-busy-hang.html [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl7/igt@kms_vblank@pipe-c-wait-busy-hang.html #### Warnings #### * igt@kms_content_protection@uevent: - shard-apl: [SKIP][162] ([fdo#109271]) -> [FAIL][163] ([i915#2105]) [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-apl7/igt@kms_content_protection@uevent.html [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-apl1/igt@kms_content_protection@uevent.html * igt@kms_psr2_sf@cursor-plane-update-sf: - shard-iclb: [SKIP][164] ([i915#2920]) -> [SKIP][165] ([fdo#111068] / [i915#658]) +1 similar issue [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-iclb2/igt@kms_psr2_sf@cursor-plane-update-sf.html [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-iclb7/igt@kms_psr2_sf@cursor-plane-update-sf.html * igt@runner@aborted: - shard-kbl: ([FAIL][166], [FAIL][167], [FAIL][168]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][169], [FAIL][170]) ([i915#3002] / [i915#4312] / [i915#5257]) [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl7/igt@runner@aborted.html [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl7/igt@runner@aborted.html [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6603/shard-kbl6/igt@runner@aborted.html [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl4/igt@runner@aborted.html [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/shard-kbl4/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274 [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283 [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289 [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291 [fdo#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293 [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295 [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300 [fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302 [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303 [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307 [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308 [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309 [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312 [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313 [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189 [fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542 [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723 [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725 [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066 [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 [fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314 [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614 [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615 [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644 [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656 [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054 [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283 [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099 [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155 [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188 [i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132 [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397 [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755 [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825 [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836 [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839 [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845 [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849 [i915#1850]: https://gitlab.freedesktop.org/drm/intel/issues/1850 [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902 [i915#1911]: https://gitlab.freedesktop.org/drm/intel/issues/1911 [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2105]: https://gitlab.freedesktop.org/drm/intel/issues/2105 [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410 [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411 [i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433 [i915#2435]: https://gitlab.freedesktop.org/drm/intel/issues/2435 [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436 [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437 [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527 [i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530 [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582 [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658 [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672 [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681 [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705 [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846 [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856 [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867 [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920 [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994 [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002 [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012 [i915#3070]: https://gitlab.freedesktop.org/drm/intel/issues/3070 [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116 [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281 [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282 [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291 [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297 [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299 [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301 [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323 [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361 [i915#3376]: https://gitlab.freedesktop.org/drm/intel/issues/3376 [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458 [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467 [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469 [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536 [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558 [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637 [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638 [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689 [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708 [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734 [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742 [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804 [i915#3828]: https://gitlab.freedesktop.org/drm/intel/issues/3828 [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886 [i915#3936]: https://gitlab.freedesktop.org/drm/intel/issues/3936 [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938 [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952 [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955 [i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966 [i915#3987]: https://gitlab.freedesktop.org/drm/intel/issues/3987 [i915#4032]: https://gitlab.freedesktop.org/drm/intel/issues/4032 [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036 [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404 [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070 [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077 [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078 [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079 [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083 [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171 [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212 [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213 [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215 [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270 [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281 [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312 [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433 [i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369 [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387 [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391 [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494 [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525 [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771 [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812 [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833 [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852 [i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853 [i915#4854]: https://gitlab.freedesktop.org/drm/intel/issues/4854 [i915#4855]: https://gitlab.freedesktop.org/drm/intel/issues/4855 [i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859 [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860 [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873 [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877 [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879 [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880 [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881 [i915#4883]: https://gitlab.freedesktop.org/drm/intel/issues/4883 [i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884 [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893 [i915#4904]: https://gitlab.freedesktop.org/drm/intel/issues/4904 [i915#4939]: https://gitlab.freedesktop.org/drm/intel/issues/4939 [i915#4941]: https://gitlab.freedesktop.org/drm/intel/issues/4941 [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957 [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991 [i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160 [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176 [i915#5178]: https://gitlab.freedesktop.org/drm/intel/issues/5178 [i915#5234]: https://gitlab.freedesktop.org/drm/intel/issues/5234 [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235 [i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257 [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286 [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287 [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288 [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289 [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325 [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439 [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461 [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563 [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566 [i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639 [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723 [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784 [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903 [i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939 [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095 [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117 [i915#6168]: https://gitlab.freedesktop.org/drm/intel/issues/6168 [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227 [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230 [i915#6234]: https://gitlab.freedesktop.org/drm/intel/issues/6234 [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248 [i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251 [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252 [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258 [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268 [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301 [i915#6331]: https://gitlab.freedesktop.org/drm/intel/issues/6331 [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334 [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335 [i915#6405]: https://gitlab.freedesktop.org/drm/intel/issues/6405 [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412 [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433 [i915#6458]: https://gitlab.freedesktop.org/drm/intel/issues/6458 [i915#6463]: https://gitlab.freedesktop.org/drm/intel/issues/6463 [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6603 -> IGTPW_7582 CI-20190529: 20190529 CI_DRM_11946: 0e9c43d76a145712da46e935d429ce2a3eea80e8 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_7582: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html IGT_6603: d851d950cf805f3021d67666db67e24fae1b99ee @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html [-- Attachment #2: Type: text/html, Size: 53845 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.IGT: failure for tooling: Add linux's .clang-format (rev3) 2022-07-29 10:38 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork @ 2022-08-02 22:25 ` Jim Shargo 0 siblings, 0 replies; 15+ messages in thread From: Jim Shargo @ 2022-08-02 22:25 UTC (permalink / raw) To: Development mailing list for IGT GPU Tools, Petri Latvala, Mark Yacoub, Arkadiusz Hiler Cc: Jim Shargo Hi! Does this failure (which seems unrelated :P) block the submission? Possible to re-run? Thanks! On Fri, Jul 29, 2022 at 6:39 AM Patchwork <patchwork@emeril.freedesktop.org> wrote: > > Patch Details > Series:tooling: Add linux's .clang-format (rev3) > URL:https://patchwork.freedesktop.org/series/106835/ > State:failure > Details:https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html > > CI Bug Log - changes from IGT_6603_full -> IGTPW_7582_full > > Summary > > FAILURE > > Serious unknown changes coming with IGTPW_7582_full absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in IGTPW_7582_full, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives in CI. > > External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html > > Participating hosts (7 -> 10) > > Additional (3): shard-rkl shard-dg1 shard-tglu > > Possible new issues > > Here are the unknown changes that may have been introduced in IGTPW_7582_full: > > IGT changes > > Possible regressions > > igt@kms_flip@flip-vs-modeset-vs-hang@c-dp1: > > shard-apl: PASS -> DMESG-WARN > > Suppressed > > The following results come from untrusted machines, tests, or statuses. > They do not affect the overall result. > > igt@kms_sysfs_edid_timing: > > {shard-dg1}: NOTRUN -> FAIL > > Known issues > > Here are the changes found in IGTPW_7582_full that come from known issues: > > IGT changes > > Issues hit > > igt@gem_busy@close-race: > > shard-snb: PASS -> INCOMPLETE (i915#6234) > > igt@gem_ctx_persistence@engines-hostile: > > shard-snb: NOTRUN -> SKIP (fdo#109271 / i915#1099) +1 similar issue > > igt@gem_ctx_sseu@engines: > > shard-tglb: NOTRUN -> SKIP (i915#280) +1 similar issue > > igt@gem_exec_balancer@parallel-contexts: > > shard-iclb: PASS -> SKIP (i915#4525) +1 similar issue > > igt@gem_exec_balancer@parallel-ordering: > > shard-tglb: NOTRUN -> FAIL (i915#6117) > > shard-iclb: NOTRUN -> SKIP (i915#4525) +1 similar issue > > shard-kbl: NOTRUN -> FAIL (i915#6117) > > igt@gem_exec_fair@basic-deadline: > > shard-glk: PASS -> FAIL (i915#2846) > > igt@gem_exec_fair@basic-pace-share@rcs0: > > shard-tglb: PASS -> FAIL (i915#2842) > > igt@gem_exec_fair@basic-sync@rcs0: > > shard-kbl: PASS -> SKIP (fdo#109271) > > igt@gem_lmem_swapping@heavy-verify-multi-ccs: > > shard-tglb: NOTRUN -> SKIP (i915#4613) > > shard-glk: NOTRUN -> SKIP (fdo#109271 / i915#4613) > > shard-iclb: NOTRUN -> SKIP (i915#4613) > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / i915#4613) > > igt@gem_lmem_swapping@parallel-random-engines: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#4613) +1 similar issue > > igt@gem_pxp@create-regular-context-2: > > shard-tglb: NOTRUN -> SKIP (i915#4270) > > shard-iclb: NOTRUN -> SKIP (i915#4270) > > igt@gem_render_copy@x-tiled-to-vebox-yf-tiled: > > shard-iclb: NOTRUN -> SKIP (i915#768) > > igt@gen7_exec_parse@cmd-crossing-page: > > shard-tglb: NOTRUN -> SKIP (fdo#109289) +2 similar issues > > shard-iclb: NOTRUN -> SKIP (fdo#109289) +1 similar issue > > igt@gen9_exec_parse@allowed-all: > > shard-glk: PASS -> DMESG-WARN (i915#5566 / i915#716) > > igt@gen9_exec_parse@basic-rejected-ctx-param: > > shard-snb: NOTRUN -> SKIP (fdo#109271) +119 similar issues > > igt@gen9_exec_parse@unaligned-access: > > shard-tglb: NOTRUN -> SKIP (i915#2527 / i915#2856) +1 similar issue > > shard-iclb: NOTRUN -> SKIP (i915#2856) +1 similar issue > > igt@i915_module_load@reload-with-fault-injection: > > shard-snb: PASS -> INCOMPLETE (i915#5178) > > igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#1937) > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / i915#1937) > > igt@i915_pm_rpm@gem-execbuf-stress-pc8: > > shard-glk: NOTRUN -> SKIP (fdo#109271) +72 similar issues > > shard-iclb: NOTRUN -> SKIP (fdo#109293 / fdo#109506) > > shard-tglb: NOTRUN -> SKIP (fdo#109506 / i915#2411) > > igt@kms_big_fb@4-tiled-32bpp-rotate-90: > > shard-tglb: NOTRUN -> SKIP (i915#5286) +1 similar issue > > shard-iclb: NOTRUN -> SKIP (i915#5286) +1 similar issue > > igt@kms_big_fb@linear-32bpp-rotate-270: > > shard-tglb: NOTRUN -> SKIP (fdo#111614) +1 similar issue > > shard-iclb: NOTRUN -> SKIP (fdo#110725 / fdo#111614) +1 similar issue > > igt@kms_big_fb@yf-tiled-64bpp-rotate-0: > > shard-iclb: NOTRUN -> SKIP (fdo#110723) +1 similar issue > > igt@kms_big_fb@yf-tiled-64bpp-rotate-90: > > shard-kbl: NOTRUN -> SKIP (fdo#109271) +115 similar issues > > igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip: > > shard-tglb: NOTRUN -> SKIP (fdo#111615) +2 similar issues > > igt@kms_ccs@pipe-a-ccs-on-another-bo-yf_tiled_ccs: > > shard-tglb: NOTRUN -> SKIP (fdo#111615 / i915#3689) +4 similar issues > > igt@kms_ccs@pipe-a-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs: > > shard-iclb: NOTRUN -> SKIP (fdo#109278) +16 similar issues > > igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc: > > shard-iclb: NOTRUN -> SKIP (fdo#109278 / i915#3886) +2 similar issues > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / i915#3886) +2 similar issues > > igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#3886) +4 similar issues > > igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_rc_ccs: > > shard-tglb: NOTRUN -> SKIP (i915#3689 / i915#6095) +2 similar issues > > igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs: > > shard-tglb: NOTRUN -> SKIP (i915#3689 / i915#3886) +1 similar issue > > shard-glk: NOTRUN -> SKIP (fdo#109271 / i915#3886) +2 similar issues > > igt@kms_ccs@pipe-d-bad-pixel-format-y_tiled_gen12_mc_ccs: > > shard-apl: NOTRUN -> SKIP (fdo#109271) +132 similar issues > > igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_mc_ccs: > > shard-tglb: NOTRUN -> SKIP (i915#3689) +1 similar issue > > igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs: > > shard-tglb: NOTRUN -> SKIP (i915#6095) +2 similar issues > > igt@kms_chamelium@dp-hpd-for-each-pipe: > > shard-glk: NOTRUN -> SKIP (fdo#109271 / fdo#111827) +7 similar issues > > igt@kms_chamelium@hdmi-mode-timings: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / fdo#111827) +11 similar issues > > igt@kms_color_chamelium@pipe-a-ctm-0-25: > > shard-snb: NOTRUN -> SKIP (fdo#109271 / fdo#111827) +6 similar issues > > igt@kms_color_chamelium@pipe-b-ctm-0-5: > > shard-iclb: NOTRUN -> SKIP (fdo#109284 / fdo#111827) +6 similar issues > > igt@kms_color_chamelium@pipe-b-ctm-negative: > > shard-tglb: NOTRUN -> SKIP (fdo#109284 / fdo#111827) +7 similar issues > > igt@kms_color_chamelium@pipe-d-ctm-negative: > > shard-iclb: NOTRUN -> SKIP (fdo#109278 / fdo#109284 / fdo#111827) > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / fdo#111827) +8 similar issues > > igt@kms_content_protection@legacy: > > shard-apl: NOTRUN -> TIMEOUT (i915#1319) +1 similar issue > > shard-tglb: NOTRUN -> SKIP (i915#1063) +1 similar issue > > shard-iclb: NOTRUN -> SKIP (fdo#109300 / fdo#111066) +1 similar issue > > shard-kbl: NOTRUN -> TIMEOUT (i915#1319) +1 similar issue > > igt@kms_content_protection@uevent: > > shard-kbl: NOTRUN -> FAIL (i915#2105) > > igt@kms_cursor_crc@cursor-suspend@pipe-a-dp-1: > > shard-apl: NOTRUN -> DMESG-WARN (i915#180) > > igt@kms_cursor_crc@cursor-suspend@pipe-b-edp-1: > > shard-iclb: NOTRUN -> DMESG-WARN (i915#2867) > > igt@kms_cursor_legacy@cursorb-vs-flipa@varying-size: > > shard-tglb: NOTRUN -> SKIP (fdo#109274 / fdo#111825) +6 similar issues > > igt@kms_draw_crc@draw-method-xrgb8888-mmap-gtt-4tiled: > > shard-tglb: NOTRUN -> SKIP (i915#5287) > > shard-iclb: NOTRUN -> SKIP (i915#5287) > > igt@kms_fbcon_fbt@fbc-suspend: > > shard-apl: PASS -> INCOMPLETE (i915#180 / i915#4939) > > igt@kms_flip@2x-absolute-wf_vblank: > > shard-tglb: NOTRUN -> SKIP (fdo#109274 / fdo#111825 / i915#3637 / i915#3966) > > igt@kms_flip@2x-flip-vs-panning: > > shard-iclb: NOTRUN -> SKIP (fdo#109274) +11 similar issues > > igt@kms_flip@2x-plain-flip-fb-recreate@ab-hdmi-a1-hdmi-a2: > > shard-glk: PASS -> FAIL (i915#2122) > > igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset: > > shard-tglb: NOTRUN -> SKIP (fdo#109274 / fdo#111825 / i915#3637) +3 similar issues > > igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1: > > shard-apl: PASS -> FAIL (i915#79) > > igt@kms_flip_scaled_crc@flip-32bpp-linear-to-64bpp-linear-downscaling@pipe-a-default-mode: > > shard-iclb: NOTRUN -> SKIP (i915#3555) +2 similar issues > > igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode: > > shard-iclb: NOTRUN -> SKIP (i915#2672) +6 similar issues > > igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode: > > shard-tglb: NOTRUN -> SKIP (i915#2672) +1 similar issue > > igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling@pipe-a-default-mode: > > shard-iclb: NOTRUN -> SKIP (i915#2672 / i915#3555) +1 similar issue > > igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt: > > shard-iclb: NOTRUN -> SKIP (fdo#109280) +12 similar issues > > igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite: > > shard-tglb: NOTRUN -> SKIP (i915#6497) +4 similar issues > > igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-mmap-gtt: > > shard-tglb: NOTRUN -> SKIP (fdo#109280 / fdo#111825) +12 similar issues > > igt@kms_hdmi_inject@inject-audio: > > shard-tglb: PASS -> SKIP (i915#433) > > igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1: > > shard-kbl: PASS -> FAIL (i915#1188) > > igt@kms_plane_lowres@tiling-x@pipe-b-edp-1: > > shard-iclb: NOTRUN -> SKIP (i915#3536) +2 similar issues > > igt@kms_plane_lowres@tiling-x@pipe-c-edp-1: > > shard-tglb: NOTRUN -> SKIP (i915#3536) +3 similar issues > > igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1: > > shard-iclb: PASS -> SKIP (i915#5176) +1 similar issue > > igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf: > > shard-tglb: NOTRUN -> SKIP (i915#2920) > > shard-iclb: NOTRUN -> SKIP (i915#2920) > > igt@kms_psr2_su@frontbuffer-xrgb8888: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#658) +1 similar issue > > igt@kms_psr2_su@page_flip-nv12: > > shard-tglb: NOTRUN -> SKIP (i915#1911) > > shard-glk: NOTRUN -> SKIP (fdo#109271 / i915#658) +1 similar issue > > shard-iclb: NOTRUN -> FAIL (i915#5939) > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / i915#658) +1 similar issue > > igt@kms_psr@psr2_dpms: > > shard-tglb: NOTRUN -> FAIL (i915#132 / i915#3467) > > shard-iclb: NOTRUN -> SKIP (fdo#109441) > > igt@kms_psr@psr2_primary_page_flip: > > shard-iclb: PASS -> SKIP (fdo#109441) +2 similar issues > > igt@kms_vblank@pipe-b-ts-continuation-suspend: > > shard-apl: PASS -> DMESG-WARN (i915#180) +1 similar issue > > igt@kms_vrr@flip-suspend: > > shard-tglb: NOTRUN -> SKIP (i915#3555) > > igt@kms_writeback@writeback-invalid-parameters: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#2437) > > shard-tglb: NOTRUN -> SKIP (i915#2437) > > shard-glk: NOTRUN -> SKIP (fdo#109271 / i915#2437) > > shard-iclb: NOTRUN -> SKIP (i915#2437) > > shard-kbl: NOTRUN -> SKIP (fdo#109271 / i915#2437) > > igt@perf@polling-parameterized: > > shard-tglb: PASS -> FAIL (i915#5639) > > igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name: > > shard-tglb: NOTRUN -> SKIP (fdo#109291) +3 similar issues > > shard-iclb: NOTRUN -> SKIP (fdo#109291) +3 similar issues > > igt@sysfs_clients@create: > > shard-apl: NOTRUN -> SKIP (fdo#109271 / i915#2994) > > Possible fixes > > igt@gem_eio@in-flight-contexts-1us: > > shard-iclb: TIMEOUT (i915#3070) -> PASS > > igt@gem_exec_balancer@parallel: > > shard-iclb: SKIP (i915#4525) -> PASS > > igt@gem_exec_fair@basic-none@rcs0: > > shard-kbl: FAIL (i915#2842) -> PASS > > igt@gem_exec_fair@basic-pace-solo@rcs0: > > shard-iclb: FAIL (i915#2842) -> PASS > > igt@gem_huc_copy@huc-copy: > > shard-tglb: SKIP (i915#2190) -> PASS > > igt@i915_pm_dc@dc6-dpms: > > shard-iclb: FAIL (i915#454) -> PASS +1 similar issue > > igt@i915_pm_rpm@modeset-non-lpsp-stress: > > shard-kbl: TIMEOUT (i915#6168) -> PASS > > shard-apl: TIMEOUT (i915#6168) -> PASS > > igt@i915_suspend@forcewake: > > shard-kbl: DMESG-WARN (i915#180) -> PASS > > igt@kms_ccs@pipe-b-bad-pixel-format-y_tiled_ccs: > > shard-apl: DMESG-WARN (i915#62) -> PASS +46 similar issues > > igt@kms_draw_crc@draw-method-rgb565-render-xtiled: > > shard-glk: FAIL (i915#5160) -> PASS > > igt@kms_flip@blocking-wf_vblank@a-dp1: > > shard-apl: DMESG-WARN (i915#1982 / i915#62) -> PASS > > igt@kms_flip@flip-vs-suspend@a-dp1: > > shard-apl: DMESG-WARN (i915#180) -> PASS +3 similar issues > > igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render: > > shard-snb: SKIP (fdo#109271) -> PASS > > igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1: > > shard-kbl: FAIL (i915#1188) -> PASS > > igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1: > > shard-iclb: SKIP (i915#5235) -> PASS +2 similar issues > > igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-b-dp-1: > > shard-apl: DMESG-WARN (i915#180 / i915#62) -> PASS +2 similar issues > > igt@kms_psr@psr2_cursor_mmap_cpu: > > shard-iclb: SKIP (fdo#109441) -> PASS > > igt@kms_vblank@pipe-c-wait-busy-hang: > > shard-apl: SKIP (fdo#109271) -> PASS +11 similar issues > > Warnings > > igt@kms_content_protection@uevent: > > shard-apl: SKIP (fdo#109271) -> FAIL (i915#2105) > > igt@kms_psr2_sf@cursor-plane-update-sf: > > shard-iclb: SKIP (i915#2920) -> SKIP (fdo#111068 / i915#658) +1 similar issue > > igt@runner@aborted: > > shard-kbl: (FAIL, FAIL, FAIL) (i915#180 / i915#3002 / i915#4312 / i915#5257) -> (FAIL, FAIL) (i915#3002 / i915#4312 / i915#5257) > > {name}: This element is suppressed. This means it is ignored when computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > Build changes > > CI: CI-20190529 -> None > IGT: IGT_6603 -> IGTPW_7582 > > CI-20190529: 20190529 > CI_DRM_11946: 0e9c43d76a145712da46e935d429ce2a3eea80e8 @ git://anongit.freedesktop.org/gfx-ci/linux > IGTPW_7582: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7582/index.html > IGT_6603: d851d950cf805f3021d67666db67e24fae1b99ee @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2023-08-31 17:04 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-07-26 19:01 [igt-dev] [PATCH i-g-t] tooling: Add linux's .clang-format Jim Shargo 2022-07-27 10:52 ` Petri Latvala 2022-07-27 20:10 ` Jim Shargo 2022-07-27 20:21 ` [igt-dev] [PATCH i-g-t v2] " Jim Shargo 2022-07-28 7:55 ` Petri Latvala 2022-07-28 17:55 ` Jim Shargo 2022-07-28 17:57 ` [igt-dev] [PATCH i-g-t v3] " Jim Shargo 2022-08-12 12:53 ` Petri Latvala 2022-08-12 16:00 ` Jim Shargo 2022-08-19 14:23 ` Jim Shargo 2022-08-23 11:01 ` Petri Latvala 2023-08-31 17:03 ` Mauro Carvalho Chehab 2022-07-29 9:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tooling: Add linux's .clang-format (rev3) Patchwork 2022-07-29 10:38 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 2022-08-02 22:25 ` Jim Shargo
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.