CC: [email protected]
CC: [email protected]
TO: Tvrtko Ursulin <[email protected]>
CC: Chris Wilson <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   18445bf405cb331117bc98427b1ba6f12418ad17
commit: fb26eee0600dbd6b2eb20356b7d425cb71413ea2 drm/i915/pmu: Fix 
uninitialized variable on error path
date:   10 months ago
:::::: branch date: 29 hours ago
:::::: commit date: 10 months ago
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


cppcheck warnings: (new ones prefixed by >>)

   In file included from drivers/gpu/drm/i915/i915_pmu.c:
>> drivers/gpu/drm/i915/i915_pmu.c:1131:6: warning: Variable 'ret' is 
>> reassigned a value before the old one has been used. [redundantAssignment]
    ret = perf_pmu_register(&pmu->base, pmu->name, -1);
        ^
   drivers/gpu/drm/i915/i915_pmu.c:1097:0: note: Variable 'ret' is reassigned a 
value before the old one has been used.
    int ret = -ENOMEM;
   ^
   drivers/gpu/drm/i915/i915_pmu.c:1131:6: note: Variable 'ret' is reassigned a 
value before the old one has been used.
    ret = perf_pmu_register(&pmu->base, pmu->name, -1);
        ^

# 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=fb26eee0600dbd6b2eb20356b7d425cb71413ea2
git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout fb26eee0600dbd6b2eb20356b7d425cb71413ea2
vim +/ret +1131 drivers/gpu/drm/i915/i915_pmu.c

05488673a4d413 Tvrtko Ursulin 2019-10-16  1093  
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1094  void i915_pmu_register(struct 
drm_i915_private *i915)
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1095  {
908091c85003d0 Tvrtko Ursulin 2019-08-01  1096          struct i915_pmu *pmu = 
&i915->pmu;
fb26eee0600dbd Tvrtko Ursulin 2019-10-18  1097          int ret = -ENOMEM;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1098  
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1099          if (INTEL_GEN(i915) <= 
2) {
88f8065ca73ff8 Chris Wilson   2019-08-15  1100                  
dev_info(i915->drm.dev, "PMU not supported for this GPU.");
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1101                  return;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1102          }
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1103  
908091c85003d0 Tvrtko Ursulin 2019-08-01  1104          
i915_pmu_events_attr_group.attrs = create_event_attributes(pmu);
fb26eee0600dbd Tvrtko Ursulin 2019-10-18  1105          if 
(!i915_pmu_events_attr_group.attrs)
109ec558370f78 Tvrtko Ursulin 2018-01-11  1106                  goto err;
109ec558370f78 Tvrtko Ursulin 2018-01-11  1107  
908091c85003d0 Tvrtko Ursulin 2019-08-01  1108          pmu->base.attr_groups   
= i915_pmu_attr_groups;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1109          pmu->base.task_ctx_nr   
= perf_invalid_context;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1110          pmu->base.event_init    
= i915_pmu_event_init;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1111          pmu->base.add           
= i915_pmu_event_add;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1112          pmu->base.del           
= i915_pmu_event_del;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1113          pmu->base.start         
= i915_pmu_event_start;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1114          pmu->base.stop          
= i915_pmu_event_stop;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1115          pmu->base.read          
= i915_pmu_event_read;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1116          pmu->base.event_idx     
= i915_pmu_event_event_idx;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1117  
908091c85003d0 Tvrtko Ursulin 2019-08-01  1118          
spin_lock_init(&pmu->lock);
908091c85003d0 Tvrtko Ursulin 2019-08-01  1119          
hrtimer_init(&pmu->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
908091c85003d0 Tvrtko Ursulin 2019-08-01  1120          pmu->timer.function = 
i915_sample;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1121  
05488673a4d413 Tvrtko Ursulin 2019-10-16  1122          if (!is_igp(i915))
05488673a4d413 Tvrtko Ursulin 2019-10-16  1123                  pmu->name = 
kasprintf(GFP_KERNEL,
05488673a4d413 Tvrtko Ursulin 2019-10-16  1124                                  
      "i915-%s",
05488673a4d413 Tvrtko Ursulin 2019-10-16  1125                                  
      dev_name(i915->drm.dev));
05488673a4d413 Tvrtko Ursulin 2019-10-16  1126          else
05488673a4d413 Tvrtko Ursulin 2019-10-16  1127                  pmu->name = 
"i915";
05488673a4d413 Tvrtko Ursulin 2019-10-16  1128          if (!pmu->name)
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1129                  goto err;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1130  
05488673a4d413 Tvrtko Ursulin 2019-10-16 @1131          ret = 
perf_pmu_register(&pmu->base, pmu->name, -1);
05488673a4d413 Tvrtko Ursulin 2019-10-16  1132          if (ret)
05488673a4d413 Tvrtko Ursulin 2019-10-16  1133                  goto err_name;
05488673a4d413 Tvrtko Ursulin 2019-10-16  1134  
908091c85003d0 Tvrtko Ursulin 2019-08-01  1135          ret = 
i915_pmu_register_cpuhp_state(pmu);
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1136          if (ret)
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1137                  goto err_unreg;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1138  
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1139          return;
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1140  
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1141  err_unreg:
908091c85003d0 Tvrtko Ursulin 2019-08-01  1142          
perf_pmu_unregister(&pmu->base);
05488673a4d413 Tvrtko Ursulin 2019-10-16  1143  err_name:
05488673a4d413 Tvrtko Ursulin 2019-10-16  1144          if (!is_igp(i915))
05488673a4d413 Tvrtko Ursulin 2019-10-16  1145                  
kfree(pmu->name);
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1146  err:
908091c85003d0 Tvrtko Ursulin 2019-08-01  1147          pmu->base.event_init = 
NULL;
908091c85003d0 Tvrtko Ursulin 2019-08-01  1148          
free_event_attributes(pmu);
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1149          DRM_NOTE("Failed to 
register PMU! (err=%d)\n", ret);
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1150  }
b46a33e271ed81 Tvrtko Ursulin 2017-11-21  1151  

:::::: The code at line 1131 was first introduced by commit
:::::: 05488673a4d41383f9dd537f298e525e6b00fb93 drm/i915/pmu: Support multiple 
GPUs

:::::: TO: Tvrtko Ursulin <[email protected]>
:::::: CC: Tvrtko Ursulin <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to