public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
* [mark:arm64/entry/rework 2/11] include/linux/entry-common.h:324:2: error: call to undeclared function 'local_irq_disable_exit_to_user'; ISO C99 and later do not support implicit function declarations
@ 2026-04-02 11:48 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-04-02 11:48 UTC (permalink / raw)
  To: Mark Rutland; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git arm64/entry/rework
head:   1e10c666f8f7ec4524fd226186a6ae0ad495aad5
commit: be5c2d5a23beab5211c64f1237c238a1df622c47 [2/11] entry: Remove local_irq_{enable,disable}_exit_to_user()
config: x86_64-kexec (https://download.01.org/0day-ci/archive/20260402/202604021323.WS9SEJPr-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260402/202604021323.WS9SEJPr-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/202604021323.WS9SEJPr-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/x86/entry/syscall_64.c:8:
>> include/linux/entry-common.h:324:2: error: call to undeclared function 'local_irq_disable_exit_to_user'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     324 |         local_irq_disable_exit_to_user();
         |         ^
   1 error generated.


vim +/local_irq_disable_exit_to_user +324 include/linux/entry-common.h

c6156e1da633f2 Sven Schnelle     2020-12-01  288  
a9f3a74a29af09 Thomas Gleixner   2020-07-22  289  /**
a9f3a74a29af09 Thomas Gleixner   2020-07-22  290   * syscall_exit_to_user_mode - Handle work before returning to user mode
a9f3a74a29af09 Thomas Gleixner   2020-07-22  291   * @regs:	Pointer to currents pt_regs
a9f3a74a29af09 Thomas Gleixner   2020-07-22  292   *
e1647100c22eb7 Jinjie Ruan       2026-01-28  293   * Invoked with interrupts enabled and fully valid @regs. Returns with all
a9f3a74a29af09 Thomas Gleixner   2020-07-22  294   * work handled, interrupts disabled such that the caller can immediately
a9f3a74a29af09 Thomas Gleixner   2020-07-22  295   * switch to user mode. Called from architecture specific syscall and ret
a9f3a74a29af09 Thomas Gleixner   2020-07-22  296   * from fork code.
a9f3a74a29af09 Thomas Gleixner   2020-07-22  297   *
a9f3a74a29af09 Thomas Gleixner   2020-07-22  298   * The call order is:
a9f3a74a29af09 Thomas Gleixner   2020-07-22  299   *  1) One-time syscall exit work:
a9f3a74a29af09 Thomas Gleixner   2020-07-22  300   *	- rseq syscall exit
a9f3a74a29af09 Thomas Gleixner   2020-07-22  301   *      - audit
a9f3a74a29af09 Thomas Gleixner   2020-07-22  302   *	- syscall tracing
0cfcb2b9ef48bb Eric W. Biederman 2022-01-27  303   *	- ptrace (single stepping)
a9f3a74a29af09 Thomas Gleixner   2020-07-22  304   *
a9f3a74a29af09 Thomas Gleixner   2020-07-22  305   *  2) Preparatory work
e1647100c22eb7 Jinjie Ruan       2026-01-28  306   *	- Disable interrupts
a9f3a74a29af09 Thomas Gleixner   2020-07-22  307   *	- Exit to user mode loop (common TIF handling). Invokes
a9f3a74a29af09 Thomas Gleixner   2020-07-22  308   *	  arch_exit_to_user_mode_work() for architecture specific TIF work
a9f3a74a29af09 Thomas Gleixner   2020-07-22  309   *	- Architecture specific one time work arch_exit_to_user_mode_prepare()
a9f3a74a29af09 Thomas Gleixner   2020-07-22  310   *	- Address limit and lockdep checks
a9f3a74a29af09 Thomas Gleixner   2020-07-22  311   *
310de1a678b218 Sven Schnelle     2020-12-01  312   *  3) Final transition (lockdep, tracing, context tracking, RCU), i.e. the
310de1a678b218 Sven Schnelle     2020-12-01  313   *     functionality in exit_to_user_mode().
c6156e1da633f2 Sven Schnelle     2020-12-01  314   *
e1647100c22eb7 Jinjie Ruan       2026-01-28  315   * This is a combination of syscall_exit_to_user_mode_work() (1), disabling
e1647100c22eb7 Jinjie Ruan       2026-01-28  316   * interrupts followed by syscall_exit_to_user_mode_prepare() (2) and
e1647100c22eb7 Jinjie Ruan       2026-01-28  317   * exit_to_user_mode() (3). This function is preferred unless there is a
e1647100c22eb7 Jinjie Ruan       2026-01-28  318   * compelling architectural reason to invoke the functions separately.
a9f3a74a29af09 Thomas Gleixner   2020-07-22  319   */
e43b8bb56e537b Charlie Jenkins   2025-03-20  320  static __always_inline void syscall_exit_to_user_mode(struct pt_regs *regs)
e43b8bb56e537b Charlie Jenkins   2025-03-20  321  {
e43b8bb56e537b Charlie Jenkins   2025-03-20  322  	instrumentation_begin();
e43b8bb56e537b Charlie Jenkins   2025-03-20  323  	syscall_exit_to_user_mode_work(regs);
e1647100c22eb7 Jinjie Ruan       2026-01-28 @324  	local_irq_disable_exit_to_user();
e1647100c22eb7 Jinjie Ruan       2026-01-28  325  	syscall_exit_to_user_mode_prepare(regs);
e43b8bb56e537b Charlie Jenkins   2025-03-20  326  	instrumentation_end();
e43b8bb56e537b Charlie Jenkins   2025-03-20  327  	exit_to_user_mode();
e43b8bb56e537b Charlie Jenkins   2025-03-20  328  }
a9f3a74a29af09 Thomas Gleixner   2020-07-22  329  

:::::: The code at line 324 was first introduced by commit
:::::: e1647100c22eb718e9833211722cbb78e339047c entry: Rework syscall_exit_to_user_mode_work() for architecture reuse

:::::: TO: Jinjie Ruan <ruanjinjie@huawei.com>
:::::: CC: Thomas Gleixner <tglx@kernel.org>

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [mark:arm64/entry/rework 2/11] include/linux/entry-common.h:324:2: error: call to undeclared function 'local_irq_disable_exit_to_user'; ISO C99 and later do not support implicit function declarations
@ 2026-04-03  8:40 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-04-03  8:40 UTC (permalink / raw)
  To: Mark Rutland; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git arm64/entry/rework
head:   1e10c666f8f7ec4524fd226186a6ae0ad495aad5
commit: be5c2d5a23beab5211c64f1237c238a1df622c47 [2/11] entry: Remove local_irq_{enable,disable}_exit_to_user()
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20260402/202604022127.5B34nHEM-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260402/202604022127.5B34nHEM-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/202604022127.5B34nHEM-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/x86/entry/syscall_64.c:8:
>> include/linux/entry-common.h:324:2: error: call to undeclared function 'local_irq_disable_exit_to_user'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     324 |         local_irq_disable_exit_to_user();
         |         ^
   1 error generated.


vim +/local_irq_disable_exit_to_user +324 include/linux/entry-common.h

c6156e1da633f2 Sven Schnelle     2020-12-01  288  
a9f3a74a29af09 Thomas Gleixner   2020-07-22  289  /**
a9f3a74a29af09 Thomas Gleixner   2020-07-22  290   * syscall_exit_to_user_mode - Handle work before returning to user mode
a9f3a74a29af09 Thomas Gleixner   2020-07-22  291   * @regs:	Pointer to currents pt_regs
a9f3a74a29af09 Thomas Gleixner   2020-07-22  292   *
e1647100c22eb7 Jinjie Ruan       2026-01-28  293   * Invoked with interrupts enabled and fully valid @regs. Returns with all
a9f3a74a29af09 Thomas Gleixner   2020-07-22  294   * work handled, interrupts disabled such that the caller can immediately
a9f3a74a29af09 Thomas Gleixner   2020-07-22  295   * switch to user mode. Called from architecture specific syscall and ret
a9f3a74a29af09 Thomas Gleixner   2020-07-22  296   * from fork code.
a9f3a74a29af09 Thomas Gleixner   2020-07-22  297   *
a9f3a74a29af09 Thomas Gleixner   2020-07-22  298   * The call order is:
a9f3a74a29af09 Thomas Gleixner   2020-07-22  299   *  1) One-time syscall exit work:
a9f3a74a29af09 Thomas Gleixner   2020-07-22  300   *	- rseq syscall exit
a9f3a74a29af09 Thomas Gleixner   2020-07-22  301   *      - audit
a9f3a74a29af09 Thomas Gleixner   2020-07-22  302   *	- syscall tracing
0cfcb2b9ef48bb Eric W. Biederman 2022-01-27  303   *	- ptrace (single stepping)
a9f3a74a29af09 Thomas Gleixner   2020-07-22  304   *
a9f3a74a29af09 Thomas Gleixner   2020-07-22  305   *  2) Preparatory work
e1647100c22eb7 Jinjie Ruan       2026-01-28  306   *	- Disable interrupts
a9f3a74a29af09 Thomas Gleixner   2020-07-22  307   *	- Exit to user mode loop (common TIF handling). Invokes
a9f3a74a29af09 Thomas Gleixner   2020-07-22  308   *	  arch_exit_to_user_mode_work() for architecture specific TIF work
a9f3a74a29af09 Thomas Gleixner   2020-07-22  309   *	- Architecture specific one time work arch_exit_to_user_mode_prepare()
a9f3a74a29af09 Thomas Gleixner   2020-07-22  310   *	- Address limit and lockdep checks
a9f3a74a29af09 Thomas Gleixner   2020-07-22  311   *
310de1a678b218 Sven Schnelle     2020-12-01  312   *  3) Final transition (lockdep, tracing, context tracking, RCU), i.e. the
310de1a678b218 Sven Schnelle     2020-12-01  313   *     functionality in exit_to_user_mode().
c6156e1da633f2 Sven Schnelle     2020-12-01  314   *
e1647100c22eb7 Jinjie Ruan       2026-01-28  315   * This is a combination of syscall_exit_to_user_mode_work() (1), disabling
e1647100c22eb7 Jinjie Ruan       2026-01-28  316   * interrupts followed by syscall_exit_to_user_mode_prepare() (2) and
e1647100c22eb7 Jinjie Ruan       2026-01-28  317   * exit_to_user_mode() (3). This function is preferred unless there is a
e1647100c22eb7 Jinjie Ruan       2026-01-28  318   * compelling architectural reason to invoke the functions separately.
a9f3a74a29af09 Thomas Gleixner   2020-07-22  319   */
e43b8bb56e537b Charlie Jenkins   2025-03-20  320  static __always_inline void syscall_exit_to_user_mode(struct pt_regs *regs)
e43b8bb56e537b Charlie Jenkins   2025-03-20  321  {
e43b8bb56e537b Charlie Jenkins   2025-03-20  322  	instrumentation_begin();
e43b8bb56e537b Charlie Jenkins   2025-03-20  323  	syscall_exit_to_user_mode_work(regs);
e1647100c22eb7 Jinjie Ruan       2026-01-28 @324  	local_irq_disable_exit_to_user();
e1647100c22eb7 Jinjie Ruan       2026-01-28  325  	syscall_exit_to_user_mode_prepare(regs);
e43b8bb56e537b Charlie Jenkins   2025-03-20  326  	instrumentation_end();
e43b8bb56e537b Charlie Jenkins   2025-03-20  327  	exit_to_user_mode();
e43b8bb56e537b Charlie Jenkins   2025-03-20  328  }
a9f3a74a29af09 Thomas Gleixner   2020-07-22  329  

:::::: The code at line 324 was first introduced by commit
:::::: e1647100c22eb718e9833211722cbb78e339047c entry: Rework syscall_exit_to_user_mode_work() for architecture reuse

:::::: TO: Jinjie Ruan <ruanjinjie@huawei.com>
:::::: CC: Thomas Gleixner <tglx@kernel.org>

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-04-03  8:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-02 11:48 [mark:arm64/entry/rework 2/11] include/linux/entry-common.h:324:2: error: call to undeclared function 'local_irq_disable_exit_to_user'; ISO C99 and later do not support implicit function declarations kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2026-04-03  8:40 kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox