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@xxxxxxxxx> Reviewed-by: Gustavo Sousa <gustavo.sousa@xxxxxxxxx> >--- > 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 >