All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [tip:tmp.tmp2 308/364] include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
Date: Mon, 14 Jun 2021 07:18:04 +0800	[thread overview]
Message-ID: <202106140753.m5bLLcfs-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 32104 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tmp.tmp2
head:   adcceb5eb7aee38e4a9c15bdf599655f0e1b1324
commit: 120c6121adeaa43021433af501c9a1111c70d8f8 [308/364] sched/headers, compat: Simplify <linux/compat.h>
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=120c6121adeaa43021433af501c9a1111c70d8f8
        git remote add tip https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
        git fetch --no-tags tip tmp.tmp2
        git checkout 120c6121adeaa43021433af501c9a1111c70d8f8
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/hash.h: At top level:
   arch/powerpc/include/asm/book3s/64/hash.h:248:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'hash__vmemmap_create_mapping'
     248 | extern int __meminit hash__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/pgtable.h:297,
                    from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/radix.h:289:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'radix__vmemmap_create_mapping'
     289 | extern int __meminit radix__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/pgtable.h:1075:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vmemmap_create_mapping'
    1075 | static inline int __meminit vmemmap_create_mapping(unsigned long start,
         |                             ^~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/mmu.h:210:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'early_init_mmu'
     210 | static inline void __init early_init_mmu(void)
         |                           ^~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/sched.h:459:26: error: field 'irqtrace' has incomplete type
     459 |  struct irqtrace_events  irqtrace;
         |                          ^~~~~~~~
   include/linux/sched.h:475:20: error: array type has incomplete element type 'struct held_lock'
     475 |  struct held_lock  held_locks[MAX_LOCK_DEPTH];
         |                    ^~~~~~~~~~
   In file included from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/compat.h:42:2: error: unknown type name 'old_time32_t'
      42 |  old_time32_t st_atime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:44:2: error: unknown type name 'old_time32_t'
      44 |  old_time32_t st_mtime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:46:2: error: unknown type name 'old_time32_t'
      46 |  old_time32_t st_ctime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h: In function 'arch_compat_alloc_user_space':
   arch/powerpc/include/asm/compat.h:99:25: error: implicit declaration of function 'task_thread'; did you mean 'start_thread'? [-Werror=implicit-function-declaration]
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                         ^~~~~~~~~~~
         |                         start_thread
   arch/powerpc/include/asm/compat.h:99:45: error: request for member 'regs' in something not a structure or union
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                                             ^
   In file included from include/linux/thread_info.h:52,
                    from include/linux/uio.h:10,
                    from include/linux/socket.h:8,
                    from include/uapi/linux/if.h:25,
                    from include/linux/compat.h:9,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/thread_info.h:167:26: error: implicit declaration of function 'test_thread_flag'; did you mean 'test_thread_local_flags'? [-Werror=implicit-function-declaration]
     167 | #define is_32bit_task() (test_thread_flag(TIF_32BIT))
         |                          ^~~~~~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:107:7: note: in expansion of macro 'is_32bit_task'
     107 |  if (!is_32bit_task())
         |       ^~~~~~~~~~~~~
   In file included from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/compat.h: At top level:
   include/linux/compat.h:253:23: error: field 'ru_utime' has incomplete type
     253 |  struct old_timeval32 ru_utime;
         |                       ^~~~~~~~
   include/linux/compat.h:254:23: error: field 'ru_stime' has incomplete type
     254 |  struct old_timeval32 ru_stime;
         |                       ^~~~~~~~
   include/linux/compat.h: In function 'put_compat_sigset':
   include/linux/compat.h:431:9: error: implicit declaration of function 'copy_to_user'; did you mean 'copy_to_iter'? [-Werror=implicit-function-declaration]
     431 |  return copy_to_user(compat, &v, size) ? -EFAULT : 0;
         |         ^~~~~~~~~~~~
         |         copy_to_iter
   include/linux/compat.h: At top level:
>> include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     548 |      struct io_event __user *events,
         |             ^~~~~~~~
   include/linux/compat.h:554:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     554 |      struct io_event __user *events,
         |             ^~~~~~~~
>> include/linux/compat.h:838:18: warning: 'struct file_handle' declared inside parameter list will not be visible outside of this definition or declaration
     838 |           struct file_handle __user *handle,
         |                  ^~~~~~~~~~~
   include/linux/compat.h:847:51: error: unknown type name 'rwf_t'
     847 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:850:51: error: unknown type name 'rwf_t'
     850 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:940:36: error: return type is an incomplete type
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h: In function 'ns_to_old_timeval32':
   include/linux/compat.h:943:23: error: storage size of 'ctv' isn't known
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   include/linux/compat.h:945:7: error: implicit declaration of function 'ns_to_kernel_old_timeval' [-Werror=implicit-function-declaration]
     945 |  tv = ns_to_kernel_old_timeval(nsec);
         |       ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:945:7: error: incompatible types when assigning to type 'struct __kernel_old_timeval' from type 'int'
   include/linux/compat.h:949:9: error: 'return' with a value, in function returning void [-Werror=return-type]
     949 |  return ctv;
         |         ^~~
   include/linux/compat.h:940:36: note: declared here
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:943:23: warning: unused variable 'ctv' [-Wunused-variable]
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   In file included from <command-line>:
   include/asm-generic/preempt.h: In function 'preempt_count':
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
--
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/hash.h: At top level:
   arch/powerpc/include/asm/book3s/64/hash.h:248:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'hash__vmemmap_create_mapping'
     248 | extern int __meminit hash__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/pgtable.h:297,
                    from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/radix.h:289:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'radix__vmemmap_create_mapping'
     289 | extern int __meminit radix__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/pgtable.h:1075:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vmemmap_create_mapping'
    1075 | static inline int __meminit vmemmap_create_mapping(unsigned long start,
         |                             ^~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/mmu.h:210:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'early_init_mmu'
     210 | static inline void __init early_init_mmu(void)
         |                           ^~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/sched.h:459:26: error: field 'irqtrace' has incomplete type
     459 |  struct irqtrace_events  irqtrace;
         |                          ^~~~~~~~
   include/linux/sched.h:475:20: error: array type has incomplete element type 'struct held_lock'
     475 |  struct held_lock  held_locks[MAX_LOCK_DEPTH];
         |                    ^~~~~~~~~~
   In file included from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/compat.h:42:2: error: unknown type name 'old_time32_t'
      42 |  old_time32_t st_atime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:44:2: error: unknown type name 'old_time32_t'
      44 |  old_time32_t st_mtime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:46:2: error: unknown type name 'old_time32_t'
      46 |  old_time32_t st_ctime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h: In function 'arch_compat_alloc_user_space':
   arch/powerpc/include/asm/compat.h:99:25: error: implicit declaration of function 'task_thread'; did you mean 'start_thread'? [-Werror=implicit-function-declaration]
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                         ^~~~~~~~~~~
         |                         start_thread
   arch/powerpc/include/asm/compat.h:99:45: error: request for member 'regs' in something not a structure or union
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                                             ^
   In file included from include/linux/thread_info.h:52,
                    from include/linux/uio.h:10,
                    from include/linux/socket.h:8,
                    from include/uapi/linux/if.h:25,
                    from include/linux/compat.h:9,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/thread_info.h:167:26: error: implicit declaration of function 'test_thread_flag'; did you mean 'test_thread_local_flags'? [-Werror=implicit-function-declaration]
     167 | #define is_32bit_task() (test_thread_flag(TIF_32BIT))
         |                          ^~~~~~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:107:7: note: in expansion of macro 'is_32bit_task'
     107 |  if (!is_32bit_task())
         |       ^~~~~~~~~~~~~
   In file included from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/compat.h: At top level:
   include/linux/compat.h:253:23: error: field 'ru_utime' has incomplete type
     253 |  struct old_timeval32 ru_utime;
         |                       ^~~~~~~~
   include/linux/compat.h:254:23: error: field 'ru_stime' has incomplete type
     254 |  struct old_timeval32 ru_stime;
         |                       ^~~~~~~~
   include/linux/compat.h: In function 'put_compat_sigset':
   include/linux/compat.h:431:9: error: implicit declaration of function 'copy_to_user'; did you mean 'copy_to_iter'? [-Werror=implicit-function-declaration]
     431 |  return copy_to_user(compat, &v, size) ? -EFAULT : 0;
         |         ^~~~~~~~~~~~
         |         copy_to_iter
   include/linux/compat.h: At top level:
>> include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     548 |      struct io_event __user *events,
         |             ^~~~~~~~
   include/linux/compat.h:554:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     554 |      struct io_event __user *events,
         |             ^~~~~~~~
>> include/linux/compat.h:838:18: warning: 'struct file_handle' declared inside parameter list will not be visible outside of this definition or declaration
     838 |           struct file_handle __user *handle,
         |                  ^~~~~~~~~~~
   include/linux/compat.h:847:51: error: unknown type name 'rwf_t'
     847 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:850:51: error: unknown type name 'rwf_t'
     850 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:940:36: error: return type is an incomplete type
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h: In function 'ns_to_old_timeval32':
   include/linux/compat.h:943:23: error: storage size of 'ctv' isn't known
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   include/linux/compat.h:945:7: error: implicit declaration of function 'ns_to_kernel_old_timeval' [-Werror=implicit-function-declaration]
     945 |  tv = ns_to_kernel_old_timeval(nsec);
         |       ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:945:7: error: incompatible types when assigning to type 'struct __kernel_old_timeval' from type 'int'
   include/linux/compat.h:949:9: error: 'return' with a value, in function returning void [-Werror=return-type]
     949 |  return ctv;
         |         ^~~
   include/linux/compat.h:940:36: note: declared here
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:943:23: warning: unused variable 'ctv' [-Wunused-variable]
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   In file included from <command-line>:
   include/asm-generic/preempt.h: In function 'preempt_count':
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
..


vim +548 include/linux/compat.h

c679a08983db7c Dominik Brodowski 2018-03-25  527  
f6dfb4fd7dd944 Davide Libenzi    2007-03-07  528  /*
c679a08983db7c Dominik Brodowski 2018-03-25  529   * These syscall function prototypes are kept in the same order as
3e2052e5dd4062 Dominik Brodowski 2018-03-22  530   * include/uapi/asm-generic/unistd.h. Deprecated or obsolete system calls
3e2052e5dd4062 Dominik Brodowski 2018-03-22  531   * go below.
c679a08983db7c Dominik Brodowski 2018-03-25  532   *
c679a08983db7c Dominik Brodowski 2018-03-25  533   * Please note that these prototypes here are only provided for information
c679a08983db7c Dominik Brodowski 2018-03-25  534   * purposes, for static analysis, and for linking from the syscall table.
c679a08983db7c Dominik Brodowski 2018-03-25  535   * These functions should not be called elsewhere from kernel code.
7303e30ec1d8fb Dominik Brodowski 2018-04-05  536   *
7303e30ec1d8fb Dominik Brodowski 2018-04-05  537   * As the syscall calling convention may be different from the default
7303e30ec1d8fb Dominik Brodowski 2018-04-05  538   * for architectures overriding the syscall calling convention, do not
7303e30ec1d8fb Dominik Brodowski 2018-04-05  539   * include the prototypes if CONFIG_ARCH_HAS_SYSCALL_WRAPPER is enabled.
f6dfb4fd7dd944 Davide Libenzi    2007-03-07  540   */
7303e30ec1d8fb Dominik Brodowski 2018-04-05  541  #ifndef CONFIG_ARCH_HAS_SYSCALL_WRAPPER
c679a08983db7c Dominik Brodowski 2018-03-25  542  asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p);
c679a08983db7c Dominik Brodowski 2018-03-25  543  asmlinkage long compat_sys_io_submit(compat_aio_context_t ctx_id, int nr,
c679a08983db7c Dominik Brodowski 2018-03-25  544  				     u32 __user *iocb);
7a074e96dee625 Christoph Hellwig 2018-05-02  545  asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id,
7a074e96dee625 Christoph Hellwig 2018-05-02  546  					compat_long_t min_nr,
7a074e96dee625 Christoph Hellwig 2018-05-02  547  					compat_long_t nr,
7a074e96dee625 Christoph Hellwig 2018-05-02 @548  					struct io_event __user *events,
9afc5eee65ca7d Arnd Bergmann     2018-07-13  549  					struct old_timespec32 __user *timeout,
7a074e96dee625 Christoph Hellwig 2018-05-02  550  					const struct __compat_aio_sigset __user *usig);
7a35397f8c06bf Deepa Dinamani    2018-09-19  551  asmlinkage long compat_sys_io_pgetevents_time64(compat_aio_context_t ctx_id,
7a35397f8c06bf Deepa Dinamani    2018-09-19  552  					compat_long_t min_nr,
7a35397f8c06bf Deepa Dinamani    2018-09-19  553  					compat_long_t nr,
7a35397f8c06bf Deepa Dinamani    2018-09-19  554  					struct io_event __user *events,
7a35397f8c06bf Deepa Dinamani    2018-09-19  555  					struct __kernel_timespec __user *timeout,
7a35397f8c06bf Deepa Dinamani    2018-09-19  556  					const struct __compat_aio_sigset __user *usig);
c679a08983db7c Dominik Brodowski 2018-03-25  557  

:::::: The code at line 548 was first introduced by commit
:::::: 7a074e96dee62586c935c80cecd931431bfdd0be aio: implement io_pgetevents

:::::: TO: Christoph Hellwig <hch@lst.de>
:::::: CC: Christoph Hellwig <hch@lst.de>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 73414 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Ingo Molnar <mingo@kernel.org>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, x86@kernel.org
Subject: [tip:tmp.tmp2 308/364] include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
Date: Mon, 14 Jun 2021 07:18:04 +0800	[thread overview]
Message-ID: <202106140753.m5bLLcfs-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 31621 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tmp.tmp2
head:   adcceb5eb7aee38e4a9c15bdf599655f0e1b1324
commit: 120c6121adeaa43021433af501c9a1111c70d8f8 [308/364] sched/headers, compat: Simplify <linux/compat.h>
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=120c6121adeaa43021433af501c9a1111c70d8f8
        git remote add tip https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
        git fetch --no-tags tip tmp.tmp2
        git checkout 120c6121adeaa43021433af501c9a1111c70d8f8
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/hash.h: At top level:
   arch/powerpc/include/asm/book3s/64/hash.h:248:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'hash__vmemmap_create_mapping'
     248 | extern int __meminit hash__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/pgtable.h:297,
                    from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/radix.h:289:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'radix__vmemmap_create_mapping'
     289 | extern int __meminit radix__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/pgtable.h:1075:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vmemmap_create_mapping'
    1075 | static inline int __meminit vmemmap_create_mapping(unsigned long start,
         |                             ^~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/mmu.h:210:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'early_init_mmu'
     210 | static inline void __init early_init_mmu(void)
         |                           ^~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/sched.h:459:26: error: field 'irqtrace' has incomplete type
     459 |  struct irqtrace_events  irqtrace;
         |                          ^~~~~~~~
   include/linux/sched.h:475:20: error: array type has incomplete element type 'struct held_lock'
     475 |  struct held_lock  held_locks[MAX_LOCK_DEPTH];
         |                    ^~~~~~~~~~
   In file included from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/compat.h:42:2: error: unknown type name 'old_time32_t'
      42 |  old_time32_t st_atime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:44:2: error: unknown type name 'old_time32_t'
      44 |  old_time32_t st_mtime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:46:2: error: unknown type name 'old_time32_t'
      46 |  old_time32_t st_ctime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h: In function 'arch_compat_alloc_user_space':
   arch/powerpc/include/asm/compat.h:99:25: error: implicit declaration of function 'task_thread'; did you mean 'start_thread'? [-Werror=implicit-function-declaration]
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                         ^~~~~~~~~~~
         |                         start_thread
   arch/powerpc/include/asm/compat.h:99:45: error: request for member 'regs' in something not a structure or union
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                                             ^
   In file included from include/linux/thread_info.h:52,
                    from include/linux/uio.h:10,
                    from include/linux/socket.h:8,
                    from include/uapi/linux/if.h:25,
                    from include/linux/compat.h:9,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/thread_info.h:167:26: error: implicit declaration of function 'test_thread_flag'; did you mean 'test_thread_local_flags'? [-Werror=implicit-function-declaration]
     167 | #define is_32bit_task() (test_thread_flag(TIF_32BIT))
         |                          ^~~~~~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:107:7: note: in expansion of macro 'is_32bit_task'
     107 |  if (!is_32bit_task())
         |       ^~~~~~~~~~~~~
   In file included from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/compat.h: At top level:
   include/linux/compat.h:253:23: error: field 'ru_utime' has incomplete type
     253 |  struct old_timeval32 ru_utime;
         |                       ^~~~~~~~
   include/linux/compat.h:254:23: error: field 'ru_stime' has incomplete type
     254 |  struct old_timeval32 ru_stime;
         |                       ^~~~~~~~
   include/linux/compat.h: In function 'put_compat_sigset':
   include/linux/compat.h:431:9: error: implicit declaration of function 'copy_to_user'; did you mean 'copy_to_iter'? [-Werror=implicit-function-declaration]
     431 |  return copy_to_user(compat, &v, size) ? -EFAULT : 0;
         |         ^~~~~~~~~~~~
         |         copy_to_iter
   include/linux/compat.h: At top level:
>> include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     548 |      struct io_event __user *events,
         |             ^~~~~~~~
   include/linux/compat.h:554:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     554 |      struct io_event __user *events,
         |             ^~~~~~~~
>> include/linux/compat.h:838:18: warning: 'struct file_handle' declared inside parameter list will not be visible outside of this definition or declaration
     838 |           struct file_handle __user *handle,
         |                  ^~~~~~~~~~~
   include/linux/compat.h:847:51: error: unknown type name 'rwf_t'
     847 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:850:51: error: unknown type name 'rwf_t'
     850 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:940:36: error: return type is an incomplete type
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h: In function 'ns_to_old_timeval32':
   include/linux/compat.h:943:23: error: storage size of 'ctv' isn't known
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   include/linux/compat.h:945:7: error: implicit declaration of function 'ns_to_kernel_old_timeval' [-Werror=implicit-function-declaration]
     945 |  tv = ns_to_kernel_old_timeval(nsec);
         |       ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:945:7: error: incompatible types when assigning to type 'struct __kernel_old_timeval' from type 'int'
   include/linux/compat.h:949:9: error: 'return' with a value, in function returning void [-Werror=return-type]
     949 |  return ctv;
         |         ^~~
   include/linux/compat.h:940:36: note: declared here
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:943:23: warning: unused variable 'ctv' [-Wunused-variable]
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   In file included from <command-line>:
   include/asm-generic/preempt.h: In function 'preempt_count':
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
--
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/hash.h: At top level:
   arch/powerpc/include/asm/book3s/64/hash.h:248:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'hash__vmemmap_create_mapping'
     248 | extern int __meminit hash__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/pgtable.h:297,
                    from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/radix.h:289:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'radix__vmemmap_create_mapping'
     289 | extern int __meminit radix__vmemmap_create_mapping(unsigned long start,
         |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                    from arch/powerpc/include/asm/book3s/64/mmu.h:31,
                    from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/pgtable.h:1075:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'vmemmap_create_mapping'
    1075 | static inline int __meminit vmemmap_create_mapping(unsigned long start,
         |                             ^~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/mmu.h:402,
                    from arch/powerpc/include/asm/lppaca.h:46,
                    from arch/powerpc/include/asm/paca.h:17,
                    from arch/powerpc/include/asm/current.h:13,
                    from include/linux/sched.h:18,
                    from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/book3s/64/mmu.h:210:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'early_init_mmu'
     210 | static inline void __init early_init_mmu(void)
         |                           ^~~~~~~~~~~~~~
   In file included from arch/powerpc/include/asm/compat.h:9,
                    from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/sched.h:459:26: error: field 'irqtrace' has incomplete type
     459 |  struct irqtrace_events  irqtrace;
         |                          ^~~~~~~~
   include/linux/sched.h:475:20: error: array type has incomplete element type 'struct held_lock'
     475 |  struct held_lock  held_locks[MAX_LOCK_DEPTH];
         |                    ^~~~~~~~~~
   In file included from include/linux/compat.h:10,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/compat.h:42:2: error: unknown type name 'old_time32_t'
      42 |  old_time32_t st_atime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:44:2: error: unknown type name 'old_time32_t'
      44 |  old_time32_t st_mtime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:46:2: error: unknown type name 'old_time32_t'
      46 |  old_time32_t st_ctime;
         |  ^~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h: In function 'arch_compat_alloc_user_space':
   arch/powerpc/include/asm/compat.h:99:25: error: implicit declaration of function 'task_thread'; did you mean 'start_thread'? [-Werror=implicit-function-declaration]
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                         ^~~~~~~~~~~
         |                         start_thread
   arch/powerpc/include/asm/compat.h:99:45: error: request for member 'regs' in something not a structure or union
      99 |  struct pt_regs *regs = task_thread(current).regs;
         |                                             ^
   In file included from include/linux/thread_info.h:52,
                    from include/linux/uio.h:10,
                    from include/linux/socket.h:8,
                    from include/uapi/linux/if.h:25,
                    from include/linux/compat.h:9,
                    from arch/powerpc/kernel/asm-offsets.c:14:
   arch/powerpc/include/asm/thread_info.h:167:26: error: implicit declaration of function 'test_thread_flag'; did you mean 'test_thread_local_flags'? [-Werror=implicit-function-declaration]
     167 | #define is_32bit_task() (test_thread_flag(TIF_32BIT))
         |                          ^~~~~~~~~~~~~~~~
   arch/powerpc/include/asm/compat.h:107:7: note: in expansion of macro 'is_32bit_task'
     107 |  if (!is_32bit_task())
         |       ^~~~~~~~~~~~~
   In file included from arch/powerpc/kernel/asm-offsets.c:14:
   include/linux/compat.h: At top level:
   include/linux/compat.h:253:23: error: field 'ru_utime' has incomplete type
     253 |  struct old_timeval32 ru_utime;
         |                       ^~~~~~~~
   include/linux/compat.h:254:23: error: field 'ru_stime' has incomplete type
     254 |  struct old_timeval32 ru_stime;
         |                       ^~~~~~~~
   include/linux/compat.h: In function 'put_compat_sigset':
   include/linux/compat.h:431:9: error: implicit declaration of function 'copy_to_user'; did you mean 'copy_to_iter'? [-Werror=implicit-function-declaration]
     431 |  return copy_to_user(compat, &v, size) ? -EFAULT : 0;
         |         ^~~~~~~~~~~~
         |         copy_to_iter
   include/linux/compat.h: At top level:
>> include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     548 |      struct io_event __user *events,
         |             ^~~~~~~~
   include/linux/compat.h:554:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration
     554 |      struct io_event __user *events,
         |             ^~~~~~~~
>> include/linux/compat.h:838:18: warning: 'struct file_handle' declared inside parameter list will not be visible outside of this definition or declaration
     838 |           struct file_handle __user *handle,
         |                  ^~~~~~~~~~~
   include/linux/compat.h:847:51: error: unknown type name 'rwf_t'
     847 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:850:51: error: unknown type name 'rwf_t'
     850 |   compat_ulong_t vlen, u32 pos_low, u32 pos_high, rwf_t flags);
         |                                                   ^~~~~
   include/linux/compat.h:940:36: error: return type is an incomplete type
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h: In function 'ns_to_old_timeval32':
   include/linux/compat.h:943:23: error: storage size of 'ctv' isn't known
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   include/linux/compat.h:945:7: error: implicit declaration of function 'ns_to_kernel_old_timeval' [-Werror=implicit-function-declaration]
     945 |  tv = ns_to_kernel_old_timeval(nsec);
         |       ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:945:7: error: incompatible types when assigning to type 'struct __kernel_old_timeval' from type 'int'
   include/linux/compat.h:949:9: error: 'return' with a value, in function returning void [-Werror=return-type]
     949 |  return ctv;
         |         ^~~
   include/linux/compat.h:940:36: note: declared here
     940 | static inline struct old_timeval32 ns_to_old_timeval32(s64 nsec)
         |                                    ^~~~~~~~~~~~~~~~~~~
   include/linux/compat.h:943:23: warning: unused variable 'ctv' [-Wunused-variable]
     943 |  struct old_timeval32 ctv;
         |                       ^~~
   In file included from <command-line>:
   include/asm-generic/preempt.h: In function 'preempt_count':
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
     328 |  _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |  ^~~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |  ^~~~~~~~~~~~~~~~~~
   include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
      36 |  compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
         |                     ^~~~~~~~~~~~~
   include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
      49 |  compiletime_assert_rwonce_type(x);    \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/preempt.h:11:9: note: in expansion of macro 'READ_ONCE'
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |         ^~~~~~~~~
   include/asm-generic/preempt.h:11:40: error: invalid type argument of '->' (have 'int')
      11 |  return READ_ONCE(current_thread_info()->preempt_count);
         |                                        ^~
   include/linux/compiler_types.h:308:9: note: in definition of macro '__compiletime_assert'
     308 |   if (!(condition))     \
         |         ^~~~~~~~~
   include/linux/compiler_types.h:328:2: note: in expansion of macro '_compiletime_assert'
..


vim +548 include/linux/compat.h

c679a08983db7c Dominik Brodowski 2018-03-25  527  
f6dfb4fd7dd944 Davide Libenzi    2007-03-07  528  /*
c679a08983db7c Dominik Brodowski 2018-03-25  529   * These syscall function prototypes are kept in the same order as
3e2052e5dd4062 Dominik Brodowski 2018-03-22  530   * include/uapi/asm-generic/unistd.h. Deprecated or obsolete system calls
3e2052e5dd4062 Dominik Brodowski 2018-03-22  531   * go below.
c679a08983db7c Dominik Brodowski 2018-03-25  532   *
c679a08983db7c Dominik Brodowski 2018-03-25  533   * Please note that these prototypes here are only provided for information
c679a08983db7c Dominik Brodowski 2018-03-25  534   * purposes, for static analysis, and for linking from the syscall table.
c679a08983db7c Dominik Brodowski 2018-03-25  535   * These functions should not be called elsewhere from kernel code.
7303e30ec1d8fb Dominik Brodowski 2018-04-05  536   *
7303e30ec1d8fb Dominik Brodowski 2018-04-05  537   * As the syscall calling convention may be different from the default
7303e30ec1d8fb Dominik Brodowski 2018-04-05  538   * for architectures overriding the syscall calling convention, do not
7303e30ec1d8fb Dominik Brodowski 2018-04-05  539   * include the prototypes if CONFIG_ARCH_HAS_SYSCALL_WRAPPER is enabled.
f6dfb4fd7dd944 Davide Libenzi    2007-03-07  540   */
7303e30ec1d8fb Dominik Brodowski 2018-04-05  541  #ifndef CONFIG_ARCH_HAS_SYSCALL_WRAPPER
c679a08983db7c Dominik Brodowski 2018-03-25  542  asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p);
c679a08983db7c Dominik Brodowski 2018-03-25  543  asmlinkage long compat_sys_io_submit(compat_aio_context_t ctx_id, int nr,
c679a08983db7c Dominik Brodowski 2018-03-25  544  				     u32 __user *iocb);
7a074e96dee625 Christoph Hellwig 2018-05-02  545  asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id,
7a074e96dee625 Christoph Hellwig 2018-05-02  546  					compat_long_t min_nr,
7a074e96dee625 Christoph Hellwig 2018-05-02  547  					compat_long_t nr,
7a074e96dee625 Christoph Hellwig 2018-05-02 @548  					struct io_event __user *events,
9afc5eee65ca7d Arnd Bergmann     2018-07-13  549  					struct old_timespec32 __user *timeout,
7a074e96dee625 Christoph Hellwig 2018-05-02  550  					const struct __compat_aio_sigset __user *usig);
7a35397f8c06bf Deepa Dinamani    2018-09-19  551  asmlinkage long compat_sys_io_pgetevents_time64(compat_aio_context_t ctx_id,
7a35397f8c06bf Deepa Dinamani    2018-09-19  552  					compat_long_t min_nr,
7a35397f8c06bf Deepa Dinamani    2018-09-19  553  					compat_long_t nr,
7a35397f8c06bf Deepa Dinamani    2018-09-19  554  					struct io_event __user *events,
7a35397f8c06bf Deepa Dinamani    2018-09-19  555  					struct __kernel_timespec __user *timeout,
7a35397f8c06bf Deepa Dinamani    2018-09-19  556  					const struct __compat_aio_sigset __user *usig);
c679a08983db7c Dominik Brodowski 2018-03-25  557  

:::::: The code at line 548 was first introduced by commit
:::::: 7a074e96dee62586c935c80cecd931431bfdd0be aio: implement io_pgetevents

:::::: TO: Christoph Hellwig <hch@lst.de>
:::::: CC: Christoph Hellwig <hch@lst.de>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 73414 bytes --]

             reply	other threads:[~2021-06-13 23:18 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-13 23:18 kernel test robot [this message]
2021-06-13 23:18 ` [tip:tmp.tmp2 308/364] include/linux/compat.h:548:13: warning: 'struct io_event' declared inside parameter list will not be visible outside of this definition or declaration 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=202106140753.m5bLLcfs-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.