Browse Source

drm_hwcomposer: CI: Tune clang-tidy coarse checks

1. Switch to "enable all then disable unwanted" strategy
2. Enable checks that causes small number of failes, marking
   corresponding lines as NOLINT, so we won't introduce
   new such cases unintentionally.

Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
Roman Stratiienko 2 years ago
parent
commit
5f2f3ce3bc

+ 3 - 10
.ci/.gitlab-ci-clang-tidy-coarse.sh

@@ -2,8 +2,8 @@
 
 . ./.ci/.common.sh
 
-TIDY_COARSE_CHECKS="-*,android-*,bugprone-*,cert-*,clang-analyzer-*,"
-TIDY_COARSE_CHECKS+="cppcoreguidelines-*,"
+TIDY_COARSE_CHECKS="*,"
+TIDY_COARSE_CHECKS+="-hicpp-*,-llvmlibc-*,-fuchsia-*,-altera-*,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-pro-bounds-array-to-pointer-decay,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-pro-bounds-constant-array-index,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-pro-bounds-pointer-arithmetic,"
@@ -13,19 +13,12 @@ TIDY_COARSE_CHECKS+="-cppcoreguidelines-pro-type-vararg,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-avoid-magic-numbers,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-macro-usage,"
 TIDY_COARSE_CHECKS+="-cppcoreguidelines-avoid-c-arrays,"
-TIDY_COARSE_CHECKS+="google-*,"
 TIDY_COARSE_CHECKS+="-google-readability-braces-around-statements,"
 TIDY_COARSE_CHECKS+="-google-readability-casting,"
-TIDY_COARSE_CHECKS+="misc-*,"
-TIDY_COARSE_CHECKS+="-misc-non-private-member-variables-in-classes",
-TIDY_COARSE_CHECKS+="modernize-*,"
+TIDY_COARSE_CHECKS+="-misc-non-private-member-variables-in-classes,"
 TIDY_COARSE_CHECKS+="-modernize-avoid-c-arrays,"
 TIDY_COARSE_CHECKS+="-modernize-use-trailing-return-type,"
-TIDY_COARSE_CHECKS+="performance-*,"
-TIDY_COARSE_CHECKS+="portability-*,"
-TIDY_COARSE_CHECKS+="readability-*,"
 TIDY_COARSE_CHECKS+="-readability-braces-around-statements,"
-TIDY_COARSE_CHECKS+="-readability-function-cognitive-complexity,"
 TIDY_COARSE_CHECKS+="-readability-convert-member-functions-to-static,"
 TIDY_COARSE_CHECKS+="-readability-implicit-bool-conversion,"
 TIDY_COARSE_CHECKS+="-readability-identifier-naming,"

+ 1 - 0
DrmHwcTwo.cpp

@@ -495,6 +495,7 @@ HWC2::Error DrmHwcTwo::HwcDisplay::GetDisplayAttribute(hwc2_config_t config,
   return HWC2::Error::None;
 }
 
+// NOLINTNEXTLINE (readability-function-cognitive-complexity): Fixme
 HWC2::Error DrmHwcTwo::HwcDisplay::GetDisplayConfigs(uint32_t *num_configs,
                                                      hwc2_config_t *configs) {
   supported(__func__);

+ 1 - 0
compositor/DrmDisplayCompositor.cpp

@@ -67,6 +67,7 @@ DrmDisplayCompositor::CreateInitializedComposition() const {
   return std::make_unique<DrmDisplayComposition>(crtc, planner_.get());
 }
 
+// NOLINTNEXTLINE (readability-function-cognitive-complexity): Fixme
 auto DrmDisplayCompositor::CommitFrame(AtomicCommitArgs &args) -> int {
   ATRACE_CALL();
 

+ 2 - 0
drm/DrmDevice.cpp

@@ -116,10 +116,12 @@ DrmDevice::DrmDevice() {
   mDrmFbImporter = std::make_unique<DrmFbImporter>(self);
 }
 
+// NOLINTNEXTLINE (readability-function-cognitive-complexity): Fixme
 std::tuple<int, int> DrmDevice::Init(const char *path, int num_displays) {
   /* TODO: Use drmOpenControl here instead */
   fd_ = UniqueFd(open(path, O_RDWR | O_CLOEXEC));
   if (fd() < 0) {
+    // NOLINTNEXTLINE(concurrency-mt-unsafe): Fixme
     ALOGE("Failed to open dri %s: %s", path, strerror(errno));
     return std::make_tuple(-ENODEV, 0);
   }

+ 2 - 0
drm/UEventListener.cpp

@@ -40,6 +40,7 @@ int UEventListener::Init() {
   uevent_fd_ = UniqueFd(
       socket(PF_NETLINK, SOCK_DGRAM | SOCK_CLOEXEC, NETLINK_KOBJECT_UEVENT));
   if (!uevent_fd_) {
+    // NOLINTNEXTLINE(concurrency-mt-unsafe): Fixme
     ALOGE("Failed to open uevent socket: %s", strerror(errno));
     return -errno;
   }
@@ -51,6 +52,7 @@ int UEventListener::Init() {
 
   int ret = bind(uevent_fd_.Get(), (struct sockaddr *)&addr, sizeof(addr));
   if (ret) {
+    // NOLINTNEXTLINE(concurrency-mt-unsafe): Fixme
     ALOGE("Failed to bind uevent socket: %s", strerror(errno));
     return -errno;
   }