mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: "Thomas Weißschuh " <thomas.weissschuh@linutronix.de>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
	x86@kernel.org, Thomas Gleixner <tglx@kernel.org>
Subject: [tip:timers/vdso 10/18] kernel/sys.c:2878:1: warning: alias and aliasee have different types 'long (unsigned int  __attribute__((btf_type_tag("user")))*, unsigned int  __attribute__((btf_type_tag("user")))*, void  __attribute__((btf_type_tag("user")))*)' (aka 'long (unsigned int...
Date: Sat, 30 May 2026 11:33:50 +0800	[thread overview]
Message-ID: <202605301150.1I5lIDzd-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/vdso
head:   034779fb06aba5bc45faf366922bd77e4d36543a
commit: 7158fc54b2c6f124eec0d7cd13bff69da0172e59 [10/18] vdso: Remove struct getcpu_cache
config: loongarch-randconfig-r073-20260530 (https://download.01.org/0day-ci/archive/20260530/202605301150.1I5lIDzd-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 9409c07de6378507397ecdb6f05f628f58110112)
smatch: v0.5.0-9185-gbcc58b9c
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260530/202605301150.1I5lIDzd-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/202605301150.1I5lIDzd-lkp@intel.com/

All warnings (new ones prefixed by >>):

   kernel/sys.c:1793:1: warning: alias and aliasee have different types 'long (unsigned int, struct rlimit  __attribute__((btf_type_tag("user")))*)' (aka 'long (unsigned int, struct rlimit *)') and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned int)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned int)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((struct rlimit  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((struct rlimit  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long, long)') [-Wattribute-alias]
    1793 | SYSCALL_DEFINE2(setrlimit, unsigned int, resource, struct rlimit __user *, rlim)
         | ^
   include/linux/syscalls.h:226:36: note: expanded from macro 'SYSCALL_DEFINE2'
     226 | #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:1793:1: note: aliasee is declared here
   include/linux/syscalls.h:226:36: note: expanded from macro 'SYSCALL_DEFINE2'
     226 | #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:157:1: note: expanded from here
     157 | __se_sys_setrlimit
         | ^
   kernel/sys.c:1933:1: warning: alias and aliasee have different types 'long (int, struct rusage  __attribute__((btf_type_tag("user")))*)' (aka 'long (int, struct rusage *)') and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((int)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((int)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((struct rusage  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((struct rusage  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long, long)') [-Wattribute-alias]
    1933 | SYSCALL_DEFINE2(getrusage, int, who, struct rusage __user *, ru)
         | ^
   include/linux/syscalls.h:226:36: note: expanded from macro 'SYSCALL_DEFINE2'
     226 | #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:1933:1: note: aliasee is declared here
   include/linux/syscalls.h:226:36: note: expanded from macro 'SYSCALL_DEFINE2'
     226 | #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:21:1: note: expanded from here
      21 | __se_sys_getrusage
         | ^
   kernel/sys.c:1959:1: warning: alias and aliasee have different types 'long (int)' and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((int)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((int)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long)') [-Wattribute-alias]
    1959 | SYSCALL_DEFINE1(umask, int, mask)
         | ^
   include/linux/syscalls.h:225:36: note: expanded from macro 'SYSCALL_DEFINE1'
     225 | #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:1959:1: note: aliasee is declared here
   include/linux/syscalls.h:225:36: note: expanded from macro 'SYSCALL_DEFINE1'
     225 | #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:50:1: note: expanded from here
      50 | __se_sys_umask
         | ^
   kernel/sys.c:2517:1: warning: alias and aliasee have different types 'long (int, unsigned long, unsigned long, unsigned long, unsigned long)' and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((int)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((int)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned long)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long, long, long, long, long)') [-Wattribute-alias]
    2517 | SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3,
         | ^
   include/linux/syscalls.h:229:36: note: expanded from macro 'SYSCALL_DEFINE5'
     229 | #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:2517:1: note: aliasee is declared here
   include/linux/syscalls.h:229:36: note: expanded from macro 'SYSCALL_DEFINE5'
     229 | #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:113:1: note: expanded from here
     113 | __se_sys_prctl
         | ^
>> kernel/sys.c:2878:1: warning: alias and aliasee have different types 'long (unsigned int  __attribute__((btf_type_tag("user")))*, unsigned int  __attribute__((btf_type_tag("user")))*, void  __attribute__((btf_type_tag("user")))*)' (aka 'long (unsigned int *, unsigned int *, void *)') and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned int  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned int  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((unsigned int  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((unsigned int  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)), typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((void  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((void  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long, long, long)') [-Wattribute-alias]
    2878 | SYSCALL_DEFINE3(getcpu, unsigned __user *, cpup, unsigned __user *, nodep, void __user *, unused)
         | ^
   include/linux/syscalls.h:227:36: note: expanded from macro 'SYSCALL_DEFINE3'
     227 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:2878:1: note: aliasee is declared here
   include/linux/syscalls.h:227:36: note: expanded from macro 'SYSCALL_DEFINE3'
     227 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:31:1: note: expanded from here
      31 | __se_sys_getcpu
         | ^
   kernel/sys.c:2957:1: warning: alias and aliasee have different types 'long (struct sysinfo  __attribute__((btf_type_tag("user")))*)' (aka 'long (struct sysinfo *)') and 'long (typeof (__builtin_choose_expr((__builtin_types_compatible_p(typeof ((struct sysinfo  __attribute__((btf_type_tag("user")))*)0), typeof (0LL)) || __builtin_types_compatible_p(typeof ((struct sysinfo  __attribute__((btf_type_tag("user")))*)0), typeof (0ULL))), 0LL, 0L)))' (aka 'long (long)') [-Wattribute-alias]
    2957 | SYSCALL_DEFINE1(sysinfo, struct sysinfo __user *, info)
         | ^
   include/linux/syscalls.h:225:36: note: expanded from macro 'SYSCALL_DEFINE1'
     225 | #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:251:18: note: expanded from macro '__SYSCALL_DEFINEx'
     251 |                 __attribute__((alias(__stringify(__se_sys##name))));    \
         |                                ^
   kernel/sys.c:2957:1: note: aliasee is declared here
   include/linux/syscalls.h:225:36: note: expanded from macro 'SYSCALL_DEFINE1'
     225 | #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
         |                                    ^
   include/linux/syscalls.h:236:2: note: expanded from macro 'SYSCALL_DEFINEx'
     236 |         __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |         ^
   include/linux/syscalls.h:255:18: note: expanded from macro '__SYSCALL_DEFINEx'
     255 |         asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))  \
         |                         ^
   <scratch space>:170:1: note: expanded from here
     170 | __se_sys_sysinfo
         | ^
   27 warnings generated.


vim +2878 kernel/sys.c

  2877	
> 2878	SYSCALL_DEFINE3(getcpu, unsigned __user *, cpup, unsigned __user *, nodep, void __user *, unused)
  2879	{
  2880		int err = 0;
  2881		int cpu = raw_smp_processor_id();
  2882	
  2883		if (cpup)
  2884			err |= put_user(cpu, cpup);
  2885		if (nodep)
  2886			err |= put_user(cpu_to_node(cpu), nodep);
  2887		return err ? -EFAULT : 0;
  2888	}
  2889	

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

                 reply	other threads:[~2026-05-30  3:36 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202605301150.1I5lIDzd-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=tglx@kernel.org \
    --cc=thomas.weissschuh@linutronix.de \
    --cc=x86@kernel.org \
    /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

Powered by JetHome