2018-05-01 18:25:28

by Matthias Kaehlcke

[permalink] [raw]
Subject: [PATCH v3] drm/i915: Disable some extra clang warnings

Commit 39bf4de89ff7 ("drm/i915: Add -Wall -Wextra to our build, set
warnings to full") enabled extra warnings for i915 to spot possible
bugs in new code, and then disabled a subset of these warnings to keep
the current code building without warnings (with gcc). Enabling the
extra warnings also enabled some additional clang-only warnings, as a
result building i915 with clang currently is extremely noisy. For now
also disable the clang warnings sign-compare, sometimes-uninitialized,
unneeded-internal-declaration and initializer-overrides. If desired
they can be re-enabled after the code has been fixed.

Signed-off-by: Matthias Kaehlcke <[email protected]>
---
Changes in v3:
- don't disable -Wunneeded-internal-declaration , the only occurrence
can be fixed in the code
- removed 'Fixes' tag, since backporting is not necessary

drivers/gpu/drm/i915/Makefile | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 9bee52a949a9..dfe01452c8d1 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -18,6 +18,10 @@ subdir-ccflags-y += $(call cc-disable-warning, type-limits)
subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
subdir-ccflags-y += $(call cc-disable-warning, implicit-fallthrough)
subdir-ccflags-y += $(call cc-disable-warning, unused-but-set-variable)
+# clang warnings
+subdir-ccflags-y += $(call cc-disable-warning, sign-compare)
+subdir-ccflags-y += $(call cc-disable-warning, sometimes-uninitialized)
+subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
subdir-ccflags-$(CONFIG_DRM_I915_WERROR) += -Werror

# Fine grained warnings disable
--
2.17.0.441.gb46fe60e1d-goog



2018-05-02 09:46:53

by Chris Wilson

[permalink] [raw]
Subject: Re: [PATCH v3] drm/i915: Disable some extra clang warnings

Quoting Matthias Kaehlcke (2018-05-01 19:24:40)
> Commit 39bf4de89ff7 ("drm/i915: Add -Wall -Wextra to our build, set
> warnings to full") enabled extra warnings for i915 to spot possible
> bugs in new code, and then disabled a subset of these warnings to keep
> the current code building without warnings (with gcc). Enabling the
> extra warnings also enabled some additional clang-only warnings, as a
> result building i915 with clang currently is extremely noisy. For now
> also disable the clang warnings sign-compare, sometimes-uninitialized,
> unneeded-internal-declaration and initializer-overrides. If desired
> they can be re-enabled after the code has been fixed.
>
> Signed-off-by: Matthias Kaehlcke <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
-Chris

2018-05-02 15:40:08

by Chris Wilson

[permalink] [raw]
Subject: Re: [PATCH v3] drm/i915: Disable some extra clang warnings

Quoting Chris Wilson (2018-05-02 10:46:07)
> Quoting Matthias Kaehlcke (2018-05-01 19:24:40)
> > Commit 39bf4de89ff7 ("drm/i915: Add -Wall -Wextra to our build, set
> > warnings to full") enabled extra warnings for i915 to spot possible
> > bugs in new code, and then disabled a subset of these warnings to keep
> > the current code building without warnings (with gcc). Enabling the
> > extra warnings also enabled some additional clang-only warnings, as a
> > result building i915 with clang currently is extremely noisy. For now
> > also disable the clang warnings sign-compare, sometimes-uninitialized,
> > unneeded-internal-declaration and initializer-overrides. If desired
> > they can be re-enabled after the code has been fixed.
> >
> > Signed-off-by: Matthias Kaehlcke <[email protected]>
> Reviewed-by: Chris Wilson <[email protected]>

I've picked this for inclusion and will push shortly.
Thanks for the patch,
-Chris