Re: [Intel-gfx] [PATCH v6 3/3] drm/i915/dp: Expose connector VRR monitor range via debugfs
by kernel test robot
Hi Manasi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on drm-tip/drm-tip drm-exynos/exynos-drm-next linus/master next-20200612]
[cannot apply to tegra-drm/drm/tegra/for-next drm/drm-next v5.7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Manasi-Navare/VRR-capable-attach...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a014-20200613 (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build):
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
drivers/gpu/drm/i915/display/intel_display_debugfs.c: In function 'intel_connector_debugfs_add':
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2235:2: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
if (INTEL_GEN(dev_priv) >= 10 &&
^~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2241:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
if (INTEL_GEN(dev_priv) >= 12)
^~
drivers/gpu/drm/i915/display/intel_display_debugfs.c: At top level:
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2247:2: error: expected identifier or '(' before 'if'
if ((INTEL_GEN(dev_priv) >= 9 || IS_HASWELL(dev_priv) ||
^~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2257:2: error: expected identifier or '(' before 'return'
return 0;
^~~~~~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2258:1: error: expected identifier or '(' before '}' token
}
^
drivers/gpu/drm/i915/display/intel_display_debugfs.c: In function 'intel_connector_debugfs_add':
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2244:2: error: control reaches end of non-void function [-Werror=return-type]
}
^
In file included from include/drm/drm_debugfs.h:36:0,
from drivers/gpu/drm/i915/display/intel_display_debugfs.c:6:
At top level:
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2081:23: error: 'i915_lpsp_capability_fops' defined but not used [-Werror=unused-const-variable=]
DEFINE_SHOW_ATTRIBUTE(i915_lpsp_capability);
^
include/linux/seq_file.h:154:37: note: in definition of macro 'DEFINE_SHOW_ATTRIBUTE'
static const struct file_operations __name ## _fops = { ^~~~~~
cc1: all warnings being treated as errors
vim +/if +2235 drivers/gpu/drm/i915/display/intel_display_debugfs.c
926b005cd8c4e3 Jani Nikula 2020-02-11 2040
8806211fe7b306 Anshuman Gupta 2020-04-15 2041 #define LPSP_CAPABLE(COND) (COND ? seq_puts(m, "LPSP: capable\n") : \
8806211fe7b306 Anshuman Gupta 2020-04-15 2042 seq_puts(m, "LPSP: incapable\n"))
8806211fe7b306 Anshuman Gupta 2020-04-15 2043
8806211fe7b306 Anshuman Gupta 2020-04-15 2044 static int i915_lpsp_capability_show(struct seq_file *m, void *data)
8806211fe7b306 Anshuman Gupta 2020-04-15 2045 {
8806211fe7b306 Anshuman Gupta 2020-04-15 2046 struct drm_connector *connector = m->private;
8806211fe7b306 Anshuman Gupta 2020-04-15 2047 struct intel_encoder *encoder =
8806211fe7b306 Anshuman Gupta 2020-04-15 2048 intel_attached_encoder(to_intel_connector(connector));
8806211fe7b306 Anshuman Gupta 2020-04-15 2049 struct drm_i915_private *i915 = to_i915(connector->dev);
8806211fe7b306 Anshuman Gupta 2020-04-15 2050
8806211fe7b306 Anshuman Gupta 2020-04-15 2051 if (connector->status != connector_status_connected)
8806211fe7b306 Anshuman Gupta 2020-04-15 2052 return -ENODEV;
8806211fe7b306 Anshuman Gupta 2020-04-15 2053
8806211fe7b306 Anshuman Gupta 2020-04-15 2054 switch (INTEL_GEN(i915)) {
8806211fe7b306 Anshuman Gupta 2020-04-15 2055 case 12:
8806211fe7b306 Anshuman Gupta 2020-04-15 2056 /*
8806211fe7b306 Anshuman Gupta 2020-04-15 2057 * Actually TGL can drive LPSP on port till DDI_C
8806211fe7b306 Anshuman Gupta 2020-04-15 2058 * but there is no physical connected DDI_C on TGL sku's,
8806211fe7b306 Anshuman Gupta 2020-04-15 2059 * even driver is not initilizing DDI_C port for gen12.
8806211fe7b306 Anshuman Gupta 2020-04-15 2060 */
8806211fe7b306 Anshuman Gupta 2020-04-15 2061 LPSP_CAPABLE(encoder->port <= PORT_B);
8806211fe7b306 Anshuman Gupta 2020-04-15 2062 break;
8806211fe7b306 Anshuman Gupta 2020-04-15 2063 case 11:
8806211fe7b306 Anshuman Gupta 2020-04-15 2064 LPSP_CAPABLE(connector->connector_type == DRM_MODE_CONNECTOR_DSI ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2065 connector->connector_type == DRM_MODE_CONNECTOR_eDP);
8806211fe7b306 Anshuman Gupta 2020-04-15 2066 break;
8806211fe7b306 Anshuman Gupta 2020-04-15 2067 case 10:
8806211fe7b306 Anshuman Gupta 2020-04-15 2068 case 9:
8806211fe7b306 Anshuman Gupta 2020-04-15 2069 LPSP_CAPABLE(encoder->port == PORT_A &&
8806211fe7b306 Anshuman Gupta 2020-04-15 2070 (connector->connector_type == DRM_MODE_CONNECTOR_DSI ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2071 connector->connector_type == DRM_MODE_CONNECTOR_eDP ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2072 connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort));
8806211fe7b306 Anshuman Gupta 2020-04-15 2073 break;
8806211fe7b306 Anshuman Gupta 2020-04-15 2074 default:
8806211fe7b306 Anshuman Gupta 2020-04-15 2075 if (IS_HASWELL(i915) || IS_BROADWELL(i915))
8806211fe7b306 Anshuman Gupta 2020-04-15 2076 LPSP_CAPABLE(connector->connector_type == DRM_MODE_CONNECTOR_eDP);
8806211fe7b306 Anshuman Gupta 2020-04-15 2077 }
8806211fe7b306 Anshuman Gupta 2020-04-15 2078
8806211fe7b306 Anshuman Gupta 2020-04-15 2079 return 0;
8806211fe7b306 Anshuman Gupta 2020-04-15 2080 }
8806211fe7b306 Anshuman Gupta 2020-04-15 @2081 DEFINE_SHOW_ATTRIBUTE(i915_lpsp_capability);
8806211fe7b306 Anshuman Gupta 2020-04-15 2082
926b005cd8c4e3 Jani Nikula 2020-02-11 2083 static int i915_dsc_fec_support_show(struct seq_file *m, void *data)
926b005cd8c4e3 Jani Nikula 2020-02-11 2084 {
926b005cd8c4e3 Jani Nikula 2020-02-11 2085 struct drm_connector *connector = m->private;
926b005cd8c4e3 Jani Nikula 2020-02-11 2086 struct drm_device *dev = connector->dev;
926b005cd8c4e3 Jani Nikula 2020-02-11 2087 struct drm_crtc *crtc;
926b005cd8c4e3 Jani Nikula 2020-02-11 2088 struct intel_dp *intel_dp;
926b005cd8c4e3 Jani Nikula 2020-02-11 2089 struct drm_modeset_acquire_ctx ctx;
926b005cd8c4e3 Jani Nikula 2020-02-11 2090 struct intel_crtc_state *crtc_state = NULL;
926b005cd8c4e3 Jani Nikula 2020-02-11 2091 int ret = 0;
926b005cd8c4e3 Jani Nikula 2020-02-11 2092 bool try_again = false;
926b005cd8c4e3 Jani Nikula 2020-02-11 2093
926b005cd8c4e3 Jani Nikula 2020-02-11 2094 drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
926b005cd8c4e3 Jani Nikula 2020-02-11 2095
926b005cd8c4e3 Jani Nikula 2020-02-11 2096 do {
926b005cd8c4e3 Jani Nikula 2020-02-11 2097 try_again = false;
926b005cd8c4e3 Jani Nikula 2020-02-11 2098 ret = drm_modeset_lock(&dev->mode_config.connection_mutex,
926b005cd8c4e3 Jani Nikula 2020-02-11 2099 &ctx);
926b005cd8c4e3 Jani Nikula 2020-02-11 2100 if (ret) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2101 if (ret == -EDEADLK && !drm_modeset_backoff(&ctx)) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2102 try_again = true;
926b005cd8c4e3 Jani Nikula 2020-02-11 2103 continue;
926b005cd8c4e3 Jani Nikula 2020-02-11 2104 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2105 break;
926b005cd8c4e3 Jani Nikula 2020-02-11 2106 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2107 crtc = connector->state->crtc;
926b005cd8c4e3 Jani Nikula 2020-02-11 2108 if (connector->status != connector_status_connected || !crtc) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2109 ret = -ENODEV;
926b005cd8c4e3 Jani Nikula 2020-02-11 2110 break;
926b005cd8c4e3 Jani Nikula 2020-02-11 2111 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2112 ret = drm_modeset_lock(&crtc->mutex, &ctx);
926b005cd8c4e3 Jani Nikula 2020-02-11 2113 if (ret == -EDEADLK) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2114 ret = drm_modeset_backoff(&ctx);
926b005cd8c4e3 Jani Nikula 2020-02-11 2115 if (!ret) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2116 try_again = true;
926b005cd8c4e3 Jani Nikula 2020-02-11 2117 continue;
926b005cd8c4e3 Jani Nikula 2020-02-11 2118 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2119 break;
926b005cd8c4e3 Jani Nikula 2020-02-11 2120 } else if (ret) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2121 break;
926b005cd8c4e3 Jani Nikula 2020-02-11 2122 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2123 intel_dp = intel_attached_dp(to_intel_connector(connector));
926b005cd8c4e3 Jani Nikula 2020-02-11 2124 crtc_state = to_intel_crtc_state(crtc->state);
926b005cd8c4e3 Jani Nikula 2020-02-11 2125 seq_printf(m, "DSC_Enabled: %s\n",
926b005cd8c4e3 Jani Nikula 2020-02-11 2126 yesno(crtc_state->dsc.compression_enable));
926b005cd8c4e3 Jani Nikula 2020-02-11 2127 seq_printf(m, "DSC_Sink_Support: %s\n",
926b005cd8c4e3 Jani Nikula 2020-02-11 2128 yesno(drm_dp_sink_supports_dsc(intel_dp->dsc_dpcd)));
926b005cd8c4e3 Jani Nikula 2020-02-11 2129 seq_printf(m, "Force_DSC_Enable: %s\n",
926b005cd8c4e3 Jani Nikula 2020-02-11 2130 yesno(intel_dp->force_dsc_en));
926b005cd8c4e3 Jani Nikula 2020-02-11 2131 if (!intel_dp_is_edp(intel_dp))
926b005cd8c4e3 Jani Nikula 2020-02-11 2132 seq_printf(m, "FEC_Sink_Support: %s\n",
926b005cd8c4e3 Jani Nikula 2020-02-11 2133 yesno(drm_dp_sink_supports_fec(intel_dp->fec_capable)));
926b005cd8c4e3 Jani Nikula 2020-02-11 2134 } while (try_again);
926b005cd8c4e3 Jani Nikula 2020-02-11 2135
926b005cd8c4e3 Jani Nikula 2020-02-11 2136 drm_modeset_drop_locks(&ctx);
926b005cd8c4e3 Jani Nikula 2020-02-11 2137 drm_modeset_acquire_fini(&ctx);
926b005cd8c4e3 Jani Nikula 2020-02-11 2138
926b005cd8c4e3 Jani Nikula 2020-02-11 2139 return ret;
926b005cd8c4e3 Jani Nikula 2020-02-11 2140 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2141
926b005cd8c4e3 Jani Nikula 2020-02-11 2142 static ssize_t i915_dsc_fec_support_write(struct file *file,
926b005cd8c4e3 Jani Nikula 2020-02-11 2143 const char __user *ubuf,
926b005cd8c4e3 Jani Nikula 2020-02-11 2144 size_t len, loff_t *offp)
926b005cd8c4e3 Jani Nikula 2020-02-11 2145 {
926b005cd8c4e3 Jani Nikula 2020-02-11 2146 bool dsc_enable = false;
926b005cd8c4e3 Jani Nikula 2020-02-11 2147 int ret;
926b005cd8c4e3 Jani Nikula 2020-02-11 2148 struct drm_connector *connector =
926b005cd8c4e3 Jani Nikula 2020-02-11 2149 ((struct seq_file *)file->private_data)->private;
926b005cd8c4e3 Jani Nikula 2020-02-11 2150 struct intel_encoder *encoder = intel_attached_encoder(to_intel_connector(connector));
926b005cd8c4e3 Jani Nikula 2020-02-11 2151 struct drm_i915_private *i915 = to_i915(encoder->base.dev);
926b005cd8c4e3 Jani Nikula 2020-02-11 2152 struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
926b005cd8c4e3 Jani Nikula 2020-02-11 2153
926b005cd8c4e3 Jani Nikula 2020-02-11 2154 if (len == 0)
926b005cd8c4e3 Jani Nikula 2020-02-11 2155 return 0;
926b005cd8c4e3 Jani Nikula 2020-02-11 2156
926b005cd8c4e3 Jani Nikula 2020-02-11 2157 drm_dbg(&i915->drm,
926b005cd8c4e3 Jani Nikula 2020-02-11 2158 "Copied %zu bytes from user to force DSC\n", len);
926b005cd8c4e3 Jani Nikula 2020-02-11 2159
926b005cd8c4e3 Jani Nikula 2020-02-11 2160 ret = kstrtobool_from_user(ubuf, len, &dsc_enable);
926b005cd8c4e3 Jani Nikula 2020-02-11 2161 if (ret < 0)
926b005cd8c4e3 Jani Nikula 2020-02-11 2162 return ret;
926b005cd8c4e3 Jani Nikula 2020-02-11 2163
926b005cd8c4e3 Jani Nikula 2020-02-11 2164 drm_dbg(&i915->drm, "Got %s for DSC Enable\n",
926b005cd8c4e3 Jani Nikula 2020-02-11 2165 (dsc_enable) ? "true" : "false");
926b005cd8c4e3 Jani Nikula 2020-02-11 2166 intel_dp->force_dsc_en = dsc_enable;
926b005cd8c4e3 Jani Nikula 2020-02-11 2167
926b005cd8c4e3 Jani Nikula 2020-02-11 2168 *offp += len;
926b005cd8c4e3 Jani Nikula 2020-02-11 2169 return len;
926b005cd8c4e3 Jani Nikula 2020-02-11 2170 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2171
926b005cd8c4e3 Jani Nikula 2020-02-11 2172 static int i915_dsc_fec_support_open(struct inode *inode,
926b005cd8c4e3 Jani Nikula 2020-02-11 2173 struct file *file)
926b005cd8c4e3 Jani Nikula 2020-02-11 2174 {
926b005cd8c4e3 Jani Nikula 2020-02-11 2175 return single_open(file, i915_dsc_fec_support_show,
926b005cd8c4e3 Jani Nikula 2020-02-11 2176 inode->i_private);
926b005cd8c4e3 Jani Nikula 2020-02-11 2177 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2178
926b005cd8c4e3 Jani Nikula 2020-02-11 2179 static const struct file_operations i915_dsc_fec_support_fops = {
926b005cd8c4e3 Jani Nikula 2020-02-11 2180 .owner = THIS_MODULE,
926b005cd8c4e3 Jani Nikula 2020-02-11 2181 .open = i915_dsc_fec_support_open,
926b005cd8c4e3 Jani Nikula 2020-02-11 2182 .read = seq_read,
926b005cd8c4e3 Jani Nikula 2020-02-11 2183 .llseek = seq_lseek,
926b005cd8c4e3 Jani Nikula 2020-02-11 2184 .release = single_release,
926b005cd8c4e3 Jani Nikula 2020-02-11 2185 .write = i915_dsc_fec_support_write
926b005cd8c4e3 Jani Nikula 2020-02-11 2186 };
926b005cd8c4e3 Jani Nikula 2020-02-11 2187
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2188 static int vrr_range_show(struct seq_file *m, void *data)
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2189 {
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2190 struct drm_connector *connector = m->private;
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2191
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2192 if (connector->status != connector_status_connected)
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2193 return -ENODEV;
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2194
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2195 seq_printf(m, "Vrr_capable: %s\n", yesno(intel_dp_is_vrr_capable(connector)));
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2196 seq_printf(m, "Min: %u\n", (u8)connector->display_info.monitor_range.min_vfreq);
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2197 seq_printf(m, "Max: %u\n", (u8)connector->display_info.monitor_range.max_vfreq);
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2198
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2199 return 0;
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2200 }
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2201 DEFINE_SHOW_ATTRIBUTE(vrr_range);
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2202
926b005cd8c4e3 Jani Nikula 2020-02-11 2203 /**
926b005cd8c4e3 Jani Nikula 2020-02-11 2204 * intel_connector_debugfs_add - add i915 specific connector debugfs files
926b005cd8c4e3 Jani Nikula 2020-02-11 2205 * @connector: pointer to a registered drm_connector
926b005cd8c4e3 Jani Nikula 2020-02-11 2206 *
926b005cd8c4e3 Jani Nikula 2020-02-11 2207 * Cleanup will be done by drm_connector_unregister() through a call to
926b005cd8c4e3 Jani Nikula 2020-02-11 2208 * drm_debugfs_connector_remove().
926b005cd8c4e3 Jani Nikula 2020-02-11 2209 *
926b005cd8c4e3 Jani Nikula 2020-02-11 2210 * Returns 0 on success, negative error codes on error.
926b005cd8c4e3 Jani Nikula 2020-02-11 2211 */
926b005cd8c4e3 Jani Nikula 2020-02-11 2212 int intel_connector_debugfs_add(struct drm_connector *connector)
926b005cd8c4e3 Jani Nikula 2020-02-11 2213 {
926b005cd8c4e3 Jani Nikula 2020-02-11 2214 struct dentry *root = connector->debugfs_entry;
926b005cd8c4e3 Jani Nikula 2020-02-11 2215 struct drm_i915_private *dev_priv = to_i915(connector->dev);
926b005cd8c4e3 Jani Nikula 2020-02-11 2216
926b005cd8c4e3 Jani Nikula 2020-02-11 2217 /* The connector must have been registered beforehands. */
926b005cd8c4e3 Jani Nikula 2020-02-11 2218 if (!root)
926b005cd8c4e3 Jani Nikula 2020-02-11 2219 return -ENODEV;
926b005cd8c4e3 Jani Nikula 2020-02-11 2220
926b005cd8c4e3 Jani Nikula 2020-02-11 2221 if (connector->connector_type == DRM_MODE_CONNECTOR_eDP) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2222 debugfs_create_file("i915_panel_timings", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2223 connector, &i915_panel_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2224 debugfs_create_file("i915_psr_sink_status", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2225 connector, &i915_psr_sink_status_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2226 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2227
926b005cd8c4e3 Jani Nikula 2020-02-11 2228 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
926b005cd8c4e3 Jani Nikula 2020-02-11 2229 connector->connector_type == DRM_MODE_CONNECTOR_HDMIA ||
926b005cd8c4e3 Jani Nikula 2020-02-11 2230 connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2231 debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2232 connector, &i915_hdcp_sink_capability_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2233 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2234
926b005cd8c4e3 Jani Nikula 2020-02-11 @2235 if (INTEL_GEN(dev_priv) >= 10 &&
:::::: The code at line 2235 was first introduced by commit
:::::: 926b005cd8c4e325ab918edea0fbdd1d25d1ba28 drm/i915: split out display debugfs to a separate file
:::::: TO: Jani Nikula <jani.nikula(a)intel.com>
:::::: CC: Jani Nikula <jani.nikula(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [RESEND PATCH v10 07/10] phy: samsung-ufs: add UFS PHY driver for samsung SoC
by kernel test robot
Hi Alim,
I love your patch! Perhaps something to improve:
[auto build test WARNING on 0e698dfa282211e414076f9dc7e83c1c288314fd]
url: https://github.com/0day-ci/linux/commits/Alim-Akhtar/exynos-ufs-Add-suppo...
base: 0e698dfa282211e414076f9dc7e83c1c288314fd
config: m68k-allmodconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from arch/m68k/include/asm/io_mm.h:25,
from arch/m68k/include/asm/io.h:8,
from include/linux/io.h:13,
from drivers/phy/samsung/phy-samsung-ufs.c:14:
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsb':
arch/m68k/include/asm/raw_io.h:83:7: warning: variable '__w' set but not used [-Wunused-but-set-variable]
83 | ({u8 __w, __v = (b); u32 _addr = ((u32) (addr)); | ^~~
arch/m68k/include/asm/raw_io.h:430:3: note: in expansion of macro 'rom_out_8'
430 | rom_out_8(port, *buf++);
| ^~~~~~~~~
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsw':
arch/m68k/include/asm/raw_io.h:86:8: warning: variable '__w' set but not used [-Wunused-but-set-variable]
86 | ({u16 __w, __v = (w); u32 _addr = ((u32) (addr)); | ^~~
arch/m68k/include/asm/raw_io.h:448:3: note: in expansion of macro 'rom_out_be16'
448 | rom_out_be16(port, *buf++);
| ^~~~~~~~~~~~
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsw_swapw':
arch/m68k/include/asm/raw_io.h:90:8: warning: variable '__w' set but not used [-Wunused-but-set-variable]
90 | ({u16 __w, __v = (w); u32 _addr = ((u32) (addr)); | ^~~
arch/m68k/include/asm/raw_io.h:466:3: note: in expansion of macro 'rom_out_le16'
466 | rom_out_le16(port, *buf++);
| ^~~~~~~~~~~~
drivers/phy/samsung/phy-samsung-ufs.c: At top level:
>> drivers/phy/samsung/phy-samsung-ufs.c:47:5: warning: no previous prototype for 'samsung_ufs_phy_wait_for_lock_acq' [-Wmissing-prototypes]
47 | int samsung_ufs_phy_wait_for_lock_acq(struct phy *phy)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/phy/samsung/phy-samsung-ufs.c:77:5: warning: no previous prototype for 'samsung_ufs_phy_calibrate' [-Wmissing-prototypes]
77 | int samsung_ufs_phy_calibrate(struct phy *phy)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
vim +/samsung_ufs_phy_wait_for_lock_acq +47 drivers/phy/samsung/phy-samsung-ufs.c
46
> 47 int samsung_ufs_phy_wait_for_lock_acq(struct phy *phy)
48 {
49 struct samsung_ufs_phy *ufs_phy = get_samsung_ufs_phy(phy);
50 const unsigned int timeout_us = 100000;
51 const unsigned int sleep_us = 10;
52 u32 val;
53 int err;
54
55 err = readl_poll_timeout(
56 ufs_phy->reg_pma + PHY_APB_ADDR(PHY_PLL_LOCK_STATUS),
57 val, (val & PHY_PLL_LOCK_BIT), sleep_us, timeout_us);
58 if (err) {
59 dev_err(ufs_phy->dev,
60 "failed to get phy pll lock acquisition %d\n", err);
61 goto out;
62 }
63
64 err = readl_poll_timeout(
65 ufs_phy->reg_pma + PHY_APB_ADDR(PHY_CDR_LOCK_STATUS),
66 val, (val & PHY_CDR_LOCK_BIT), sleep_us, timeout_us);
67 if (err) {
68 dev_err(ufs_phy->dev,
69 "failed to get phy cdr lock acquisition %d\n", err);
70 goto out;
71 }
72
73 out:
74 return err;
75 }
76
> 77 int samsung_ufs_phy_calibrate(struct phy *phy)
78 {
79 struct samsung_ufs_phy *ufs_phy = get_samsung_ufs_phy(phy);
80 struct samsung_ufs_phy_cfg **cfgs = ufs_phy->cfg;
81 const struct samsung_ufs_phy_cfg *cfg;
82 int i;
83 int err = 0;
84
85 if (unlikely(ufs_phy->ufs_phy_state < CFG_PRE_INIT ||
86 ufs_phy->ufs_phy_state >= CFG_TAG_MAX)) {
87 dev_err(ufs_phy->dev, "invalid phy config index %d\n",
88 ufs_phy->ufs_phy_state);
89 return -EINVAL;
90 }
91
92 if (ufs_phy->is_pre_init)
93 ufs_phy->is_pre_init = false;
94 if (ufs_phy->is_post_init) {
95 ufs_phy->is_post_init = false;
96 ufs_phy->ufs_phy_state = CFG_POST_INIT;
97 }
98 if (ufs_phy->is_pre_pmc) {
99 ufs_phy->is_pre_pmc = false;
100 ufs_phy->ufs_phy_state = CFG_PRE_PWR_HS;
101 }
102 if (ufs_phy->is_post_pmc) {
103 ufs_phy->is_post_pmc = false;
104 ufs_phy->ufs_phy_state = CFG_POST_PWR_HS;
105 }
106
107 switch (ufs_phy->ufs_phy_state) {
108 case CFG_PRE_INIT:
109 ufs_phy->is_post_init = true;
110 break;
111 case CFG_POST_INIT:
112 ufs_phy->is_pre_pmc = true;
113 break;
114 case CFG_PRE_PWR_HS:
115 ufs_phy->is_post_pmc = true;
116 break;
117 case CFG_POST_PWR_HS:
118 break;
119 default:
120 dev_err(ufs_phy->dev, "wrong state for phy calibration\n");
121 }
122
123 cfg = cfgs[ufs_phy->ufs_phy_state];
124 if (!cfg)
125 goto out;
126
127 for_each_phy_cfg(cfg) {
128 for_each_phy_lane(ufs_phy, i) {
129 samsung_ufs_phy_config(ufs_phy, cfg, i);
130 }
131 }
132
133 if (ufs_phy->ufs_phy_state == CFG_POST_PWR_HS)
134 err = samsung_ufs_phy_wait_for_lock_acq(phy);
135 out:
136 return err;
137 }
138
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: drivers/net/can/kvaser_pciefd.c:801:17: sparse: sparse: cast removes address space '<asn:2>' of expression
by Greg Ungerer
On 13/6/20 2:35 am, Luc Van Oostenryck wrote:
> On Sat, Jun 13, 2020 at 01:33:16AM +1000, Greg Ungerer wrote:
>> On 12/6/20 5:48 pm, Marc Kleine-Budde wrote:
>> I think this one is due to not forcing the volatile cast in __raw_write().
>> So this change will fix that:
>>
>> diff --git a/arch/m68k/include/asm/io_no.h b/arch/m68k/include/asm/io_no.h
>> index 0498192e1d98..1bc739f1f1ad 100644
>> --- a/arch/m68k/include/asm/io_no.h
>> +++ b/arch/m68k/include/asm/io_no.h
>> @@ -14,15 +14,15 @@
>> * that behavior here first before we include asm-generic/io.h.
>> */
>> #define __raw_readb(addr) \
>> - ({ unsigned char __v = (*(volatile unsigned char *) (addr)); __v; })
>> + ({ u8 __v = (*(__force volatile u8 *) (addr)); __v; })
>> #define __raw_readw(addr) \
>> - ({ unsigned short __v = (*(volatile unsigned short *) (addr)); __v; })
>> + ({ u16 __v = (*(__force volatile u16 *) (addr)); __v; })
>> #define __raw_readl(addr) \
>> - ({ unsigned int __v = (*(volatile unsigned int *) (addr)); __v; })
>> + ({ u32 __v = (*(__force volatile u32 *) (addr)); __v; })
>> -#define __raw_writeb(b, addr) (void)((*(volatile unsigned char *) (addr)) = (b))
>> -#define __raw_writew(b, addr) (void)((*(volatile unsigned short *) (addr)) = (b))
>> -#define __raw_writel(b, addr) (void)((*(volatile unsigned int *) (addr)) = (b))
>> +#define __raw_writeb(b, addr) (void)((*(__force volatile u8 *) (addr)) = (b))
>> +#define __raw_writew(b, addr) (void)((*(__force volatile u16 *) (addr)) = (b))
>> +#define __raw_writel(b, addr) (void)((*(__force volatile u32 *) (addr)) = (b))
>
> Look good to me but isn't easier to leave them undefined and include
> asm-generic/io.h?
Not so simple at the moment. Although juggling a few things around within
io_no.h will let you use the asm-generic functions it will now throw up
a _lot_ of warnings in many of the architecture files that pass int constant
addresses to the raw_* functions. That is on my todo list.
Regards
Greg
2 years, 3 months
Re: [Intel-gfx] [PATCH v6 3/3] drm/i915/dp: Expose connector VRR monitor range via debugfs
by kernel test robot
Hi Manasi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on drm-tip/drm-tip drm-exynos/exynos-drm-next linus/master next-20200612]
[cannot apply to tegra-drm/drm/tegra/for-next drm/drm-next v5.7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Manasi-Navare/VRR-capable-attach...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>, old ones prefixed by <<):
drivers/gpu/drm/i915/display/intel_display_debugfs.c: In function 'intel_connector_debugfs_add':
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2235:2: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
2235 | if (INTEL_GEN(dev_priv) >= 10 &&
| ^~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2241:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
2241 | if (INTEL_GEN(dev_priv) >= 12)
| ^~
drivers/gpu/drm/i915/display/intel_display_debugfs.c: At top level:
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2247:2: error: expected identifier or '(' before 'if'
2247 | if ((INTEL_GEN(dev_priv) >= 9 || IS_HASWELL(dev_priv) ||
| ^~
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2257:2: error: expected identifier or '(' before 'return'
2257 | return 0;
| ^~~~~~
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2258:1: error: expected identifier or '(' before '}' token
2258 | }
| ^
drivers/gpu/drm/i915/display/intel_display_debugfs.c: In function 'intel_connector_debugfs_add':
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:2244:2: warning: control reaches end of non-void function [-Wreturn-type]
2244 | }
| ^
In file included from include/drm/drm_debugfs.h:36,
from drivers/gpu/drm/i915/display/intel_display_debugfs.c:6:
At top level:
drivers/gpu/drm/i915/display/intel_display_debugfs.c:2081:23: warning: 'i915_lpsp_capability_fops' defined but not used [-Wunused-const-variable=]
2081 | DEFINE_SHOW_ATTRIBUTE(i915_lpsp_capability);
| ^~~~~~~~~~~~~~~~~~~~
include/linux/seq_file.h:154:37: note: in definition of macro 'DEFINE_SHOW_ATTRIBUTE'
154 | static const struct file_operations __name ## _fops = { | ^~~~~~
vim +2247 drivers/gpu/drm/i915/display/intel_display_debugfs.c
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2202
926b005cd8c4e3 Jani Nikula 2020-02-11 2203 /**
926b005cd8c4e3 Jani Nikula 2020-02-11 2204 * intel_connector_debugfs_add - add i915 specific connector debugfs files
926b005cd8c4e3 Jani Nikula 2020-02-11 2205 * @connector: pointer to a registered drm_connector
926b005cd8c4e3 Jani Nikula 2020-02-11 2206 *
926b005cd8c4e3 Jani Nikula 2020-02-11 2207 * Cleanup will be done by drm_connector_unregister() through a call to
926b005cd8c4e3 Jani Nikula 2020-02-11 2208 * drm_debugfs_connector_remove().
926b005cd8c4e3 Jani Nikula 2020-02-11 2209 *
926b005cd8c4e3 Jani Nikula 2020-02-11 2210 * Returns 0 on success, negative error codes on error.
926b005cd8c4e3 Jani Nikula 2020-02-11 2211 */
926b005cd8c4e3 Jani Nikula 2020-02-11 2212 int intel_connector_debugfs_add(struct drm_connector *connector)
926b005cd8c4e3 Jani Nikula 2020-02-11 2213 {
926b005cd8c4e3 Jani Nikula 2020-02-11 2214 struct dentry *root = connector->debugfs_entry;
926b005cd8c4e3 Jani Nikula 2020-02-11 2215 struct drm_i915_private *dev_priv = to_i915(connector->dev);
926b005cd8c4e3 Jani Nikula 2020-02-11 2216
926b005cd8c4e3 Jani Nikula 2020-02-11 2217 /* The connector must have been registered beforehands. */
926b005cd8c4e3 Jani Nikula 2020-02-11 2218 if (!root)
926b005cd8c4e3 Jani Nikula 2020-02-11 2219 return -ENODEV;
926b005cd8c4e3 Jani Nikula 2020-02-11 2220
926b005cd8c4e3 Jani Nikula 2020-02-11 2221 if (connector->connector_type == DRM_MODE_CONNECTOR_eDP) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2222 debugfs_create_file("i915_panel_timings", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2223 connector, &i915_panel_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2224 debugfs_create_file("i915_psr_sink_status", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2225 connector, &i915_psr_sink_status_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2226 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2227
926b005cd8c4e3 Jani Nikula 2020-02-11 2228 if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
926b005cd8c4e3 Jani Nikula 2020-02-11 2229 connector->connector_type == DRM_MODE_CONNECTOR_HDMIA ||
926b005cd8c4e3 Jani Nikula 2020-02-11 2230 connector->connector_type == DRM_MODE_CONNECTOR_HDMIB) {
926b005cd8c4e3 Jani Nikula 2020-02-11 2231 debugfs_create_file("i915_hdcp_sink_capability", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2232 connector, &i915_hdcp_sink_capability_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2233 }
926b005cd8c4e3 Jani Nikula 2020-02-11 2234
926b005cd8c4e3 Jani Nikula 2020-02-11 @2235 if (INTEL_GEN(dev_priv) >= 10 &&
926b005cd8c4e3 Jani Nikula 2020-02-11 2236 (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
926b005cd8c4e3 Jani Nikula 2020-02-11 2237 connector->connector_type == DRM_MODE_CONNECTOR_eDP))
926b005cd8c4e3 Jani Nikula 2020-02-11 2238 debugfs_create_file("i915_dsc_fec_support", S_IRUGO, root,
926b005cd8c4e3 Jani Nikula 2020-02-11 2239 connector, &i915_dsc_fec_support_fops);
926b005cd8c4e3 Jani Nikula 2020-02-11 2240
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 @2241 if (INTEL_GEN(dev_priv) >= 12)
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2242 debugfs_create_file("vrr_range", S_IRUGO,
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2243 root, connector, &vrr_range_fops);
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 @2244 }
670af3cf7a3a36 Bhanuprakash Modem 2020-06-12 2245
8806211fe7b306 Anshuman Gupta 2020-04-15 2246 /* Legacy panels doesn't lpsp on any platform */
8806211fe7b306 Anshuman Gupta 2020-04-15 @2247 if ((INTEL_GEN(dev_priv) >= 9 || IS_HASWELL(dev_priv) ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2248 IS_BROADWELL(dev_priv)) &&
8806211fe7b306 Anshuman Gupta 2020-04-15 2249 (connector->connector_type == DRM_MODE_CONNECTOR_DSI ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2250 connector->connector_type == DRM_MODE_CONNECTOR_eDP ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2251 connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2252 connector->connector_type == DRM_MODE_CONNECTOR_HDMIA ||
8806211fe7b306 Anshuman Gupta 2020-04-15 2253 connector->connector_type == DRM_MODE_CONNECTOR_HDMIB))
8806211fe7b306 Anshuman Gupta 2020-04-15 2254 debugfs_create_file("i915_lpsp_capability", 0444, root,
8806211fe7b306 Anshuman Gupta 2020-04-15 2255 connector, &i915_lpsp_capability_fops);
8806211fe7b306 Anshuman Gupta 2020-04-15 2256
926b005cd8c4e3 Jani Nikula 2020-02-11 @2257 return 0;
926b005cd8c4e3 Jani Nikula 2020-02-11 @2258 }
:::::: The code at line 2247 was first introduced by commit
:::::: 8806211fe7b30696c1fcae54b73c94abfdf55893 drm/i915: Add i915_lpsp_capability debugfs
:::::: TO: Anshuman Gupta <anshuman.gupta(a)intel.com>
:::::: CC: Uma Shankar <uma.shankar(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[jpirko-mlxsw:petrm_deep_qdisc 1/15] net/sched/sch_tbf.c:565:2: error: implicit declaration of function 'tbf_graft_offload'; did you mean
by kernel test robot
tree: https://github.com/jpirko/linux_mlxsw petrm_deep_qdisc
head: 7d66c347912c7427260e4caeebb4a3a98b84c385
commit: 8086aadd181d6e53ce054e7052858d397ecf2a6e [1/15] net: sch_tbf: Add a graft command
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
git checkout 8086aadd181d6e53ce054e7052858d397ecf2a6e
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
net/sched/sch_tbf.c: In function 'tbf_graft':
>> net/sched/sch_tbf.c:565:2: error: implicit declaration of function 'tbf_graft_offload'; did you mean 'tc_can_offload'? [-Werror=implicit-function-declaration]
565 | tbf_graft_offload(sch, new, *old, extack);
| ^~~~~~~~~~~~~~~~~
| tc_can_offload
At top level:
net/sched/sch_tbf.c:187:13: warning: 'tbf_offload_graft' defined but not used [-Wunused-function]
187 | static void tbf_offload_graft(struct Qdisc *sch, struct Qdisc *new, struct Qdisc *old,
| ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +565 net/sched/sch_tbf.c
554
555 static int tbf_graft(struct Qdisc *sch, unsigned long arg, struct Qdisc *new,
556 struct Qdisc **old, struct netlink_ext_ack *extack)
557 {
558 struct tbf_sched_data *q = qdisc_priv(sch);
559
560 if (new == NULL)
561 new = &noop_qdisc;
562
563 *old = qdisc_replace(sch, new, &q->qdisc);
564
> 565 tbf_graft_offload(sch, new, *old, extack);
566 return 0;
567 }
568
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[luto:x86/entry 5/12] ld.lld: error: undefined symbol: FRAME_SIZE
by kernel test robot
TO: Andy Lutomirski <luto(a)kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/entry
head: f8fe40e0088749734b4435b554f73eee53dcf7a8
commit: e235a1310cd950a3036dafccab319bf361bcc93e [5/12] x86/entry: Use the high bits of regs->cs to store the entry type
config: x86_64-randconfig-r024-20200612 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 3b43f006294971b8049d4807110032169780e5b8)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout e235a1310cd950a3036dafccab319bf361bcc93e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> ld.lld: error: undefined symbol: FRAME_SIZE
>>> referenced by ftrace_64.S:141 (arch/x86/kernel/ftrace_64.S:141)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:141 (arch/x86/kernel/ftrace_64.S:141)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:141 (arch/x86/kernel/ftrace_64.S:141)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced 19 more times
--
>> ld.lld: error: undefined symbol: RAX
>>> referenced by ftrace_64.S:141 (arch/x86/kernel/ftrace_64.S:141)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:153 (arch/x86/kernel/ftrace_64.S:153)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:184 (arch/x86/kernel/ftrace_64.S:184)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced 4 more times
--
>> ld.lld: error: undefined symbol: RIP
>>> referenced by ftrace_64.S:141 (arch/x86/kernel/ftrace_64.S:141)
>>> kernel/ftrace_64.o:(ftrace_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:184 (arch/x86/kernel/ftrace_64.S:184)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:224 (arch/x86/kernel/ftrace_64.S:224)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced 1 more times
--
>> ld.lld: error: undefined symbol: R15
>>> referenced by ftrace_64.S:192 (arch/x86/kernel/ftrace_64.S:192)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:228 (arch/x86/kernel/ftrace_64.S:228)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: R14
>>> referenced by ftrace_64.S:193 (arch/x86/kernel/ftrace_64.S:193)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:229 (arch/x86/kernel/ftrace_64.S:229)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: R13
>>> referenced by ftrace_64.S:194 (arch/x86/kernel/ftrace_64.S:194)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:230 (arch/x86/kernel/ftrace_64.S:230)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: R12
>>> referenced by ftrace_64.S:195 (arch/x86/kernel/ftrace_64.S:195)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:231 (arch/x86/kernel/ftrace_64.S:231)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: R11
>>> referenced by ftrace_64.S:196 (arch/x86/kernel/ftrace_64.S:196)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: R10
>>> referenced by ftrace_64.S:197 (arch/x86/kernel/ftrace_64.S:197)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:232 (arch/x86/kernel/ftrace_64.S:232)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: RBX
>>> referenced by ftrace_64.S:198 (arch/x86/kernel/ftrace_64.S:198)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:233 (arch/x86/kernel/ftrace_64.S:233)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
--
>> ld.lld: error: undefined symbol: EFLAGS
>>> referenced by ftrace_64.S:201 (arch/x86/kernel/ftrace_64.S:201)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
>>> referenced by ftrace_64.S:220 (arch/x86/kernel/ftrace_64.S:220)
>>> kernel/ftrace_64.o:(ftrace_regs_caller) in archive arch/x86/built-in.a
..
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH v8 5/7] iommu/arm-smmu: Add implementation for the adreno GPU SMMU
by kernel test robot
Hi Jordan,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on next-20200612]
[cannot apply to iommu/next robh/for-next arm/for-next keystone/next rockchip/for-next arm64/for-next/core shawnguo/for-next soc/for-next v5.7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Jordan-Crouse/iommu-arm-smmu-Ena...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git b961f8dc8976c091180839f4483d67b7c2ca2578
config: arm64-randconfig-r026-20200612 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 3b43f006294971b8049d4807110032169780e5b8)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/iommu/arm-smmu-qcom.c:17:49: error: member reference type 'struct device *' is a pointer; did you mean to use '->'?
return of_device_is_compatible(smmu_domain->dev.of_node, "qcom,adreno");
~~~~~~~~~~~~~~~~^
->
1 error generated.
vim +17 drivers/iommu/arm-smmu-qcom.c
14
15 static bool qcom_adreno_smmu_is_gpu_device(struct arm_smmu_domain *smmu_domain)
16 {
> 17 return of_device_is_compatible(smmu_domain->dev.of_node, "qcom,adreno");
18 }
19
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[f2fs-stable:linux-4.19.y 303/596] include/linux/module.h:133:6: warning: 'init_module' specifies less restrictive attribute than its target 'init_test_ucd': 'cold'
by kernel test robot
Hi Gabriel,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-stable.git linux-4.19.y
head: 551162c9bf51fda41d2d5ff5e2c5f70a5800cd5f
commit: 56427c9cf549342906953cfd1d180d014b78c97b [303/596] unicode: introduce test module for normalized utf8 implementation
config: um-allmodconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
git checkout 56427c9cf549342906953cfd1d180d014b78c97b
# save the attached .config to linux build tree
make W=1 ARCH=um
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
cc1: warning: arch/um/include/uapi: No such file or directory [-Wmissing-include-dirs]
fs/unicode/utf8-selftest.c:46:1: warning: 'static' is not at beginning of declaration [-Wold-style-declaration]
46 | const static struct {
| ^~~~~
fs/unicode/utf8-selftest.c:100:1: warning: 'static' is not at beginning of declaration [-Wold-style-declaration]
100 | const static struct {
| ^~~~~
In file included from fs/unicode/utf8-selftest.c:18:
>> include/linux/module.h:133:6: warning: 'init_module' specifies less restrictive attribute than its target 'init_test_ucd': 'cold' [-Wmissing-attributes]
133 | int init_module(void) __attribute__((alias(#initfn)));
| ^~~~~~~~~~~
>> fs/unicode/utf8-selftest.c:316:1: note: in expansion of macro 'module_init'
316 | module_init(init_test_ucd);
| ^~~~~~~~~~~
fs/unicode/utf8-selftest.c:294:19: note: 'init_module' target declared here
294 | static int __init init_test_ucd(void)
| ^~~~~~~~~~~~~
In file included from fs/unicode/utf8-selftest.c:18:
>> include/linux/module.h:139:7: warning: 'cleanup_module' specifies less restrictive attribute than its target 'exit_test_ucd': 'cold' [-Wmissing-attributes]
139 | void cleanup_module(void) __attribute__((alias(#exitfn)));
| ^~~~~~~~~~~~~~
>> fs/unicode/utf8-selftest.c:317:1: note: in expansion of macro 'module_exit'
317 | module_exit(exit_test_ucd);
| ^~~~~~~~~~~
fs/unicode/utf8-selftest.c:312:20: note: 'cleanup_module' target declared here
312 | static void __exit exit_test_ucd(void)
| ^~~~~~~~~~~~~
vim +133 include/linux/module.h
0fd972a7d91d6e Paul Gortmaker 2015-05-01 128
0fd972a7d91d6e Paul Gortmaker 2015-05-01 129 /* Each module must use one module_init(). */
0fd972a7d91d6e Paul Gortmaker 2015-05-01 130 #define module_init(initfn) \
1f318a8bafcfba Arnd Bergmann 2017-02-01 131 static inline initcall_t __maybe_unused __inittest(void) \
0fd972a7d91d6e Paul Gortmaker 2015-05-01 132 { return initfn; } \
0fd972a7d91d6e Paul Gortmaker 2015-05-01 @133 int init_module(void) __attribute__((alias(#initfn)));
0fd972a7d91d6e Paul Gortmaker 2015-05-01 134
0fd972a7d91d6e Paul Gortmaker 2015-05-01 135 /* This is only required if you want to be unloadable. */
0fd972a7d91d6e Paul Gortmaker 2015-05-01 136 #define module_exit(exitfn) \
1f318a8bafcfba Arnd Bergmann 2017-02-01 137 static inline exitcall_t __maybe_unused __exittest(void) \
0fd972a7d91d6e Paul Gortmaker 2015-05-01 138 { return exitfn; } \
0fd972a7d91d6e Paul Gortmaker 2015-05-01 @139 void cleanup_module(void) __attribute__((alias(#exitfn)));
0fd972a7d91d6e Paul Gortmaker 2015-05-01 140
:::::: The code at line 133 was first introduced by commit
:::::: 0fd972a7d91d6e15393c449492a04d94c0b89351 module: relocate module_init from init.h to module.h
:::::: TO: Paul Gortmaker <paul.gortmaker(a)windriver.com>
:::::: CC: Paul Gortmaker <paul.gortmaker(a)windriver.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[f2fs-stable:linux-4.19.y 359/596] fs/f2fs/file.c:3176:40: warning: taking address of packed member of 'struct f2fs_super_block' may result in an unaligned pointer value
by kernel test robot
Hi Chao,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-stable.git linux-4.19.y
head: 551162c9bf51fda41d2d5ff5e2c5f70a5800cd5f
commit: 2f7cc89b033f4d379139ec47a801a531f4f12f67 [359/596] f2fs: support FS_IOC_{GET,SET}FSLABEL
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 2f7cc89b033f4d379139ec47a801a531f4f12f67
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from fs/f2fs/file.c:25:
fs/f2fs/f2fs.h: In function 'blkaddr_in_node':
fs/f2fs/f2fs.h:2280:30: warning: taking address of packed member of 'struct f2fs_inode' may result in an unaligned pointer value [-Waddress-of-packed-member]
2280 | return RAW_IS_INODE(node) ? node->i.i_addr : node->dn.addr;
| ^~~~
fs/f2fs/f2fs.h:2280:47: warning: taking address of packed member of 'struct direct_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
2280 | return RAW_IS_INODE(node) ? node->i.i_addr : node->dn.addr;
| ^~~~
fs/f2fs/file.c: In function 'f2fs_get_volume_name':
>> fs/f2fs/file.c:3176:40: warning: taking address of packed member of 'struct f2fs_super_block' may result in an unaligned pointer value [-Waddress-of-packed-member]
3176 | count = utf16s_to_utf8s(sbi->raw_super->volume_name,
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~
fs/f2fs/file.c: In function 'f2fs_set_volume_name':
fs/f2fs/file.c:3212:18: warning: taking address of packed member of 'struct f2fs_super_block' may result in an unaligned pointer value [-Waddress-of-packed-member]
3212 | sbi->raw_super->volume_name,
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~
vim +3176 fs/f2fs/file.c
3162
3163 static int f2fs_get_volume_name(struct file *filp, unsigned long arg)
3164 {
3165 struct inode *inode = file_inode(filp);
3166 struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
3167 char *vbuf;
3168 int count;
3169 int err = 0;
3170
3171 vbuf = f2fs_kzalloc(sbi, MAX_VOLUME_NAME, GFP_KERNEL);
3172 if (!vbuf)
3173 return -ENOMEM;
3174
3175 down_read(&sbi->sb_lock);
> 3176 count = utf16s_to_utf8s(sbi->raw_super->volume_name,
3177 ARRAY_SIZE(sbi->raw_super->volume_name),
3178 UTF16_LITTLE_ENDIAN, vbuf, MAX_VOLUME_NAME);
3179 up_read(&sbi->sb_lock);
3180
3181 if (copy_to_user((char __user *)arg, vbuf,
3182 min(FSLABEL_MAX, count)))
3183 err = -EFAULT;
3184
3185 kvfree(vbuf);
3186 return err;
3187 }
3188
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months