From: Steven Rostedt <rostedt@goodmis.org>
To: kernel test robot <lkp@intel.com>
Cc: Ard Biesheuvel <ardb@kernel.org>,
llvm@lists.linux.dev, kbuild-all@lists.01.org,
Linux Memory Management List <linux-mm@kvack.org>
Subject: Re: [linux-next:master 4103/11953] arch/arm/kernel/ftrace.c:229:6: warning: no previous prototype for function 'prepare_ftrace_return'
Date: Thu, 10 Mar 2022 21:04:04 -0500 [thread overview]
Message-ID: <20220310210404.7c47aa47@gandalf.local.home> (raw)
In-Reply-To: <202203110903.3xDyTUVl-lkp@intel.com>
On Fri, 11 Mar 2022 09:44:11 +0800
kernel test robot <lkp@intel.com> wrote:
> Hi Ard,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head: 71941773e143369a73c9c4a3b62fbb60736a1182
> commit: 41918ec82eb6f80c8b401422f27ca76c85aa0cb7 [4103/11953] ARM: ftrace: enable the graph tracer with the EABI unwinder
> config: arm-aspeed_g4_defconfig (https://download.01.org/0day-ci/archive/20220311/202203110903.3xDyTUVl-lkp@intel.com/config)
> compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 276ca87382b8f16a65bddac700202924228982f6)
> 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 arm cross compiling tool for clang build
> # apt-get install binutils-arm-linux-gnueabi
> # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=41918ec82eb6f80c8b401422f27ca76c85aa0cb7
> git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
> git fetch --no-tags linux-next master
> git checkout 41918ec82eb6f80c8b401422f27ca76c85aa0cb7
> # save the config file to linux build tree
> mkdir build_dir
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash arch/arm/kernel/
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All warnings (new ones prefixed by >>):
>
> >> arch/arm/kernel/ftrace.c:229:6: warning: no previous prototype for function 'prepare_ftrace_return' [-Wmissing-prototypes]
> void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr,
> ^
> arch/arm/kernel/ftrace.c:229:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
> void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr,
> ^
> static
> 1 warning generated.
>
Hmm, this is only called from assembly code, which doesn't care about
prototypes. Is there a way to quiet this warning to say "this is called
only by assembly"?
Or do we just add a useless prototype to shut it up?
-- Steve
>
> vim +/prepare_ftrace_return +229 arch/arm/kernel/ftrace.c
>
> 376cfa8730c08c Tim Bird 2010-10-09 226
> 376cfa8730c08c Tim Bird 2010-10-09 227 #ifdef CONFIG_FUNCTION_GRAPH_TRACER
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 228 asmlinkage
> 376cfa8730c08c Tim Bird 2010-10-09 @229 void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 230 unsigned long frame_pointer,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 231 unsigned long stack_pointer)
> 376cfa8730c08c Tim Bird 2010-10-09 232 {
> 376cfa8730c08c Tim Bird 2010-10-09 233 unsigned long return_hooker = (unsigned long) &return_to_handler;
> 376cfa8730c08c Tim Bird 2010-10-09 234 unsigned long old;
> 376cfa8730c08c Tim Bird 2010-10-09 235
> 376cfa8730c08c Tim Bird 2010-10-09 236 if (unlikely(atomic_read(¤t->tracing_graph_pause)))
> 376cfa8730c08c Tim Bird 2010-10-09 237 return;
> 376cfa8730c08c Tim Bird 2010-10-09 238
> 953f534a7ed6b7 Ard Biesheuvel 2022-01-25 239 if (IS_ENABLED(CONFIG_UNWINDER_FRAME_POINTER)) {
> 953f534a7ed6b7 Ard Biesheuvel 2022-01-25 240 /* FP points one word below parent's top of stack */
> 953f534a7ed6b7 Ard Biesheuvel 2022-01-25 241 frame_pointer += 4;
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 242 } else {
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 243 struct stackframe frame = {
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 244 .fp = frame_pointer,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 245 .sp = stack_pointer,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 246 .lr = self_addr,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 247 .pc = self_addr,
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 248 };
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 249 if (unwind_frame(&frame) < 0)
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 250 return;
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 251 if (frame.lr != self_addr)
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 252 parent = frame.lr_addr;
> 41918ec82eb6f8 Ard Biesheuvel 2022-01-25 253 frame_pointer = frame.sp;
> 953f534a7ed6b7 Ard Biesheuvel 2022-01-25 254 }
> 953f534a7ed6b7 Ard Biesheuvel 2022-01-25 255
> 376cfa8730c08c Tim Bird 2010-10-09 256 old = *parent;
> 376cfa8730c08c Tim Bird 2010-10-09 257 *parent = return_hooker;
> 376cfa8730c08c Tim Bird 2010-10-09 258
> f1f5b14afd7cce Steven Rostedt (VMware 2018-11-18 259) if (function_graph_enter(old, self_addr, frame_pointer, NULL))
> 376cfa8730c08c Tim Bird 2010-10-09 260 *parent = old;
> 376cfa8730c08c Tim Bird 2010-10-09 261 }
> dd686eb13959e4 Rabin Vincent 2010-11-06 262
>
> :::::: The code at line 229 was first introduced by commit
> :::::: 376cfa8730c08c0394d0aa1d4a80fd8c9971f323 ARM: ftrace: function graph tracer support
>
> :::::: TO: Tim Bird <tim.bird@am.sony.com>
> :::::: CC: Rabin Vincent <rabin@rab.in>
>
> ---
> 0-DAY CI Kernel Test Service
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
next prev parent reply other threads:[~2022-03-11 2:04 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-11 1:44 kernel test robot
2022-03-11 2:04 ` Steven Rostedt [this message]
2022-03-18 2:24 ` [kbuild-all] " Chen, Rong A
2022-03-18 18:26 ` Nick Desaulniers
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=20220310210404.7c47aa47@gandalf.local.home \
--to=rostedt@goodmis.org \
--cc=ardb@kernel.org \
--cc=kbuild-all@lists.01.org \
--cc=linux-mm@kvack.org \
--cc=lkp@intel.com \
--cc=llvm@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