[Intel-gfx] [PATCH] drm/i915: use localized __diag_ignore_all() instead of per file

Gustavo Sousa gustavo.sousa at intel.com
Thu May 25 23:50:50 UTC 2023


Quoting Jani Nikula (2023-05-25 18:06:53-03:00)
>Use localized __diag_push(), __diag_ignore_all() with rationale, and
>__diag_pop() for specific initializations instead of blanket disabling
>of -Woverride-init across several files.
>
>Signed-off-by: Jani Nikula <jani.nikula at intel.com>

Reviewed-by: Gustavo Sousa <gustavo.sousa at intel.com>

>---
> drivers/gpu/drm/i915/Makefile                       | 5 -----
> drivers/gpu/drm/i915/display/intel_display_device.c | 5 +++++
> drivers/gpu/drm/i915/display/intel_fbdev.c          | 5 +++++
> drivers/gpu/drm/i915/i915_pci.c                     | 5 +++++
> 4 files changed, 15 insertions(+), 5 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
>index 06374fc072d3..1c9ed4c52760 100644
>--- a/drivers/gpu/drm/i915/Makefile
>+++ b/drivers/gpu/drm/i915/Makefile
>@@ -23,11 +23,6 @@ subdir-ccflags-y += $(call cc-disable-warning, unused-but-set-variable)
> subdir-ccflags-y += $(call cc-disable-warning, frame-address)
> subdir-ccflags-$(CONFIG_DRM_I915_WERROR) += -Werror
> 
>-# Fine grained warnings disable
>-CFLAGS_i915_pci.o = $(call cc-disable-warning, override-init)
>-CFLAGS_display/intel_display_device.o = $(call cc-disable-warning, override-init)
>-CFLAGS_display/intel_fbdev.o = $(call cc-disable-warning, override-init)
>-
> subdir-ccflags-y += -I$(srctree)/$(src)
> 
> # Please keep these build lists sorted!
>diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c b/drivers/gpu/drm/i915/display/intel_display_device.c
>index a513ac8f71a3..464df1764a86 100644
>--- a/drivers/gpu/drm/i915/display/intel_display_device.c
>+++ b/drivers/gpu/drm/i915/display/intel_display_device.c
>@@ -14,6 +14,9 @@
> #include "intel_display_reg_defs.h"
> #include "intel_fbc.h"
> 
>+__diag_push();
>+__diag_ignore_all("-Woverride-init", "Allow overriding inherited members");
>+
> static const struct intel_display_device_info no_display = {};
> 
> #define PIPE_A_OFFSET                0x70000
>@@ -650,6 +653,8 @@ static const struct intel_display_device_info xe_lpdp_display = {
>                 BIT(TRANSCODER_C) | BIT(TRANSCODER_D),
> };
> 
>+__diag_pop();
>+
> #undef INTEL_VGA_DEVICE
> #undef INTEL_QUANTA_VGA_DEVICE
> #define INTEL_VGA_DEVICE(id, info) { id, info }
>diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
>index aab1ae74a8f7..2c3f7befed17 100644
>--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
>+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
>@@ -130,6 +130,9 @@ static int intel_fbdev_mmap(struct fb_info *info, struct vm_area_struct *vma)
>         return i915_gem_fb_mmap(obj, vma);
> }
> 
>+__diag_push();
>+__diag_ignore_all("-Woverride-init", "Allow overriding the default ops");
>+
> static const struct fb_ops intelfb_ops = {
>         .owner = THIS_MODULE,
>         DRM_FB_HELPER_DEFAULT_OPS,
>@@ -144,6 +147,8 @@ static const struct fb_ops intelfb_ops = {
>         .fb_mmap = intel_fbdev_mmap,
> };
> 
>+__diag_pop();
>+
> static int intelfb_alloc(struct drm_fb_helper *helper,
>                          struct drm_fb_helper_surface_size *sizes)
> {
>diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
>index 928975d5fe2f..3d7a5db9833b 100644
>--- a/drivers/gpu/drm/i915/i915_pci.c
>+++ b/drivers/gpu/drm/i915/i915_pci.c
>@@ -38,6 +38,9 @@
> #include "i915_reg.h"
> #include "intel_pci_config.h"
> 
>+__diag_push();
>+__diag_ignore_all("-Woverride-init", "Allow overriding inherited members");
>+
> #define PLATFORM(x) .platform = (x)
> #define GEN(x) \
>         .__runtime.graphics.ip.ver = (x), \
>@@ -843,6 +846,8 @@ static const struct intel_device_info mtl_info = {
> 
> #undef PLATFORM
> 
>+__diag_pop();
>+
> /*
>  * Make sure any device matches here are from most specific to most
>  * general.  For example, since the Quanta match is based on the subsystem
>-- 
>2.39.2
>


More information about the Intel-gfx mailing list