[gustavoars:testing/stringop-overflow 1/1] drivers/gpu/drm/i915/intel_pm.c:3106:9: error: 'intel_read_wm_latency' accessing 16 bytes in a region of size 10

From: kernel test robot
Date: Thu Apr 28 2022 - 09:21:57 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git testing/stringop-overflow
head: 841e98dddf647582547543eba0a1e3e8c8f8db9c
commit: 841e98dddf647582547543eba0a1e3e8c8f8db9c [1/1] Makefile: Enable -Wstringop-overflow
config: x86_64-randconfig-c002 (https://download.01.org/0day-ci/archive/20220428/202204282134.8kzHtDU9-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.2.0-20) 11.2.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git/commit/?id=841e98dddf647582547543eba0a1e3e8c8f8db9c
git remote add gustavoars https://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux.git
git fetch --no-tags gustavoars testing/stringop-overflow
git checkout 841e98dddf647582547543eba0a1e3e8c8f8db9c
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

drivers/gpu/drm/i915/intel_pm.c: In function 'ilk_setup_wm_latency':
>> drivers/gpu/drm/i915/intel_pm.c:3106:9: error: 'intel_read_wm_latency' accessing 16 bytes in a region of size 10 [-Werror=stringop-overflow=]
3106 | intel_read_wm_latency(dev_priv, dev_priv->wm.pri_latency);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/intel_pm.c:3106:9: note: referencing argument 2 of type 'u16 *' {aka 'short unsigned int *'}
drivers/gpu/drm/i915/intel_pm.c:2861:13: note: in a call to function 'intel_read_wm_latency'
2861 | static void intel_read_wm_latency(struct drm_i915_private *dev_priv,
| ^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors


vim +/intel_read_wm_latency +3106 drivers/gpu/drm/i915/intel_pm.c

03981c6ebec4fc7 Ville Syrjälä 2018-11-14 3103
bb7265197a86bd6 Ville Syrjälä 2016-10-31 3104 static void ilk_setup_wm_latency(struct drm_i915_private *dev_priv)
53615a5e129534f Ville Syrjälä 2013-08-01 3105 {
bb7265197a86bd6 Ville Syrjälä 2016-10-31 @3106 intel_read_wm_latency(dev_priv, dev_priv->wm.pri_latency);
53615a5e129534f Ville Syrjälä 2013-08-01 3107
53615a5e129534f Ville Syrjälä 2013-08-01 3108 memcpy(dev_priv->wm.spr_latency, dev_priv->wm.pri_latency,
53615a5e129534f Ville Syrjälä 2013-08-01 3109 sizeof(dev_priv->wm.pri_latency));
53615a5e129534f Ville Syrjälä 2013-08-01 3110 memcpy(dev_priv->wm.cur_latency, dev_priv->wm.pri_latency,
53615a5e129534f Ville Syrjälä 2013-08-01 3111 sizeof(dev_priv->wm.pri_latency));
53615a5e129534f Ville Syrjälä 2013-08-01 3112
5db9401983ac7bf Tvrtko Ursulin 2016-10-13 3113 intel_fixup_spr_wm_latency(dev_priv, dev_priv->wm.spr_latency);
fd6b8f43c9e9a3a Tvrtko Ursulin 2016-10-14 3114 intel_fixup_cur_wm_latency(dev_priv, dev_priv->wm.cur_latency);
26ec971e302c53b Ville Syrjälä 2013-08-01 3115
5db9401983ac7bf Tvrtko Ursulin 2016-10-13 3116 intel_print_wm_latency(dev_priv, "Primary", dev_priv->wm.pri_latency);
5db9401983ac7bf Tvrtko Ursulin 2016-10-13 3117 intel_print_wm_latency(dev_priv, "Sprite", dev_priv->wm.spr_latency);
5db9401983ac7bf Tvrtko Ursulin 2016-10-13 3118 intel_print_wm_latency(dev_priv, "Cursor", dev_priv->wm.cur_latency);
e95a2f7509f5219 Ville Syrjälä 2014-05-08 3119
93e7e61eb448318 Lucas De Marchi 2021-04-12 3120 if (DISPLAY_VER(dev_priv) == 6) {
bb7265197a86bd6 Ville Syrjälä 2016-10-31 3121 snb_wm_latency_quirk(dev_priv);
03981c6ebec4fc7 Ville Syrjälä 2018-11-14 3122 snb_wm_lp3_irq_quirk(dev_priv);
03981c6ebec4fc7 Ville Syrjälä 2018-11-14 3123 }
53615a5e129534f Ville Syrjälä 2013-08-01 3124 }
53615a5e129534f Ville Syrjälä 2013-08-01 3125

:::::: The code at line 3106 was first introduced by commit
:::::: bb7265197a86bd68078825723b572599fcc60d2b drm/i915: Pass dev_priv to ilk_setup_wm_latency() & co.

:::::: TO: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
:::::: CC: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://01.org/lkp