Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Jiri Olsa <jolsa@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [jolsa-perf:trampoline_multi_10 10/21] kernel/trace/ftrace.c:6149: warning: Function parameter or struct member 'hash' not described in 'modify_ftrace_direct_nolock_hash'
Date: Wed, 23 Oct 2024 15:57:07 +0800	[thread overview]
Message-ID: <202410231555.ZGW6mgh1-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git trampoline_multi_10
head:   48132820c5a21b82d1a4507a86a67b3742fb110e
commit: 981740a59cbb2e997c7cb9a640ef5e8a1d4fe471 [10/21] ftrace: Add modify_ftrace_direct_[nolock_]hash function
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20241023/202410231555.ZGW6mgh1-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241023/202410231555.ZGW6mgh1-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/202410231555.ZGW6mgh1-lkp@intel.com/

All warnings (new ones prefixed by >>):

   kernel/trace/ftrace.c:5887: warning: Function parameter or struct member 'hash' not described in 'register_ftrace_direct_hash'
   kernel/trace/ftrace.c:5887: warning: expecting prototype for register_ftrace_direct(). Prototype was for register_ftrace_direct_hash() instead
   kernel/trace/ftrace.c:6001: warning: Function parameter or struct member 'hash' not described in 'unregister_ftrace_direct_hash'
   kernel/trace/ftrace.c:6001: warning: expecting prototype for unregister_ftrace_direct(). Prototype was for unregister_ftrace_direct_hash() instead
>> kernel/trace/ftrace.c:6149: warning: Function parameter or struct member 'hash' not described in 'modify_ftrace_direct_nolock_hash'
>> kernel/trace/ftrace.c:6149: warning: expecting prototype for modify_ftrace_direct_nolock(). Prototype was for modify_ftrace_direct_nolock_hash() instead
>> kernel/trace/ftrace.c:6197: warning: Function parameter or struct member 'hash' not described in 'modify_ftrace_direct_hash'
>> kernel/trace/ftrace.c:6197: warning: expecting prototype for modify_ftrace_direct(). Prototype was for modify_ftrace_direct_hash() instead


vim +6149 kernel/trace/ftrace.c

f96f644ab97abe Song Liu       2022-07-19  6128  
f96f644ab97abe Song Liu       2022-07-19  6129  /**
da8bdfbd422333 Florent Revest 2023-03-21  6130   * modify_ftrace_direct_nolock - Modify an existing direct 'multi' call
f96f644ab97abe Song Liu       2022-07-19  6131   * to call something else
f96f644ab97abe Song Liu       2022-07-19  6132   * @ops: The address of the struct ftrace_ops object
c488fe4b50d896 Jiri Olsa      2024-09-30  6133   * @ip: The address of the function to attach
f96f644ab97abe Song Liu       2022-07-19  6134   * @addr: The address of the new trampoline to call at @ops functions
f96f644ab97abe Song Liu       2022-07-19  6135   *
f96f644ab97abe Song Liu       2022-07-19  6136   * This is used to unregister currently registered direct caller and
f96f644ab97abe Song Liu       2022-07-19  6137   * register new one @addr on functions registered in @ops object.
f96f644ab97abe Song Liu       2022-07-19  6138   *
f96f644ab97abe Song Liu       2022-07-19  6139   * Note there's window between ftrace_shutdown and ftrace_startup calls
f96f644ab97abe Song Liu       2022-07-19  6140   * where there will be no callbacks called.
f96f644ab97abe Song Liu       2022-07-19  6141   *
f96f644ab97abe Song Liu       2022-07-19  6142   * Caller should already have direct_mutex locked, so we don't lock
f96f644ab97abe Song Liu       2022-07-19  6143   * direct_mutex here.
f96f644ab97abe Song Liu       2022-07-19  6144   *
f96f644ab97abe Song Liu       2022-07-19  6145   * Returns: zero on success. Non zero on error, which includes:
f96f644ab97abe Song Liu       2022-07-19  6146   *  -EINVAL - The @ops object was not properly registered.
f96f644ab97abe Song Liu       2022-07-19  6147   */
981740a59cbb2e Jiri Olsa      2024-10-15  6148  int modify_ftrace_direct_nolock_hash(struct ftrace_ops *ops, struct ftrace_hash *hash)
f96f644ab97abe Song Liu       2022-07-19 @6149  {
f96f644ab97abe Song Liu       2022-07-19  6150  	if (check_direct_multi(ops))
f96f644ab97abe Song Liu       2022-07-19  6151  		return -EINVAL;
f96f644ab97abe Song Liu       2022-07-19  6152  	if (!(ops->flags & FTRACE_OPS_FL_ENABLED))
f96f644ab97abe Song Liu       2022-07-19  6153  		return -EINVAL;
c488fe4b50d896 Jiri Olsa      2024-09-30  6154  	if (direct_functions == EMPTY_HASH)
c488fe4b50d896 Jiri Olsa      2024-09-30  6155  		return -EINVAL;
f96f644ab97abe Song Liu       2022-07-19  6156  
981740a59cbb2e Jiri Olsa      2024-10-15  6157  	return __modify_ftrace_direct(ops, hash);
f96f644ab97abe Song Liu       2022-07-19  6158  }
da8bdfbd422333 Florent Revest 2023-03-21  6159  EXPORT_SYMBOL_GPL(modify_ftrace_direct_nolock);
f96f644ab97abe Song Liu       2022-07-19  6160  
981740a59cbb2e Jiri Olsa      2024-10-15  6161  int modify_ftrace_direct_nolock(struct ftrace_ops *ops, unsigned long ip, unsigned long addr)
981740a59cbb2e Jiri Olsa      2024-10-15  6162  {
981740a59cbb2e Jiri Olsa      2024-10-15  6163  	struct ftrace_hash *hash;
981740a59cbb2e Jiri Olsa      2024-10-15  6164  	int err = -EINVAL;
981740a59cbb2e Jiri Olsa      2024-10-15  6165  
981740a59cbb2e Jiri Olsa      2024-10-15  6166  	hash = alloc_ftrace_hash(FTRACE_HASH_DEFAULT_BITS);
981740a59cbb2e Jiri Olsa      2024-10-15  6167  	if (!hash)
981740a59cbb2e Jiri Olsa      2024-10-15  6168  		return -ENOMEM;
981740a59cbb2e Jiri Olsa      2024-10-15  6169  
981740a59cbb2e Jiri Olsa      2024-10-15  6170  	if (add_hash_entry_direct(hash, ip, addr) == NULL)
981740a59cbb2e Jiri Olsa      2024-10-15  6171  		goto free_hash;
981740a59cbb2e Jiri Olsa      2024-10-15  6172  
981740a59cbb2e Jiri Olsa      2024-10-15  6173  	err = modify_ftrace_direct_nolock_hash(ops, hash);
981740a59cbb2e Jiri Olsa      2024-10-15  6174  
981740a59cbb2e Jiri Olsa      2024-10-15  6175   free_hash:
981740a59cbb2e Jiri Olsa      2024-10-15  6176  	free_ftrace_hash(hash);
981740a59cbb2e Jiri Olsa      2024-10-15  6177  	return err;
981740a59cbb2e Jiri Olsa      2024-10-15  6178  }
981740a59cbb2e Jiri Olsa      2024-10-15  6179  
f96f644ab97abe Song Liu       2022-07-19  6180  /**
da8bdfbd422333 Florent Revest 2023-03-21  6181   * modify_ftrace_direct - Modify an existing direct 'multi' call
f96f644ab97abe Song Liu       2022-07-19  6182   * to call something else
f96f644ab97abe Song Liu       2022-07-19  6183   * @ops: The address of the struct ftrace_ops object
c488fe4b50d896 Jiri Olsa      2024-09-30  6184   * @ip: The address of the function to attach
f96f644ab97abe Song Liu       2022-07-19  6185   * @addr: The address of the new trampoline to call at @ops functions
f96f644ab97abe Song Liu       2022-07-19  6186   *
f96f644ab97abe Song Liu       2022-07-19  6187   * This is used to unregister currently registered direct caller and
f96f644ab97abe Song Liu       2022-07-19  6188   * register new one @addr on functions registered in @ops object.
f96f644ab97abe Song Liu       2022-07-19  6189   *
f96f644ab97abe Song Liu       2022-07-19  6190   * Note there's window between ftrace_shutdown and ftrace_startup calls
f96f644ab97abe Song Liu       2022-07-19  6191   * where there will be no callbacks called.
f96f644ab97abe Song Liu       2022-07-19  6192   *
f96f644ab97abe Song Liu       2022-07-19  6193   * Returns: zero on success. Non zero on error, which includes:
f96f644ab97abe Song Liu       2022-07-19  6194   *  -EINVAL - The @ops object was not properly registered.
f96f644ab97abe Song Liu       2022-07-19  6195   */
981740a59cbb2e Jiri Olsa      2024-10-15  6196  int modify_ftrace_direct_hash(struct ftrace_ops *ops, struct ftrace_hash *hash)
f96f644ab97abe Song Liu       2022-07-19 @6197  {
f96f644ab97abe Song Liu       2022-07-19  6198  	int err;
f96f644ab97abe Song Liu       2022-07-19  6199  
f96f644ab97abe Song Liu       2022-07-19  6200  	if (check_direct_multi(ops))
f96f644ab97abe Song Liu       2022-07-19  6201  		return -EINVAL;
f96f644ab97abe Song Liu       2022-07-19  6202  	if (!(ops->flags & FTRACE_OPS_FL_ENABLED))
f96f644ab97abe Song Liu       2022-07-19  6203  		return -EINVAL;
c488fe4b50d896 Jiri Olsa      2024-09-30  6204  	if (direct_functions == EMPTY_HASH)
c488fe4b50d896 Jiri Olsa      2024-09-30  6205  		return -EINVAL;
f96f644ab97abe Song Liu       2022-07-19  6206  
f96f644ab97abe Song Liu       2022-07-19  6207  	mutex_lock(&direct_mutex);
981740a59cbb2e Jiri Olsa      2024-10-15  6208  	err = __modify_ftrace_direct(ops, hash);
ccf5a89efd6f0a Jiri Olsa      2021-10-08  6209  	mutex_unlock(&direct_mutex);
ccf5a89efd6f0a Jiri Olsa      2021-10-08  6210  	return err;
ccf5a89efd6f0a Jiri Olsa      2021-10-08  6211  }
da8bdfbd422333 Florent Revest 2023-03-21  6212  EXPORT_SYMBOL_GPL(modify_ftrace_direct);
981740a59cbb2e Jiri Olsa      2024-10-15  6213  

:::::: The code at line 6149 was first introduced by commit
:::::: f96f644ab97abeed3f7007c953836a574ce928cc ftrace: Add modify_ftrace_direct_multi_nolock

:::::: TO: Song Liu <song@kernel.org>
:::::: CC: Daniel Borkmann <daniel@iogearbox.net>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2024-10-23  7:57 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202410231555.ZGW6mgh1-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=jolsa@kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox