[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202512111003.5hulufeZ-lkp@intel.com>
Date: Thu, 11 Dec 2025 10:33:58 +0800
From: kernel test robot <lkp@...el.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
Frederic Weisbecker <frederic@...nel.org>
Subject: kernel/signal.c:1889:37: sparse: sparse: incorrect type in argument
1 (different address spaces)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8c8081cc599fcafa25371d50959c17e154f9fd08
commit: 68f99be287a59d50a9ad231d523f7e578f8bd28a signal: Confine POSIX_TIMERS properly
date: 1 year, 1 month ago
config: i386-randconfig-062-20251211 (https://download.01.org/0day-ci/archive/20251211/202512111003.5hulufeZ-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/20251211/202512111003.5hulufeZ-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512111003.5hulufeZ-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
kernel/signal.c: note: in included file (through arch/x86/include/uapi/asm/signal.h, arch/x86/include/asm/signal.h, include/uapi/linux/signal.h, ...):
include/uapi/asm-generic/signal-defs.h:83:29: sparse: sparse: multiple address spaces given
kernel/signal.c:188:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:188:31: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:188:31: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:191:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:191:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:191:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:473:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:473:9: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:473:9: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:477:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:477:34: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:477:34: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:499:53: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct k_sigaction *ka @@ got struct k_sigaction [noderef] __rcu * @@
kernel/signal.c:499:53: sparse: expected struct k_sigaction *ka
kernel/signal.c:499:53: sparse: got struct k_sigaction [noderef] __rcu *
include/uapi/asm-generic/signal-defs.h:83:29: sparse: sparse: multiple address spaces given
kernel/signal.c:595:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct lockdep_map const *lock @@ got struct lockdep_map [noderef] __rcu * @@
kernel/signal.c:595:9: sparse: expected struct lockdep_map const *lock
kernel/signal.c:595:9: sparse: got struct lockdep_map [noderef] __rcu *
kernel/signal.c:692:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct lockdep_map const *lock @@ got struct lockdep_map [noderef] __rcu * @@
kernel/signal.c:692:9: sparse: expected struct lockdep_map const *lock
kernel/signal.c:692:9: sparse: got struct lockdep_map [noderef] __rcu *
kernel/signal.c:817:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct lockdep_map const *lock @@ got struct lockdep_map [noderef] __rcu * @@
kernel/signal.c:817:9: sparse: expected struct lockdep_map const *lock
kernel/signal.c:817:9: sparse: got struct lockdep_map [noderef] __rcu *
kernel/signal.c:1012:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct lockdep_map const *lock @@ got struct lockdep_map [noderef] __rcu * @@
kernel/signal.c:1012:9: sparse: expected struct lockdep_map const *lock
kernel/signal.c:1012:9: sparse: got struct lockdep_map [noderef] __rcu *
kernel/signal.c:1203:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned char * @@
kernel/signal.c:1203:29: sparse: expected void const volatile [noderef] __user *ptr
kernel/signal.c:1203:29: sparse: got unsigned char *
kernel/signal.c:1264:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:1264:9: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:1264:9: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:1265:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct k_sigaction *action @@ got struct k_sigaction [noderef] __rcu * @@
kernel/signal.c:1265:16: sparse: expected struct k_sigaction *action
kernel/signal.c:1265:16: sparse: got struct k_sigaction [noderef] __rcu *
kernel/signal.c:1286:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:1286:34: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:1286:34: sparse: got struct spinlock [noderef] __rcu *
>> kernel/signal.c:1889:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *l @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:1889:37: sparse: expected struct spinlock [usertype] *l
kernel/signal.c:1889:37: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:1901:36: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:1901:36: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:1901:36: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2036:44: sparse: sparse: cast removes address space '__rcu' of expression
kernel/signal.c:2055:65: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *tsk @@ got struct task_struct [noderef] __rcu *parent @@
kernel/signal.c:2055:65: sparse: expected struct task_struct *tsk
kernel/signal.c:2055:65: sparse: got struct task_struct [noderef] __rcu *parent
kernel/signal.c:2056:40: sparse: sparse: cast removes address space '__rcu' of expression
kernel/signal.c:2074:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sighand_struct *psig @@ got struct sighand_struct [noderef] __rcu *[noderef] __rcu sighand @@
kernel/signal.c:2074:14: sparse: expected struct sighand_struct *psig
kernel/signal.c:2074:14: sparse: got struct sighand_struct [noderef] __rcu *[noderef] __rcu sighand
kernel/signal.c:2103:53: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected struct task_struct *t @@ got struct task_struct [noderef] __rcu *parent @@
kernel/signal.c:2103:53: sparse: expected struct task_struct *t
kernel/signal.c:2103:53: sparse: got struct task_struct [noderef] __rcu *parent
kernel/signal.c:2104:34: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected struct task_struct *parent @@ got struct task_struct [noderef] __rcu *parent @@
kernel/signal.c:2104:34: sparse: expected struct task_struct *parent
kernel/signal.c:2104:34: sparse: got struct task_struct [noderef] __rcu *parent
kernel/signal.c:2133:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *parent @@ got struct task_struct [noderef] __rcu *parent @@
kernel/signal.c:2133:24: sparse: expected struct task_struct *parent
kernel/signal.c:2133:24: sparse: got struct task_struct [noderef] __rcu *parent
kernel/signal.c:2136:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *parent @@ got struct task_struct [noderef] __rcu *real_parent @@
kernel/signal.c:2136:24: sparse: expected struct task_struct *parent
kernel/signal.c:2136:24: sparse: got struct task_struct [noderef] __rcu *real_parent
kernel/signal.c:2169:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sighand_struct *sighand @@ got struct sighand_struct [noderef] __rcu *sighand @@
kernel/signal.c:2169:17: sparse: expected struct sighand_struct *sighand
kernel/signal.c:2169:17: sparse: got struct sighand_struct [noderef] __rcu *sighand
kernel/signal.c:2209:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2209:41: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2209:41: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2211:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2211:39: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2211:39: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2268:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2268:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2268:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2326:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2326:31: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2326:31: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2366:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2366:31: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2366:31: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2368:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2368:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2368:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2466:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2466:41: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2466:41: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2550:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2550:41: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2550:41: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2562:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2562:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2562:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2605:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *tsk @@ got struct task_struct [noderef] __rcu *parent @@
kernel/signal.c:2605:52: sparse: expected struct task_struct *tsk
kernel/signal.c:2605:52: sparse: got struct task_struct [noderef] __rcu *parent
kernel/signal.c:2607:49: sparse: sparse: cast removes address space '__rcu' of expression
kernel/signal.c:2645:49: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct sighand_struct *sighand @@ got struct sighand_struct [noderef] __rcu *sighand @@
kernel/signal.c:2645:49: sparse: expected struct sighand_struct *sighand
kernel/signal.c:2645:49: sparse: got struct sighand_struct [noderef] __rcu *sighand
kernel/signal.c:2978:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2978:27: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2978:27: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:2999:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:2999:29: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:2999:29: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3066:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3066:27: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3066:27: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3068:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3068:29: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3068:29: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3219:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3219:31: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3219:31: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3222:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3222:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3222:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3611:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3611:27: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3611:27: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3623:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3623:37: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3623:37: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3628:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3628:35: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3628:35: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:3633:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:3633:29: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:3633:29: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:4109:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:4109:31: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:4109:31: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:4121:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/signal.c:4121:33: sparse: expected struct spinlock [usertype] *lock
kernel/signal.c:4121:33: sparse: got struct spinlock [noderef] __rcu *
kernel/signal.c:4139:11: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct k_sigaction *k @@ got struct k_sigaction [noderef] __rcu * @@
kernel/signal.c:4139:11: sparse: expected struct k_sigaction *k
vim +1889 kernel/signal.c
1884
1885 void flush_itimer_signals(void)
1886 {
1887 struct task_struct *tsk = current;
1888
> 1889 guard(spinlock_irqsave)(&tsk->sighand->siglock);
1890 __flush_itimer_signals(&tsk->pending);
1891 __flush_itimer_signals(&tsk->signal->shared_pending);
1892 }
1893
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists