[Intel-gfx] [PATCH v2] drm/i915: Mark i915.inject_load_failure as being hit
kbuild test robot
lkp at intel.com
Thu Jun 7 11:09:01 UTC 2018
Hi Chris,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v4.17 next-20180606]
[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/Chris-Wilson/drm-i915-Mark-i915-inject_load_failure-as-being-hit/20180607-174849
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-n0-201822 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
In file included from include/linux/printk.h:7:0,
from include/linux/kernel.h:14,
from include/linux/list.h:9,
from include/linux/resource_ext.h:17,
from include/linux/acpi.h:26,
from drivers/gpu//drm/i915/i915_drv.c:30:
include/linux/kern_levels.h:5:18: error: initialization makes integer from pointer without a cast [-Werror=int-conversion]
#define KERN_SOH "\001" /* ASCII Start Of Header */
^
include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
#define KERN_ERR KERN_SOH "3" /* error conditions */
^~~~~~~~
drivers/gpu//drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
static int i915_load_error_level = KERN_ERR;
^~~~~~~~
drivers/gpu//drm/i915/i915_drv.c: In function '__i915_inject_load_failure':
>> drivers/gpu//drm/i915/i915_drv.c:72:25: error: assignment makes integer from pointer without a cast [-Werror=int-conversion]
i915_load_error_level = KERN_DEBUG;
^
drivers/gpu//drm/i915/i915_drv.c: In function 'i915_driver_load':
>> drivers/gpu//drm/i915/i915_drv.c:123:26: error: passing argument 2 of '__i915_printk' makes pointer from integer without a cast [-Werror=int-conversion]
__i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
^
drivers/gpu//drm/i915/i915_drv.c:1425:2: note: in expansion of macro 'i915_load_error'
i915_load_error(dev_priv, "Device initialization failed (%d)\n", ret);
^~~~~~~~~~~~~~~
drivers/gpu//drm/i915/i915_drv.c:87:1: note: expected 'const char *' but argument is of type 'int'
__i915_printk(struct drm_i915_private *dev_priv, const char *level,
^~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/__i915_printk +123 drivers/gpu//drm/i915/i915_drv.c
58
59 #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
60 static unsigned int i915_load_fail_count;
> 61 static int i915_load_error_level = KERN_ERR;
62
63 bool __i915_inject_load_failure(const char *func, int line)
64 {
65 if (i915_load_fail_count >= i915_modparams.inject_load_failure)
66 return false;
67
68 if (++i915_load_fail_count == i915_modparams.inject_load_failure) {
69 DRM_INFO("Injecting failure at checkpoint %u [%s:%d]\n",
70 i915_modparams.inject_load_failure, func, line);
71 i915_modparams.inject_load_failure = 0;
> 72 i915_load_error_level = KERN_DEBUG;
73 return true;
74 }
75
76 return false;
77 }
78 #else
79 #define i915_load_error_level KERN_ERR
80 #endif
81
82 #define FDO_BUG_URL "https://bugs.freedesktop.org/enter_bug.cgi?product=DRI"
83 #define FDO_BUG_MSG "Please file a bug at " FDO_BUG_URL " against DRM/Intel " \
84 "providing the dmesg log by booting with drm.debug=0xf"
85
86 void
87 __i915_printk(struct drm_i915_private *dev_priv, const char *level,
88 const char *fmt, ...)
89 {
90 static bool shown_bug_once;
91 struct device *kdev = dev_priv->drm.dev;
92 bool is_error = level[1] <= KERN_ERR[1];
93 bool is_debug = level[1] == KERN_DEBUG[1];
94 struct va_format vaf;
95 va_list args;
96
97 if (is_debug && !(drm_debug & DRM_UT_DRIVER))
98 return;
99
100 va_start(args, fmt);
101
102 vaf.fmt = fmt;
103 vaf.va = &args;
104
105 dev_printk(level, kdev, "[" DRM_NAME ":%ps] %pV",
106 __builtin_return_address(0), &vaf);
107
108 if (is_error && !shown_bug_once) {
109 /*
110 * Ask the user to file a bug report for the error, except
111 * if they may have caused the bug by fiddling with unsafe
112 * module parameters.
113 */
114 if (!test_taint(TAINT_USER))
115 dev_notice(kdev, "%s", FDO_BUG_MSG);
116 shown_bug_once = true;
117 }
118
119 va_end(args);
120 }
121
122 #define i915_load_error(dev_priv, fmt, ...) \
> 123 __i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
124
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 25430 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20180607/a58b6726/attachment-0001.gz>
More information about the Intel-gfx
mailing list