* [alobakin:idpf-libie-new 7/46] drivers/firmware/psci/psci_checker.c:401:48: warning: too many arguments for format
@ 2024-08-14 2:54 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-08-14 2:54 UTC (permalink / raw)
To: Alexander Lobakin; +Cc: oe-kbuild-all
tree: https://github.com/alobakin/linux idpf-libie-new
head: c61d91d0986f5e0053b7b6ab6edcf67d85b8b52b
commit: 1e17d54446b96380fb5c0c22e6a29ec2706b7ce4 [7/46] kthread: allow vararg kthread_{create,run}_on_cpu()
config: arm-allmodconfig (https://download.01.org/0day-ci/archive/20240814/202408141012.KhvKaxoh-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240814/202408141012.KhvKaxoh-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408141012.KhvKaxoh-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/firmware/psci/psci_checker.c:15:
drivers/firmware/psci/psci_checker.c: In function 'suspend_tests':
>> drivers/firmware/psci/psci_checker.c:401:48: warning: too many arguments for format [-Wformat-extra-args]
401 | "psci_suspend_test");
| ^~~~~~~~~~~~~~~~~~~
include/linux/kthread.h:36:54: note: in definition of macro 'kthread_create_on_cpu'
36 | __kthread_create_on_cpu(threadfn, data, cpu, namefmt, \
| ^~~~~~~
vim +401 drivers/firmware/psci/psci_checker.c
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 366
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 367 static int suspend_tests(void)
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 368 {
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 369 int i, cpu, err = 0;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 370 struct task_struct **threads;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 371 int nb_threads = 0;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 372
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 373 threads = kmalloc_array(nb_available_cpus, sizeof(*threads),
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 374 GFP_KERNEL);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 375 if (!threads)
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 376 return -ENOMEM;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 377
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 378 /*
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 379 * Stop cpuidle to prevent the idle tasks from entering a deep sleep
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 380 * mode, as it might interfere with the suspend threads on other CPUs.
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 381 * This does not prevent the suspend threads from using cpuidle (only
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 382 * the idle tasks check this status). Take the idle lock so that
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 383 * the cpuidle driver and device look-up can be carried out safely.
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 384 */
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 385 cpuidle_pause_and_lock();
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 386
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 387 for_each_online_cpu(cpu) {
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 388 struct task_struct *thread;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 389 /* Check that cpuidle is available on that CPU. */
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 390 struct cpuidle_device *dev = per_cpu(cpuidle_devices, cpu);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 391 struct cpuidle_driver *drv = cpuidle_get_cpu_driver(dev);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 392
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 393 if (!dev || !drv) {
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 394 pr_warn("cpuidle not available on CPU %d, ignoring\n",
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 395 cpu);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 396 continue;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 397 }
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 398
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 399 thread = kthread_create_on_cpu(suspend_test_thread,
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 400 (void *)(long)cpu, cpu,
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 @401 "psci_suspend_test");
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 402 if (IS_ERR(thread))
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 403 pr_err("Failed to create kthread on CPU %d\n", cpu);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 404 else
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 405 threads[nb_threads++] = thread;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 406 }
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 407
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 408 if (nb_threads < 1) {
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 409 err = -ENODEV;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 410 goto out;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 411 }
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 412
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 413 atomic_set(&nb_active_threads, nb_threads);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 414
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 415 /*
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 416 * Wake up the suspend threads. To avoid the main thread being preempted
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 417 * before all the threads have been unparked, the suspend threads will
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 418 * wait for the completion of suspend_threads_started.
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 419 */
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 420 for (i = 0; i < nb_threads; ++i)
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 421 wake_up_process(threads[i]);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 422 complete_all(&suspend_threads_started);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 423
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 424 wait_for_completion(&suspend_threads_done);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 425
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 426
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 427 /* Stop and destroy all threads, get return status. */
92e074acf6f769 drivers/firmware/psci/psci_checker.c Jean-Philippe Brucker 2019-06-10 428 for (i = 0; i < nb_threads; ++i) {
92e074acf6f769 drivers/firmware/psci/psci_checker.c Jean-Philippe Brucker 2019-06-10 429 err += kthread_park(threads[i]);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 430 err += kthread_stop(threads[i]);
92e074acf6f769 drivers/firmware/psci/psci_checker.c Jean-Philippe Brucker 2019-06-10 431 }
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 432 out:
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 433 cpuidle_resume_and_unlock();
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 434 kfree(threads);
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 435 return err;
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 436 }
ea8b1c4a6019fb drivers/firmware/psci_checker.c Kevin Brodsky 2016-11-08 437
:::::: The code at line 401 was first introduced by commit
:::::: ea8b1c4a6019fb96ca8301f0b3ffcb13fb1cd0ae drivers: psci: PSCI checker module
:::::: TO: Kevin Brodsky <kevin.brodsky@arm.com>
:::::: CC: Arnd Bergmann <arnd@arndb.de>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-08-14 2:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-14 2:54 [alobakin:idpf-libie-new 7/46] drivers/firmware/psci/psci_checker.c:401:48: warning: too many arguments for format kernel test robot
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.