From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 90528C47DD9 for ; Wed, 27 Mar 2024 07:50:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EB7576B0096; Wed, 27 Mar 2024 03:50:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E66556B009A; Wed, 27 Mar 2024 03:50:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D08996B009D; Wed, 27 Mar 2024 03:50:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id C06F36B0096 for ; Wed, 27 Mar 2024 03:50:21 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 9AD92A0DC1 for ; Wed, 27 Mar 2024 07:50:21 +0000 (UTC) X-FDA: 81942046242.21.1D84B96 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) by imf18.hostedemail.com (Postfix) with ESMTP id 6B1501C0009 for ; Wed, 27 Mar 2024 07:50:18 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=KcqybKip; spf=pass (imf18.hostedemail.com: domain of jani.nikula@intel.com designates 198.175.65.19 as permitted sender) smtp.mailfrom=jani.nikula@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711525819; a=rsa-sha256; cv=none; b=rlBisg7krNNCuJqrDLxVnv0qzFnD1lA69jOmgx5Wpfyc2WrHAJ0l9p2+UZtHVpcKOAiIPi NPNmXQIxsiuEiJIHaH846ZpY3YPWQq8ovgJTiBn9SZ8xKAyVXw8ppyGzl0lkgWQdoUrB1F 7SjXxqB8lVScu1kuQqRPJ2X/bSjvJcQ= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=KcqybKip; spf=pass (imf18.hostedemail.com: domain of jani.nikula@intel.com designates 198.175.65.19 as permitted sender) smtp.mailfrom=jani.nikula@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711525819; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=8LS42RD3JgnSHisQrv46OAfEznsTYikofUDOW3TMFc0=; b=Zy8aTRYvhtJx1EhFDp+QjWnF2wSyOmVYQ/YqcQVycNi3m0kAtboBM2KRzyG2kdd1p61Y/P X4jaNgoboAe5dYfaSGqGJ6wCVDowE2JLmaMrIDCpxR7ziZPMBUy43OG9osw/z/3J/odCIC H0LfSOt9g7es8oLMOjXrMv6TyAfWz6g= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1711525819; x=1743061819; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=+I0dUNOdZGkwtBeC0T1EU1TrsDrWBxEiMA9XkoJPZrg=; b=KcqybKipMC6ujSy8npenQdYC8aWtC6+QRGg8UgFHfPN2VN6zO3DoKUW8 8M77+K+1aUrrpBmoIGKvLB9MNrP5uEVG75pay6zXO7OAi1TicEjim8/Fq JJoPm1YZkPo9mYwM8fGh4FraRh3+aYJ8JYaH8vG9D1tOqOGAUhU/sAKtY tL8QEAFnkC/BapcYYVSaYCxGuYKnn8Cus+HYm+O468ClutRtAMIa7ia7j PfBqkpCDvl2HuGnt0lWu18a08qZXVdzzwpKhVY31qvE3wqa5QsmsfLPW6 pT90ggsy42fzWnE1KRNNW/IjnR80Usdp7WUQ7Sx1CuIuNYmmkOyZwKui0 g==; X-CSE-ConnectionGUID: sJknphmBSsKJYjWygCZlIA== X-CSE-MsgGUID: vycrXn6XT4GAb7y6MFqqag== X-IronPort-AV: E=McAfee;i="6600,9927,11025"; a="6467194" X-IronPort-AV: E=Sophos;i="6.07,158,1708416000"; d="scan'208";a="6467194" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Mar 2024 00:50:16 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,158,1708416000"; d="scan'208";a="16277502" Received: from mmazilu-mobl1.ger.corp.intel.com (HELO localhost) ([10.252.56.43]) by fmviesa009-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Mar 2024 00:50:08 -0700 From: Jani Nikula To: Arnd Bergmann , Arnd Bergmann , linux-kbuild@vger.kernel.org, Masahiro Yamada , Harry Wentland , Alex Deucher , Christian =?utf-8?Q?K=C3=B6nig?= , Lucas De Marchi , Oded Gabbay , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Jakub Kicinski , Paolo Abeni , Andrew Jeffery , Linus Walleij , Joel Stanley , Alexei Starovoitov , Daniel Borkmann , Andrew Morton , Nathan Chancellor Cc: Nicolas Schier , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Netdev , linux-mm@kvack.org, llvm@lists.linux.dev Subject: Re: [PATCH 01/12] kbuild: make -Woverride-init warnings more consistent In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20240326144741.3094687-1-arnd@kernel.org> <20240326144741.3094687-2-arnd@kernel.org> <87jzlohhbc.fsf@intel.com> Date: Wed, 27 Mar 2024 09:50:05 +0200 Message-ID: <87edbwglle.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 6B1501C0009 X-Stat-Signature: muo11canriex7bwp6hehtcc8zdy65rq4 X-Rspam-User: X-HE-Tag: 1711525818-421272 X-HE-Meta: U2FsdGVkX18APtcQvLOr/E00X2h7Fy8xLQrOJY4+2u2HWIpr6mXWfF6W93VCIWhoryurw4kE+E1cXb63PRm/Dz7fHubtfX/Sn9orpeqcLaBH5EavIdGFQQNz/4kBk3rg/Uh6+ajBEcuyGUfIJh3mFjLU1OaW4Z7j67zBkaj67Ba5I2jBGh+gEAapRnAfnmNuxnp8l817IzaaHWvNMMjLow92b/vDlvxfR7tDBu/TxnVNRvuY5n2l0AIZm+nhGY77NbUcEAECi28wbfKY6dTLe+6wrpB4whTwG5Zbw0lUKujwhl1JlBr3wsk22cR1Oeyds3PoRTgbD/g30sspx9xWSJBdzBct4qEqOUBEjvF5yXylWE4QWThqjpLZYGFIQuRp3e/a14BXH0DqZjmA2ATu3imyp+CzvE2XeZbunQN+RMh1JM8nN9Wazo3IXSPT+zgrZaA9W0Xs0B/dzrK1RVxbiixT+hzK9g3wZ2Xv5lFZq0NVDDGmfyhxUQd0mowSxLAT3gN8U7ZCJVytWZOYOCAJWRaL61DEid0ADdaE2eJUObm8D3UcDsBRsj4sWUaDMi49Tj+cL8qwonRuyMwd8a/1NFeSyL7z3JUXphlKVKJi8dRSEpQm/6N2w9FrjB0YNOFj/J8hY6e8hzRqRQVpedaX1LhC5+sr51uT+aypuAAhsQpqXASNdQAz8PYkSI1qdMWkrotyEPfKR7fzO6q0wby/9HSnbUfnayXdeWjg9Syoj2pBSJDjFmCjueUsqqBpwxzLzQfQJAV2CPgxLMtEcqKJwal1LeZpeuc5a3iI0WjcBcT7PGRImd/tYmMf4SHfitmAcAWcd5SO5hOc18I4qgDACJbfhs/OW5lQqo242stUG4949ZTW7DkVuIGnDSNSRmgZDNowez3awUG5lK8jd38Nw+M93NAq6TTcuGtJsMMI95b160AdaqM1OaRMLHwwt6sxCYbFbeRPFvusQCQVOII wOuvdXJy zV8xTJAwLptH6v9+HBI8jTBZcMhPlbXvscj8S/LKHW2HKrNG6DYOW1zkZzeLB/Bhj+gfGCc8I1OQytzzFhCuGQxU0PUZxCHjDZP9n53YaRv9a6P82Vz3sQCzcJg7hhSZDT0R5kcgRYurPP0bPJNmF+OdgfKUxz1FNRIsLw+jDUzF1ScC6dQnTVcCFX8mYLMoJ5UXbAB8ij8fTRGx9cFuS8jL2wId6JT98rKBO/sFoPQsFyDBIlopHGtXwmO+mNX+YVoRMzAkScH+3vN98+apwHH4F3xxQLv/vDuaSGXh2jg0OIQ06xMlG/bOEsz69KCOsEglMZ0sJnGrjKabTb5aPRH9OtW8JSxQ7X2OFLQDcbQHT/AtcdNXlQKE9WgMX9qpFakvS X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, 26 Mar 2024, "Arnd Bergmann" wrote: > On Tue, Mar 26, 2024, at 21:24, Jani Nikula wrote: >> On Tue, 26 Mar 2024, Arnd Bergmann wrote: >>> From: Arnd Bergmann >>> index 475e1e8c1d35..0786eb0da391 100644 >>> --- a/drivers/net/ethernet/renesas/sh_eth.c >>> +++ b/drivers/net/ethernet/renesas/sh_eth.c >>> @@ -50,7 +50,7 @@ >>> * the macros available to do this only define GCC 8. >>> */ >>> __diag_push(); >>> -__diag_ignore(GCC, 8, "-Woverride-init", >>> +__diag_ignore_all("-Woverride-init", >>> "logic to initialize all and then override some is OK"); >> >> This is nice because it's more localized than the per-file >> disable. However, we tried to do this in i915, but this doesn't work for >> GCC versions < 8, and some defconfigs enabling -Werror forced us to >> revert. See commit 290d16104575 ("Revert "drm/i915: use localized >> __diag_ignore_all() instead of per file""). > > It works now. > > The original __diag_ignore_all() only did it for gcc-8 and above > because that was initially needed to suppress warnings that > got added in that version, but this was always a mistake. > > 689b097a06ba ("compiler-gcc: Suppress -Wmissing-prototypes > warning for all supported GCC") made it work correctly. Oh, nice! Then I think we'd like to go back to __diag_ignore_all() in i915 and xe. The diff is below. I'm fine with you squashing it to your patch, or if you want me to turn it into a proper patch for you to pick up in your series, that's fine too. Just let me know. BR, Jani. Signed-off-by: Jani Nikula diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile index 3ef6ed41e62b..87d6ba8d2341 100644 --- a/drivers/gpu/drm/i915/Makefile +++ b/drivers/gpu/drm/i915/Makefile @@ -32,11 +32,6 @@ endif # Enable -Werror in CI and development 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) - # Support compiling the display code separately for both i915 and xe # drivers. Define I915 when building i915. subdir-ccflags-y += -DI915 diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c b/drivers/gpu/drm/i915/display/intel_display_device.c index c02d79b50006..b8903bd0e82a 100644 --- a/drivers/gpu/drm/i915/display/intel_display_device.c +++ b/drivers/gpu/drm/i915/display/intel_display_device.c @@ -17,6 +17,9 @@ #include "intel_display_reg_defs.h" #include "intel_fbc.h" +__diag_push(); +__diag_ignore_all("-Woverride-init", "Allow field initialization overrides for display info"); + static const struct intel_display_device_info no_display = {}; #define PIPE_A_OFFSET 0x70000 @@ -768,6 +771,8 @@ static const struct intel_display_device_info xe2_lpd_display = { BIT(INTEL_FBC_C) | BIT(INTEL_FBC_D), }; +__diag_pop(); + /* * Separate detection for no display cases to keep the display id array simple. * diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c index 99894a855ef0..43855c6c3509 100644 --- a/drivers/gpu/drm/i915/display/intel_fbdev.c +++ b/drivers/gpu/drm/i915/display/intel_fbdev.c @@ -135,6 +135,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 field initialization overrides for fb ops"); + static const struct fb_ops intelfb_ops = { .owner = THIS_MODULE, __FB_DEFAULT_DEFERRED_OPS_RDWR(intel_fbdev), @@ -146,6 +149,8 @@ static const struct fb_ops intelfb_ops = { .fb_mmap = intel_fbdev_mmap, }; +__diag_pop(); + static int intelfb_create(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 1e69783ae4fd..405ca17a990b 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 field initialization overrides for device info"); + #define PLATFORM(x) .platform = (x) #define GEN(x) \ .__runtime.graphics.ip.ver = (x), \ @@ -785,6 +788,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 diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile index 3c3e67885559..2f58faf0a79a 100644 --- a/drivers/gpu/drm/xe/Makefile +++ b/drivers/gpu/drm/xe/Makefile @@ -172,9 +172,6 @@ subdir-ccflags-$(CONFIG_DRM_XE_DISPLAY) += \ -Ddrm_i915_gem_object=xe_bo \ -Ddrm_i915_private=xe_device -CFLAGS_i915-display/intel_fbdev.o = $(call cc-disable-warning, override-init) -CFLAGS_i915-display/intel_display_device.o = $(call cc-disable-warning, override-init) - # Rule to build SOC code shared with i915 $(obj)/i915-soc/%.o: $(srctree)/drivers/gpu/drm/i915/soc/%.c FORCE $(call cmd,force_checksrc) -- Jani Nikula, Intel