Hi Dmitry, kernel test robot noticed the following build warnings: [auto build test WARNING on openrisc/for-next] [also build test WARNING on powerpc/next powerpc/fixes s390/features uml/next jcmvbkbc-xtensa/xtensa-for-next arnd-asm-generic/master vgupta-arc/for-curr arm64/for-next/core linus/master uml/fixes tip/x86/core vgupta-arc/for-next v6.13-rc6 next-20250109] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Dmitry-V-Levin/Revert-arch-remove-unused-function-syscall_set_arguments/20250108-070658 base: https://github.com/openrisc/linux.git for-next patch link: https://lore.kernel.org/r/20250107230456.GE30633%40strace.io patch subject: [PATCH 5/6] ptrace: introduce PTRACE_SET_SYSCALL_INFO request config: mips-randconfig-r122-20250109 (https://download.01.org/0day-ci/archive/20250109/202501092150.9BH2s9AO-lkp@xxxxxxxxx/config) compiler: mips64-linux-gcc (GCC) 14.2.0 reproduce: (https://download.01.org/0day-ci/archive/20250109/202501092150.9BH2s9AO-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202501092150.9BH2s9AO-lkp@xxxxxxxxx/ sparse warnings: (new ones prefixed by >>) kernel/ptrace.c:55:22: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/ptrace.c:55:22: sparse: struct task_struct * kernel/ptrace.c:55:22: sparse: struct task_struct [noderef] __rcu * kernel/ptrace.c:74:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct [noderef] __rcu *parent @@ got struct task_struct *new_parent @@ kernel/ptrace.c:74:23: sparse: expected struct task_struct [noderef] __rcu *parent kernel/ptrace.c:74:23: sparse: got struct task_struct *new_parent kernel/ptrace.c:75:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct cred const [noderef] __rcu *ptracer_cred @@ got struct cred const * @@ kernel/ptrace.c:75:29: sparse: expected struct cred const [noderef] __rcu *ptracer_cred kernel/ptrace.c:75:29: sparse: got struct cred const * kernel/ptrace.c:129:18: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct cred const *old_cred @@ got struct cred const [noderef] __rcu *ptracer_cred @@ kernel/ptrace.c:129:18: sparse: expected struct cred const *old_cred kernel/ptrace.c:129:18: sparse: got struct cred const [noderef] __rcu *ptracer_cred kernel/ptrace.c:133:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:133:25: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:133:25: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:160:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:160:27: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:160:27: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:192:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:192:28: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:192:28: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:198:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:198:30: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:198:30: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:251:44: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/ptrace.c:251:44: sparse: struct task_struct [noderef] __rcu * kernel/ptrace.c:251:44: sparse: struct task_struct * kernel/ptrace.c:494:54: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *parent @@ got struct task_struct [noderef] __rcu *parent @@ kernel/ptrace.c:494:54: sparse: expected struct task_struct *parent kernel/ptrace.c:494:54: sparse: got struct task_struct [noderef] __rcu *parent kernel/ptrace.c:502:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected struct task_struct *new_parent @@ got struct task_struct [noderef] __rcu *real_parent @@ kernel/ptrace.c:502:53: sparse: expected struct task_struct *new_parent kernel/ptrace.c:502:53: sparse: got struct task_struct [noderef] __rcu *real_parent kernel/ptrace.c:550:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *p1 @@ got struct task_struct [noderef] __rcu *real_parent @@ kernel/ptrace.c:550:41: sparse: expected struct task_struct *p1 kernel/ptrace.c:550:41: sparse: got struct task_struct [noderef] __rcu *real_parent kernel/ptrace.c:552:50: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct sighand_struct *sigh @@ got struct sighand_struct [noderef] __rcu *sighand @@ kernel/ptrace.c:552:50: sparse: expected struct sighand_struct *sigh kernel/ptrace.c:552:50: sparse: got struct sighand_struct [noderef] __rcu *sighand kernel/ptrace.c:743:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:743:37: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:743:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:751:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:751:39: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:751:39: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:862:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:862:29: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:862:29: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:866:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:866:31: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:866:31: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:1206:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:1206:37: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:1206:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:1208:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:1208:39: sparse: expected struct spinlock [usertype] *lock kernel/ptrace.c:1208:39: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c: note: in included file (through include/linux/fwnode.h, include/linux/logic_pio.h, include/asm-generic/io.h, ...): include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates to true kernel/ptrace.c: note: in included file (through include/linux/rcuwait.h, include/linux/percpu-rwsem.h, include/linux/fs.h, ...): include/linux/sched/signal.h:751:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ include/linux/sched/signal.h:751:37: sparse: expected struct spinlock [usertype] *lock include/linux/sched/signal.h:751:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:380:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *l @@ got struct spinlock [noderef] __rcu * @@ kernel/ptrace.c:380:30: sparse: expected struct spinlock [usertype] *l kernel/ptrace.c:380:30: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:409:12: sparse: sparse: context imbalance in 'ptrace_attach' - different lock contexts for basic block kernel/ptrace.c:500:38: sparse: sparse: dereference of noderef expression kernel/ptrace.c: note: in included file (through include/linux/fwnode.h, include/linux/logic_pio.h, include/asm-generic/io.h, ...): include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates to true kernel/ptrace.c: note: in included file (through include/linux/rcuwait.h, include/linux/percpu-rwsem.h, include/linux/fs.h, ...): include/linux/sched/signal.h:751:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ include/linux/sched/signal.h:751:37: sparse: expected struct spinlock [usertype] *lock include/linux/sched/signal.h:751:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:690:9: sparse: sparse: context imbalance in 'ptrace_getsiginfo' - different lock contexts for basic block include/linux/sched/signal.h:751:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ include/linux/sched/signal.h:751:37: sparse: expected struct spinlock [usertype] *lock include/linux/sched/signal.h:751:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:706:9: sparse: sparse: context imbalance in 'ptrace_setsiginfo' - different lock contexts for basic block kernel/ptrace.c: note: in included file: arch/mips/include/asm/syscall.h:85:25: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const [noderef] __user *__p @@ got int * @@ arch/mips/include/asm/syscall.h:85:25: sparse: expected int const [noderef] __user *__p arch/mips/include/asm/syscall.h:85:25: sparse: got int * >> arch/mips/include/asm/syscall.h:121:25: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int [noderef] __user *__p @@ got int * @@ arch/mips/include/asm/syscall.h:121:25: sparse: expected int [noderef] __user *__p arch/mips/include/asm/syscall.h:121:25: sparse: got int * kernel/ptrace.c: note: in included file (through include/linux/rcuwait.h, include/linux/percpu-rwsem.h, include/linux/fs.h, ...): include/linux/sched/signal.h:751:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ include/linux/sched/signal.h:751:37: sparse: expected struct spinlock [usertype] *lock include/linux/sched/signal.h:751:37: sparse: got struct spinlock [noderef] __rcu * include/linux/sched/signal.h:751:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ include/linux/sched/signal.h:751:37: sparse: expected struct spinlock [usertype] *lock include/linux/sched/signal.h:751:37: sparse: got struct spinlock [noderef] __rcu * kernel/ptrace.c:1369:9: sparse: sparse: context imbalance in 'ptrace_request' - different lock contexts for basic block vim +121 arch/mips/include/asm/syscall.h 307e4cb2957c2f Dmitry V. Levin 2025-01-08 116 307e4cb2957c2f Dmitry V. Levin 2025-01-08 117 #ifdef CONFIG_64BIT 307e4cb2957c2f Dmitry V. Levin 2025-01-08 118 case 4: case 5: case 6: case 7: 307e4cb2957c2f Dmitry V. Levin 2025-01-08 119 #ifdef CONFIG_MIPS32_O32 307e4cb2957c2f Dmitry V. Levin 2025-01-08 120 if (test_tsk_thread_flag(task, TIF_32BIT_REGS)) 307e4cb2957c2f Dmitry V. Levin 2025-01-08 @121 put_user(*arg, (int *)usp + n); 307e4cb2957c2f Dmitry V. Levin 2025-01-08 122 else 307e4cb2957c2f Dmitry V. Levin 2025-01-08 123 #endif 307e4cb2957c2f Dmitry V. Levin 2025-01-08 124 regs->regs[4 + n] = *arg; 307e4cb2957c2f Dmitry V. Levin 2025-01-08 125 307e4cb2957c2f Dmitry V. Levin 2025-01-08 126 return; 307e4cb2957c2f Dmitry V. Levin 2025-01-08 127 #endif 307e4cb2957c2f Dmitry V. Levin 2025-01-08 128 } 307e4cb2957c2f Dmitry V. Levin 2025-01-08 129 } 307e4cb2957c2f Dmitry V. Levin 2025-01-08 130 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki