From: kernel test robot <lkp@intel.com>
To: Mark Rutland <mark.rutland@arm.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [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
Date: Thu, 02 Apr 2026 13:48:28 +0200 [thread overview]
Message-ID: <202604021323.WS9SEJPr-lkp@intel.com> (raw)
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
next reply other threads:[~2026-04-02 11:49 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-02 11:48 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-04-03 8:40 [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
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=202604021323.WS9SEJPr-lkp@intel.com \
--to=lkp@intel.com \
--cc=llvm@lists.linux.dev \
--cc=mark.rutland@arm.com \
--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