Hi Tao, kernel test robot noticed the following build warnings: [auto build test WARNING on robh/for-next] [also build test WARNING on linus/master v6.10-rc7 next-20240711] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Tao-Zhang/dt-bindings-arm-qcom-coresight-static-replicator-Add-property-for-source-filtering/20240711-162200 base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next patch link: https://lore.kernel.org/r/20240711081750.21792-3-quic_taozha%40quicinc.com patch subject: [PATCH v2 2/3] coresight: Add source filtering for multi-port output config: arm-randconfig-004-20240712 (https://download.01.org/0day-ci/archive/20240712/202407121454.IxYqSYDp-lkp@xxxxxxxxx/config) compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240712/202407121454.IxYqSYDp-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202407121454.IxYqSYDp-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): >> drivers/hwtracing/coresight/coresight-platform.c:261:23: warning: more '%' conversions than data arguments [-Wformat-insufficient-args] "Filter source %s is not a source device\n"); ~^ include/linux/dev_printk.h:156:62: note: expanded from macro 'dev_warn' dev_printk_index_wrap(_dev_warn, KERN_WARNING, dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~ include/linux/dev_printk.h:19:22: note: expanded from macro 'dev_fmt' #define dev_fmt(fmt) fmt ^~~ include/linux/dev_printk.h:110:16: note: expanded from macro 'dev_printk_index_wrap' _p_func(dev, fmt, ##__VA_ARGS__); \ ^~~ 1 warning generated. vim +261 drivers/hwtracing/coresight/coresight-platform.c 185 186 /* 187 * of_coresight_parse_endpoint : Parse the given output endpoint @ep 188 * and fill the connection information in @pdata->out_conns 189 * 190 * Parses the local port, remote device name and the remote port. 191 * 192 * Returns : 193 * 0 - If the parsing completed without any fatal errors. 194 * -Errno - Fatal error, abort the scanning. 195 */ 196 static int of_coresight_parse_endpoint(struct device *dev, 197 struct device_node *ep, 198 struct coresight_platform_data *pdata) 199 { 200 int ret = 0; 201 struct of_endpoint endpoint, rendpoint; 202 struct device_node *rparent = NULL; 203 struct device_node *rep = NULL; 204 struct device *rdev = NULL; 205 struct fwnode_handle *rdev_fwnode; 206 struct coresight_connection conn = {}; 207 struct coresight_connection *new_conn; 208 209 do { 210 /* Parse the local port details */ 211 if (of_graph_parse_endpoint(ep, &endpoint)) 212 break; 213 /* 214 * Get a handle on the remote endpoint and the device it is 215 * attached to. 216 */ 217 rep = of_graph_get_remote_endpoint(ep); 218 if (!rep) 219 break; 220 rparent = of_coresight_get_port_parent(rep); 221 if (!rparent) 222 break; 223 if (of_graph_parse_endpoint(rep, &rendpoint)) 224 break; 225 226 rdev_fwnode = of_fwnode_handle(rparent); 227 /* If the remote device is not available, defer probing */ 228 rdev = coresight_find_device_by_fwnode(rdev_fwnode); 229 if (!rdev) { 230 ret = -EPROBE_DEFER; 231 break; 232 } 233 234 conn.src_port = endpoint.port; 235 /* 236 * Hold the refcount to the target device. This could be 237 * released via: 238 * 1) coresight_release_platform_data() if the probe fails or 239 * this device is unregistered. 240 * 2) While removing the target device via 241 * coresight_remove_match() 242 */ 243 conn.dest_fwnode = fwnode_handle_get(rdev_fwnode); 244 conn.dest_port = rendpoint.port; 245 246 /* 247 * Get the firmware node of the filter source through the 248 * reference. This could be used to filter the source in 249 * building path. 250 */ 251 conn.filter_src_fwnode = 252 fwnode_find_reference(&ep->fwnode, "filter-src", 0); 253 if (IS_ERR(conn.filter_src_fwnode)) 254 conn.filter_src_fwnode = NULL; 255 else { 256 conn.filter_src_dev = 257 coresight_find_csdev_by_fwnode(conn.filter_src_fwnode); 258 if (conn.filter_src_dev && (conn.filter_src_dev->type 259 != CORESIGHT_DEV_TYPE_SOURCE)) 260 dev_warn(&conn.filter_src_dev->dev, > 261 "Filter source %s is not a source device\n"); 262 } 263 264 new_conn = coresight_add_out_conn(dev, pdata, &conn); 265 if (IS_ERR_VALUE(new_conn)) { 266 fwnode_handle_put(conn.dest_fwnode); 267 return PTR_ERR(new_conn); 268 } 269 /* Connection record updated */ 270 } while (0); 271 272 of_node_put(rparent); 273 of_node_put(rep); 274 put_device(rdev); 275 276 return ret; 277 } 278 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki