From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH][next] ftrace: Fix -Wcast-function-type warnings on powerpc64
Date: Tue, 09 Nov 2021 04:43:02 +0800 [thread overview]
Message-ID: <202111090453.B4LPJ4xc-lkp@intel.com> (raw)
In-Reply-To: <20211005053922.GA702049@embeddedor>
[-- Attachment #1: Type: text/plain, Size: 18615 bytes --]
Hi "Gustavo,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on tip/perf/core]
[also build test ERROR on v5.15]
[cannot apply to rostedt-trace/for-next linux/master linus/master next-20211108]
[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]
url: https://github.com/0day-ci/linux/commits/Gustavo-A-R-Silva/ftrace-Fix-Wcast-function-type-warnings-on-powerpc64/20211005-133606
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 41100833cdd8b1bef363b81a6482d74711c116ad
config: powerpc64-allmodconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 11.2.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
# https://github.com/0day-ci/linux/commit/9c10c0713155955bf1170eea3904cfcfb6d2d832
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Gustavo-A-R-Silva/ftrace-Fix-Wcast-function-type-warnings-on-powerpc64/20211005-133606
git checkout 9c10c0713155955bf1170eea3904cfcfb6d2d832
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
kernel/trace/trace.c: In function 'trace_check_vprintf':
kernel/trace/trace.c:3827:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
3827 | trace_seq_vprintf(&iter->seq, iter->fmt, ap);
| ^~~~~~~~~~~~~~~~~
kernel/trace/trace.c:3882:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
3882 | trace_seq_vprintf(&iter->seq, p, ap);
| ^~~~~~~~~~~~~~~~~
In file included from kernel/trace/trace.c:8605:
kernel/trace/trace_selftest.c: At top level:
kernel/trace/trace_selftest.c:152:35: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
152 | .func = trace_selftest_test_probe1_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:152:35: note: (near initialization for 'test_probe1.func')
kernel/trace/trace_selftest.c:156:35: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
156 | .func = trace_selftest_test_probe2_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:156:35: note: (near initialization for 'test_probe2.func')
kernel/trace/trace_selftest.c:160:35: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
160 | .func = trace_selftest_test_probe3_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:160:35: note: (near initialization for 'test_probe3.func')
kernel/trace/trace_selftest.c: In function 'trace_selftest_ops':
>> kernel/trace/trace_selftest.c:219:43: error: passing argument 2 of 'ftrace_init_array_ops' from incompatible pointer type [-Werror=incompatible-pointer-types]
219 | ftrace_init_array_ops(tr, trace_selftest_test_global_func);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)
In file included from kernel/trace/trace.c:53:
kernel/trace/trace.h:981:66: note: expected 'ftrace_func_t' {aka 'void (*)(long unsigned int, long unsigned int)'} but argument is of type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)'
981 | void ftrace_init_array_ops(struct trace_array *tr, ftrace_func_t func);
| ~~~~~~~~~~~~~~^~~~
In file included from kernel/trace/trace.c:8605:
>> kernel/trace/trace_selftest.c:256:23: error: assignment to 'ftrace_func_t' {aka 'void (*)(long unsigned int, long unsigned int)'} from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
256 | dyn_ops->func = trace_selftest_test_dyn_func;
| ^
kernel/trace/trace_selftest.c: At top level:
kernel/trace/trace_selftest.c:447:35: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
447 | .func = trace_selftest_test_recursion_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:447:35: note: (near initialization for 'test_rec_probe.func')
kernel/trace/trace_selftest.c:452:35: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
452 | .func = trace_selftest_test_recursion_safe_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:452:35: note: (near initialization for 'test_recsafe_probe.func')
kernel/trace/trace_selftest.c:562:27: error: initialization of 'void (*)(long unsigned int, long unsigned int)' from incompatible pointer type 'void (*)(long unsigned int, long unsigned int, struct ftrace_ops *, struct ftrace_regs *)' [-Werror=incompatible-pointer-types]
562 | .func = trace_selftest_test_regs_func,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/trace/trace_selftest.c:562:27: note: (near initialization for 'test_regs_probe.func')
cc1: some warnings being treated as errors
vim +/ftrace_init_array_ops +219 kernel/trace/trace_selftest.c
95950c2ecb3131 Steven Rostedt 2011-05-06 181
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 182) static int trace_selftest_ops(struct trace_array *tr, int cnt)
95950c2ecb3131 Steven Rostedt 2011-05-06 183 {
95950c2ecb3131 Steven Rostedt 2011-05-06 184 int save_ftrace_enabled = ftrace_enabled;
95950c2ecb3131 Steven Rostedt 2011-05-06 185 struct ftrace_ops *dyn_ops;
95950c2ecb3131 Steven Rostedt 2011-05-06 186 char *func1_name;
95950c2ecb3131 Steven Rostedt 2011-05-06 187 char *func2_name;
95950c2ecb3131 Steven Rostedt 2011-05-06 188 int len1;
95950c2ecb3131 Steven Rostedt 2011-05-06 189 int len2;
95950c2ecb3131 Steven Rostedt 2011-05-06 190 int ret = -1;
95950c2ecb3131 Steven Rostedt 2011-05-06 191
95950c2ecb3131 Steven Rostedt 2011-05-06 192 printk(KERN_CONT "PASSED\n");
95950c2ecb3131 Steven Rostedt 2011-05-06 193 pr_info("Testing dynamic ftrace ops #%d: ", cnt);
95950c2ecb3131 Steven Rostedt 2011-05-06 194
95950c2ecb3131 Steven Rostedt 2011-05-06 195 ftrace_enabled = 1;
95950c2ecb3131 Steven Rostedt 2011-05-06 196 reset_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 197
95950c2ecb3131 Steven Rostedt 2011-05-06 198 /* Handle PPC64 '.' name */
95950c2ecb3131 Steven Rostedt 2011-05-06 199 func1_name = "*" __stringify(DYN_FTRACE_TEST_NAME);
95950c2ecb3131 Steven Rostedt 2011-05-06 200 func2_name = "*" __stringify(DYN_FTRACE_TEST_NAME2);
95950c2ecb3131 Steven Rostedt 2011-05-06 201 len1 = strlen(func1_name);
95950c2ecb3131 Steven Rostedt 2011-05-06 202 len2 = strlen(func2_name);
95950c2ecb3131 Steven Rostedt 2011-05-06 203
95950c2ecb3131 Steven Rostedt 2011-05-06 204 /*
95950c2ecb3131 Steven Rostedt 2011-05-06 205 * Probe 1 will trace function 1.
95950c2ecb3131 Steven Rostedt 2011-05-06 206 * Probe 2 will trace function 2.
95950c2ecb3131 Steven Rostedt 2011-05-06 207 * Probe 3 will trace functions 1 and 2.
95950c2ecb3131 Steven Rostedt 2011-05-06 208 */
95950c2ecb3131 Steven Rostedt 2011-05-06 209 ftrace_set_filter(&test_probe1, func1_name, len1, 1);
95950c2ecb3131 Steven Rostedt 2011-05-06 210 ftrace_set_filter(&test_probe2, func2_name, len2, 1);
95950c2ecb3131 Steven Rostedt 2011-05-06 211 ftrace_set_filter(&test_probe3, func1_name, len1, 1);
95950c2ecb3131 Steven Rostedt 2011-05-06 212 ftrace_set_filter(&test_probe3, func2_name, len2, 0);
95950c2ecb3131 Steven Rostedt 2011-05-06 213
95950c2ecb3131 Steven Rostedt 2011-05-06 214 register_ftrace_function(&test_probe1);
95950c2ecb3131 Steven Rostedt 2011-05-06 215 register_ftrace_function(&test_probe2);
95950c2ecb3131 Steven Rostedt 2011-05-06 216 register_ftrace_function(&test_probe3);
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 217) /* First time we are running with main function */
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 218) if (cnt > 1) {
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 @219) ftrace_init_array_ops(tr, trace_selftest_test_global_func);
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 220) register_ftrace_function(tr->ops);
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 221) }
95950c2ecb3131 Steven Rostedt 2011-05-06 222
95950c2ecb3131 Steven Rostedt 2011-05-06 223 DYN_FTRACE_TEST_NAME();
95950c2ecb3131 Steven Rostedt 2011-05-06 224
95950c2ecb3131 Steven Rostedt 2011-05-06 225 print_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 226
95950c2ecb3131 Steven Rostedt 2011-05-06 227 if (trace_selftest_test_probe1_cnt != 1)
95950c2ecb3131 Steven Rostedt 2011-05-06 228 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 229 if (trace_selftest_test_probe2_cnt != 0)
95950c2ecb3131 Steven Rostedt 2011-05-06 230 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 231 if (trace_selftest_test_probe3_cnt != 1)
95950c2ecb3131 Steven Rostedt 2011-05-06 232 goto out;
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 233) if (cnt > 1) {
95950c2ecb3131 Steven Rostedt 2011-05-06 234 if (trace_selftest_test_global_cnt == 0)
95950c2ecb3131 Steven Rostedt 2011-05-06 235 goto out;
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 236) }
95950c2ecb3131 Steven Rostedt 2011-05-06 237
95950c2ecb3131 Steven Rostedt 2011-05-06 238 DYN_FTRACE_TEST_NAME2();
95950c2ecb3131 Steven Rostedt 2011-05-06 239
95950c2ecb3131 Steven Rostedt 2011-05-06 240 print_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 241
95950c2ecb3131 Steven Rostedt 2011-05-06 242 if (trace_selftest_test_probe1_cnt != 1)
95950c2ecb3131 Steven Rostedt 2011-05-06 243 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 244 if (trace_selftest_test_probe2_cnt != 1)
95950c2ecb3131 Steven Rostedt 2011-05-06 245 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 246 if (trace_selftest_test_probe3_cnt != 2)
95950c2ecb3131 Steven Rostedt 2011-05-06 247 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 248
95950c2ecb3131 Steven Rostedt 2011-05-06 249 /* Add a dynamic probe */
95950c2ecb3131 Steven Rostedt 2011-05-06 250 dyn_ops = kzalloc(sizeof(*dyn_ops), GFP_KERNEL);
95950c2ecb3131 Steven Rostedt 2011-05-06 251 if (!dyn_ops) {
95950c2ecb3131 Steven Rostedt 2011-05-06 252 printk("MEMORY ERROR ");
95950c2ecb3131 Steven Rostedt 2011-05-06 253 goto out;
95950c2ecb3131 Steven Rostedt 2011-05-06 254 }
95950c2ecb3131 Steven Rostedt 2011-05-06 255
95950c2ecb3131 Steven Rostedt 2011-05-06 @256 dyn_ops->func = trace_selftest_test_dyn_func;
95950c2ecb3131 Steven Rostedt 2011-05-06 257
95950c2ecb3131 Steven Rostedt 2011-05-06 258 register_ftrace_function(dyn_ops);
95950c2ecb3131 Steven Rostedt 2011-05-06 259
95950c2ecb3131 Steven Rostedt 2011-05-06 260 trace_selftest_test_global_cnt = 0;
95950c2ecb3131 Steven Rostedt 2011-05-06 261
95950c2ecb3131 Steven Rostedt 2011-05-06 262 DYN_FTRACE_TEST_NAME();
95950c2ecb3131 Steven Rostedt 2011-05-06 263
95950c2ecb3131 Steven Rostedt 2011-05-06 264 print_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 265
95950c2ecb3131 Steven Rostedt 2011-05-06 266 if (trace_selftest_test_probe1_cnt != 2)
95950c2ecb3131 Steven Rostedt 2011-05-06 267 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 268 if (trace_selftest_test_probe2_cnt != 1)
95950c2ecb3131 Steven Rostedt 2011-05-06 269 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 270 if (trace_selftest_test_probe3_cnt != 3)
95950c2ecb3131 Steven Rostedt 2011-05-06 271 goto out_free;
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 272) if (cnt > 1) {
95950c2ecb3131 Steven Rostedt 2011-05-06 273 if (trace_selftest_test_global_cnt == 0)
46320a6acc4fb5 Steven Rostedt (VMware 2017-09-01 274) goto out_free;
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 275) }
95950c2ecb3131 Steven Rostedt 2011-05-06 276 if (trace_selftest_test_dyn_cnt == 0)
95950c2ecb3131 Steven Rostedt 2011-05-06 277 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 278
95950c2ecb3131 Steven Rostedt 2011-05-06 279 DYN_FTRACE_TEST_NAME2();
95950c2ecb3131 Steven Rostedt 2011-05-06 280
95950c2ecb3131 Steven Rostedt 2011-05-06 281 print_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 282
95950c2ecb3131 Steven Rostedt 2011-05-06 283 if (trace_selftest_test_probe1_cnt != 2)
95950c2ecb3131 Steven Rostedt 2011-05-06 284 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 285 if (trace_selftest_test_probe2_cnt != 2)
95950c2ecb3131 Steven Rostedt 2011-05-06 286 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 287 if (trace_selftest_test_probe3_cnt != 4)
95950c2ecb3131 Steven Rostedt 2011-05-06 288 goto out_free;
95950c2ecb3131 Steven Rostedt 2011-05-06 289
95950c2ecb3131 Steven Rostedt 2011-05-06 290 ret = 0;
95950c2ecb3131 Steven Rostedt 2011-05-06 291 out_free:
95950c2ecb3131 Steven Rostedt 2011-05-06 292 unregister_ftrace_function(dyn_ops);
95950c2ecb3131 Steven Rostedt 2011-05-06 293 kfree(dyn_ops);
95950c2ecb3131 Steven Rostedt 2011-05-06 294
95950c2ecb3131 Steven Rostedt 2011-05-06 295 out:
95950c2ecb3131 Steven Rostedt 2011-05-06 296 /* Purposely unregister in the same order */
95950c2ecb3131 Steven Rostedt 2011-05-06 297 unregister_ftrace_function(&test_probe1);
95950c2ecb3131 Steven Rostedt 2011-05-06 298 unregister_ftrace_function(&test_probe2);
95950c2ecb3131 Steven Rostedt 2011-05-06 299 unregister_ftrace_function(&test_probe3);
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 300) if (cnt > 1)
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 301) unregister_ftrace_function(tr->ops);
4104d326b670c2 Steven Rostedt (Red Hat 2014-01-10 302) ftrace_reset_array_ops(tr);
95950c2ecb3131 Steven Rostedt 2011-05-06 303
95950c2ecb3131 Steven Rostedt 2011-05-06 304 /* Make sure everything is off */
95950c2ecb3131 Steven Rostedt 2011-05-06 305 reset_counts();
95950c2ecb3131 Steven Rostedt 2011-05-06 306 DYN_FTRACE_TEST_NAME();
95950c2ecb3131 Steven Rostedt 2011-05-06 307 DYN_FTRACE_TEST_NAME();
95950c2ecb3131 Steven Rostedt 2011-05-06 308
95950c2ecb3131 Steven Rostedt 2011-05-06 309 if (trace_selftest_test_probe1_cnt ||
95950c2ecb3131 Steven Rostedt 2011-05-06 310 trace_selftest_test_probe2_cnt ||
95950c2ecb3131 Steven Rostedt 2011-05-06 311 trace_selftest_test_probe3_cnt ||
95950c2ecb3131 Steven Rostedt 2011-05-06 312 trace_selftest_test_global_cnt ||
95950c2ecb3131 Steven Rostedt 2011-05-06 313 trace_selftest_test_dyn_cnt)
95950c2ecb3131 Steven Rostedt 2011-05-06 314 ret = -1;
95950c2ecb3131 Steven Rostedt 2011-05-06 315
95950c2ecb3131 Steven Rostedt 2011-05-06 316 ftrace_enabled = save_ftrace_enabled;
95950c2ecb3131 Steven Rostedt 2011-05-06 317
95950c2ecb3131 Steven Rostedt 2011-05-06 318 return ret;
95950c2ecb3131 Steven Rostedt 2011-05-06 319 }
95950c2ecb3131 Steven Rostedt 2011-05-06 320
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 71820 bytes --]
prev parent reply other threads:[~2021-11-08 20:43 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-05 5:39 [PATCH][next] ftrace: Fix -Wcast-function-type warnings on powerpc64 Gustavo A. R. Silva
2021-10-05 15:17 ` Steven Rostedt
2021-10-05 16:18 ` Gustavo A. R. Silva
2021-10-05 16:35 ` Steven Rostedt
2021-10-05 16:50 ` Gustavo A. R. Silva
2021-10-05 16:51 ` Steven Rostedt
2021-10-05 19:08 ` Steven Rostedt
2021-10-05 19:35 ` Gustavo A. R. Silva
2021-10-06 0:09 ` Steven Rostedt
2021-10-06 21:14 ` Gustavo A. R. Silva
2021-10-06 21:14 ` Steven Rostedt
2021-10-06 21:23 ` Gustavo A. R. Silva
2021-10-13 1:40 ` Gustavo A. R. Silva
2021-10-13 2:23 ` Steven Rostedt
2021-10-13 2:39 ` Gustavo A. R. Silva
2021-10-13 2:44 ` Steven Rostedt
2021-11-05 18:49 ` kernel test robot
2021-11-05 18:49 ` kernel test robot
2021-11-08 17:02 ` kernel test robot
2021-11-08 20:43 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202111090453.B4LPJ4xc-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.