Hi Lyude, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v4.18-rc7 next-20180731] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Lyude-Paul/drm-nouveau-Fix-potential-memory-access-error-in-nouveau_debugfs_pstate_get/20180801-155246 config: i386-randconfig-a1-201830 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=i386 All warnings (new ones prefixed by >>): drivers/gpu//drm/nouveau/nouveau_debugfs.c: In function 'nouveau_debugfs_pstate_get': >> drivers/gpu//drm/nouveau/nouveau_debugfs.c:54:22: warning: 'debugfs' is used uninitialized in this function [-Wuninitialized] struct nvif_object *ctrl = &debugfs->ctrl; ^ vim +/debugfs +54 drivers/gpu//drm/nouveau/nouveau_debugfs.c 33b903e8 Marcin Slusarz 2013-02-08 48 6e9fc177 Karol Herbst 2015-07-30 49 static int 6e9fc177 Karol Herbst 2015-07-30 50 nouveau_debugfs_pstate_get(struct seq_file *m, void *data) 6e9fc177 Karol Herbst 2015-07-30 51 { 1a54082a Noralf Trønnes 2017-01-26 52 struct drm_device *drm = m->private; 11a2501e Lyude Paul 2018-07-30 53 struct nouveau_debugfs *debugfs; 6e9fc177 Karol Herbst 2015-07-30 @54 struct nvif_object *ctrl = &debugfs->ctrl; 6e9fc177 Karol Herbst 2015-07-30 55 struct nvif_control_pstate_info_v0 info = {}; 6e9fc177 Karol Herbst 2015-07-30 56 int ret, i; 6e9fc177 Karol Herbst 2015-07-30 57 11a2501e Lyude Paul 2018-07-30 58 if (!drm) 6e9fc177 Karol Herbst 2015-07-30 59 return -ENODEV; 11a2501e Lyude Paul 2018-07-30 60 debugfs = nouveau_debugfs(drm); 6e9fc177 Karol Herbst 2015-07-30 61 6e9fc177 Karol Herbst 2015-07-30 62 ret = nvif_mthd(ctrl, NVIF_CONTROL_PSTATE_INFO, &info, sizeof(info)); 6e9fc177 Karol Herbst 2015-07-30 63 if (ret) 6e9fc177 Karol Herbst 2015-07-30 64 return ret; 6e9fc177 Karol Herbst 2015-07-30 65 6e9fc177 Karol Herbst 2015-07-30 66 for (i = 0; i < info.count + 1; i++) { 6e9fc177 Karol Herbst 2015-07-30 67 const s32 state = i < info.count ? i : 6e9fc177 Karol Herbst 2015-07-30 68 NVIF_CONTROL_PSTATE_ATTR_V0_STATE_CURRENT; 6e9fc177 Karol Herbst 2015-07-30 69 struct nvif_control_pstate_attr_v0 attr = { 6e9fc177 Karol Herbst 2015-07-30 70 .state = state, 6e9fc177 Karol Herbst 2015-07-30 71 .index = 0, 6e9fc177 Karol Herbst 2015-07-30 72 }; 6e9fc177 Karol Herbst 2015-07-30 73 6e9fc177 Karol Herbst 2015-07-30 74 ret = nvif_mthd(ctrl, NVIF_CONTROL_PSTATE_ATTR, 6e9fc177 Karol Herbst 2015-07-30 75 &attr, sizeof(attr)); 6e9fc177 Karol Herbst 2015-07-30 76 if (ret) 6e9fc177 Karol Herbst 2015-07-30 77 return ret; 6e9fc177 Karol Herbst 2015-07-30 78 6e9fc177 Karol Herbst 2015-07-30 79 if (i < info.count) 6e9fc177 Karol Herbst 2015-07-30 80 seq_printf(m, "%02x:", attr.state); 6e9fc177 Karol Herbst 2015-07-30 81 else 6e9fc177 Karol Herbst 2015-07-30 82 seq_printf(m, "%s:", info.pwrsrc == 0 ? "DC" : 6e9fc177 Karol Herbst 2015-07-30 83 info.pwrsrc == 1 ? "AC" : "--"); 6e9fc177 Karol Herbst 2015-07-30 84 6e9fc177 Karol Herbst 2015-07-30 85 attr.index = 0; 6e9fc177 Karol Herbst 2015-07-30 86 do { 6e9fc177 Karol Herbst 2015-07-30 87 attr.state = state; 6e9fc177 Karol Herbst 2015-07-30 88 ret = nvif_mthd(ctrl, NVIF_CONTROL_PSTATE_ATTR, 6e9fc177 Karol Herbst 2015-07-30 89 &attr, sizeof(attr)); 6e9fc177 Karol Herbst 2015-07-30 90 if (ret) 6e9fc177 Karol Herbst 2015-07-30 91 return ret; 6e9fc177 Karol Herbst 2015-07-30 92 6e9fc177 Karol Herbst 2015-07-30 93 seq_printf(m, " %s %d", attr.name, attr.min); 6e9fc177 Karol Herbst 2015-07-30 94 if (attr.min != attr.max) 6e9fc177 Karol Herbst 2015-07-30 95 seq_printf(m, "-%d", attr.max); 6e9fc177 Karol Herbst 2015-07-30 96 seq_printf(m, " %s", attr.unit); 6e9fc177 Karol Herbst 2015-07-30 97 } while (attr.index); 6e9fc177 Karol Herbst 2015-07-30 98 6e9fc177 Karol Herbst 2015-07-30 99 if (state >= 0) { 6e9fc177 Karol Herbst 2015-07-30 100 if (info.ustate_ac == state) 6e9fc177 Karol Herbst 2015-07-30 101 seq_printf(m, " AC"); 6e9fc177 Karol Herbst 2015-07-30 102 if (info.ustate_dc == state) 6e9fc177 Karol Herbst 2015-07-30 103 seq_printf(m, " DC"); 6e9fc177 Karol Herbst 2015-07-30 104 if (info.pstate == state) 6e9fc177 Karol Herbst 2015-07-30 105 seq_printf(m, " *"); 6e9fc177 Karol Herbst 2015-07-30 106 } else { 6e9fc177 Karol Herbst 2015-07-30 107 if (info.ustate_ac < -1) 6e9fc177 Karol Herbst 2015-07-30 108 seq_printf(m, " AC"); 6e9fc177 Karol Herbst 2015-07-30 109 if (info.ustate_dc < -1) 6e9fc177 Karol Herbst 2015-07-30 110 seq_printf(m, " DC"); 6e9fc177 Karol Herbst 2015-07-30 111 } 6e9fc177 Karol Herbst 2015-07-30 112 6e9fc177 Karol Herbst 2015-07-30 113 seq_printf(m, "\n"); 6e9fc177 Karol Herbst 2015-07-30 114 } 6e9fc177 Karol Herbst 2015-07-30 115 6e9fc177 Karol Herbst 2015-07-30 116 return 0; 6e9fc177 Karol Herbst 2015-07-30 117 } 6e9fc177 Karol Herbst 2015-07-30 118 :::::: The code at line 54 was first introduced by commit :::::: 6e9fc177399f08446293fec7607913fdbc95e191 drm/nouveau/debugfs: add copy of sysfs pstate interface ported to debugfs :::::: TO: Karol Herbst <nouveau@xxxxxxxxxxxxxx> :::::: CC: Ben Skeggs <bskeggs@xxxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel