All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Gaosheng Cui <cuigaosheng1@huawei.com>,
	catalin.marinas@arm.com, will@kernel.org, broonie@kernel.org,
	pcc@google.com, mark.rutland@arm.com, keescook@chromium.org,
	daniel.kiss@arm.com
Cc: kbuild-all@lists.01.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, wangweiyang2@huawei.com,
	gongruiqi1@huawei.com
Subject: Re: [PATCH -next] arm64: add missing header dependencies
Date: Fri, 13 May 2022 10:57:48 +0800	[thread overview]
Message-ID: <202205131035.qIYEFTpo-lkp@intel.com> (raw)
In-Reply-To: <20220509061751.3434059-1-cuigaosheng1@huawei.com>

Hi Gaosheng,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on next-20220506]

url:    https://github.com/intel-lab-lkp/linux/commits/Gaosheng-Cui/arm64-add-missing-header-dependencies/20220509-142946
base:    38a288f5941ef03752887ad86f2d85442358c99a
config: arm64-allyesconfig (https://download.01.org/0day-ci/archive/20220513/202205131035.qIYEFTpo-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 11.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://github.com/intel-lab-lkp/linux/commit/05d29bfe89ad4e7205d77fcdd8199dd6544ff784
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Gaosheng-Cui/arm64-add-missing-header-dependencies/20220509-142946
        git checkout 05d29bfe89ad4e7205d77fcdd8199dd6544ff784
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=arm64 prepare

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

All error/warnings (new ones prefixed by >>):

   scripts/genksyms/parse.y: warning: 9 shift/reduce conflicts [-Wconflicts-sr]
   scripts/genksyms/parse.y: warning: 5 reduce/reduce conflicts [-Wconflicts-rr]
   scripts/genksyms/parse.y: note: rerun with option '-Wcounterexamples' to generate conflict counterexamples
   In file included from include/linux/ipc.h:7,
                    from include/uapi/linux/sem.h:5,
                    from include/linux/sem.h:5,
                    from include/linux/sched.h:15,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> include/linux/rhashtable-types.h:88:41: error: field 'mutex' has incomplete type
      88 |         struct mutex                    mutex;
         |                                         ^~~~~
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h: In function '__seqprop_mutex_sequence':
>> include/linux/seqlock.h:277:86: error: implicit declaration of function 'mutex_lock' [-Werror=implicit-function-declaration]
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                                      ^~~~~~~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
>> include/linux/seqlock.h:277:76: error: implicit declaration of function 'mutex_unlock'; did you mean 'write_unlock'? [-Werror=implicit-function-declaration]
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                            ^~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   include/linux/seqlock.h: In function '__seqprop_mutex_assert':
>> include/linux/lockdep.h:282:61: error: invalid use of undefined type 'struct mutex'
     282 | #define lockdep_is_held(lock)           lock_is_held(&(lock)->dep_map)
         |                                                             ^~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/lockdep.h:306:14: note: in expansion of macro 'WARN_ON'
     306 |         do { WARN_ON(debug_locks && !(cond)); } while (0)
         |              ^~~~~~~
   include/linux/lockdep.h:312:9: note: in expansion of macro 'lockdep_assert'
     312 |         lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD)
         |         ^~~~~~~~~~~~~~
   include/linux/lockdep.h:312:24: note: in expansion of macro 'lockdep_is_held'
     312 |         lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD)
         |                        ^~~~~~~~~~~~~~~
   include/linux/seqlock.h:245:20: note: in expansion of macro 'lockdep_assert_held'
     245 |         __SEQ_LOCK(lockdep_assert_held(lockmember));                    \
         |                    ^~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   include/linux/seqlock.h: In function 'read_seqbegin':
>> include/linux/seqlock.h:330:17: error: implicit declaration of function 'cpu_relax' [-Werror=implicit-function-declaration]
     330 |                 cpu_relax();                                            \
         |                 ^~~~~~~~~
   include/linux/seqlock.h:344:25: note: in expansion of macro '__read_seqcount_begin'
     344 |         unsigned _seq = __read_seqcount_begin(s);                       \
         |                         ^~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:359:9: note: in expansion of macro 'raw_read_seqcount_begin'
     359 |         raw_read_seqcount_begin(s);                                     \
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:836:24: note: in expansion of macro 'read_seqcount_begin'
     836 |         unsigned ret = read_seqcount_begin(&sl->seqcount);
         |                        ^~~~~~~~~~~~~~~~~~~
   In file included from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/sched.h: At top level:
>> include/linux/sched.h:1227:41: error: field 'futex_exit_mutex' has incomplete type
    1227 |         struct mutex                    futex_exit_mutex;
         |                                         ^~~~~~~~~~~~~~~~
>> include/linux/sched.h:1232:41: error: field 'perf_event_mutex' has incomplete type
    1232 |         struct mutex                    perf_event_mutex;
         |                                         ^~~~~~~~~~~~~~~~
>> include/linux/sched.h:1512:41: error: field 'thread' has incomplete type
    1512 |         struct thread_struct            thread;
         |                                         ^~~~~~
   In file included from include/vdso/processor.h:10,
                    from arch/arm64/include/asm/processor.h:36,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/vdso/processor.h:10:20: warning: conflicting types for 'cpu_relax'; have 'void(void)'
      10 | static inline void cpu_relax(void)
         |                    ^~~~~~~~~
>> arch/arm64/include/asm/vdso/processor.h:10:20: error: static declaration of 'cpu_relax' follows non-static declaration
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h:330:17: note: previous implicit declaration of 'cpu_relax' with type 'void(void)'
     330 |                 cpu_relax();                                            \
         |                 ^~~~~~~~~
   include/linux/seqlock.h:344:25: note: in expansion of macro '__read_seqcount_begin'
     344 |         unsigned _seq = __read_seqcount_begin(s);                       \
         |                         ^~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:359:9: note: in expansion of macro 'raw_read_seqcount_begin'
     359 |         raw_read_seqcount_begin(s);                                     \
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:836:24: note: in expansion of macro 'read_seqcount_begin'
     836 |         unsigned ret = read_seqcount_begin(&sl->seqcount);
         |                        ^~~~~~~~~~~~~~~~~~~
   In file included from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/processor.h:70: warning: "TASK_SIZE_OF" redefined
      70 | #define TASK_SIZE_OF(tsk)       (test_tsk_thread_flag(tsk, TIF_32BIT) ? \
         | 
   In file included from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/sched.h:2248: note: this is the location of the previous definition
    2248 | #define TASK_SIZE_OF(tsk)       TASK_SIZE
         | 
   In file included from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> include/linux/mutex.h:218:13: warning: conflicting types for 'mutex_unlock'; have 'void(struct mutex *)'
     218 | extern void mutex_unlock(struct mutex *lock);
         |             ^~~~~~~~~~~~
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h:277:76: note: previous implicit declaration of 'mutex_unlock' with type 'void(struct mutex *)'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                            ^~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
   make[2]: *** [scripts/Makefile.build:122: arch/arm64/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [Makefile:1284: prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [Makefile:226: __sub-make] Error 2
   make: Target 'prepare' not remade because of errors.


vim +/cpu_relax +10 arch/arm64/include/asm/vdso/processor.h

f511e079177a9b Vincenzo Frascino 2020-03-20   9  
f511e079177a9b Vincenzo Frascino 2020-03-20 @10  static inline void cpu_relax(void)
f511e079177a9b Vincenzo Frascino 2020-03-20  11  {
f511e079177a9b Vincenzo Frascino 2020-03-20  12  	asm volatile("yield" ::: "memory");
f511e079177a9b Vincenzo Frascino 2020-03-20  13  }
f511e079177a9b Vincenzo Frascino 2020-03-20  14  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Gaosheng Cui <cuigaosheng1@huawei.com>,
	catalin.marinas@arm.com, will@kernel.org, broonie@kernel.org,
	pcc@google.com, mark.rutland@arm.com, keescook@chromium.org,
	daniel.kiss@arm.com
Cc: kbuild-all@lists.01.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, wangweiyang2@huawei.com,
	gongruiqi1@huawei.com
Subject: Re: [PATCH -next] arm64: add missing header dependencies
Date: Fri, 13 May 2022 10:57:48 +0800	[thread overview]
Message-ID: <202205131035.qIYEFTpo-lkp@intel.com> (raw)
In-Reply-To: <20220509061751.3434059-1-cuigaosheng1@huawei.com>

Hi Gaosheng,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on next-20220506]

url:    https://github.com/intel-lab-lkp/linux/commits/Gaosheng-Cui/arm64-add-missing-header-dependencies/20220509-142946
base:    38a288f5941ef03752887ad86f2d85442358c99a
config: arm64-allyesconfig (https://download.01.org/0day-ci/archive/20220513/202205131035.qIYEFTpo-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 11.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://github.com/intel-lab-lkp/linux/commit/05d29bfe89ad4e7205d77fcdd8199dd6544ff784
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Gaosheng-Cui/arm64-add-missing-header-dependencies/20220509-142946
        git checkout 05d29bfe89ad4e7205d77fcdd8199dd6544ff784
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=arm64 prepare

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

All error/warnings (new ones prefixed by >>):

   scripts/genksyms/parse.y: warning: 9 shift/reduce conflicts [-Wconflicts-sr]
   scripts/genksyms/parse.y: warning: 5 reduce/reduce conflicts [-Wconflicts-rr]
   scripts/genksyms/parse.y: note: rerun with option '-Wcounterexamples' to generate conflict counterexamples
   In file included from include/linux/ipc.h:7,
                    from include/uapi/linux/sem.h:5,
                    from include/linux/sem.h:5,
                    from include/linux/sched.h:15,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> include/linux/rhashtable-types.h:88:41: error: field 'mutex' has incomplete type
      88 |         struct mutex                    mutex;
         |                                         ^~~~~
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h: In function '__seqprop_mutex_sequence':
>> include/linux/seqlock.h:277:86: error: implicit declaration of function 'mutex_lock' [-Werror=implicit-function-declaration]
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                                      ^~~~~~~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
>> include/linux/seqlock.h:277:76: error: implicit declaration of function 'mutex_unlock'; did you mean 'write_unlock'? [-Werror=implicit-function-declaration]
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                            ^~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   include/linux/seqlock.h: In function '__seqprop_mutex_assert':
>> include/linux/lockdep.h:282:61: error: invalid use of undefined type 'struct mutex'
     282 | #define lockdep_is_held(lock)           lock_is_held(&(lock)->dep_map)
         |                                                             ^~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/lockdep.h:306:14: note: in expansion of macro 'WARN_ON'
     306 |         do { WARN_ON(debug_locks && !(cond)); } while (0)
         |              ^~~~~~~
   include/linux/lockdep.h:312:9: note: in expansion of macro 'lockdep_assert'
     312 |         lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD)
         |         ^~~~~~~~~~~~~~
   include/linux/lockdep.h:312:24: note: in expansion of macro 'lockdep_is_held'
     312 |         lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD)
         |                        ^~~~~~~~~~~~~~~
   include/linux/seqlock.h:245:20: note: in expansion of macro 'lockdep_assert_held'
     245 |         __SEQ_LOCK(lockdep_assert_held(lockmember));                    \
         |                    ^~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   include/linux/seqlock.h: In function 'read_seqbegin':
>> include/linux/seqlock.h:330:17: error: implicit declaration of function 'cpu_relax' [-Werror=implicit-function-declaration]
     330 |                 cpu_relax();                                            \
         |                 ^~~~~~~~~
   include/linux/seqlock.h:344:25: note: in expansion of macro '__read_seqcount_begin'
     344 |         unsigned _seq = __read_seqcount_begin(s);                       \
         |                         ^~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:359:9: note: in expansion of macro 'raw_read_seqcount_begin'
     359 |         raw_read_seqcount_begin(s);                                     \
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:836:24: note: in expansion of macro 'read_seqcount_begin'
     836 |         unsigned ret = read_seqcount_begin(&sl->seqcount);
         |                        ^~~~~~~~~~~~~~~~~~~
   In file included from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/sched.h: At top level:
>> include/linux/sched.h:1227:41: error: field 'futex_exit_mutex' has incomplete type
    1227 |         struct mutex                    futex_exit_mutex;
         |                                         ^~~~~~~~~~~~~~~~
>> include/linux/sched.h:1232:41: error: field 'perf_event_mutex' has incomplete type
    1232 |         struct mutex                    perf_event_mutex;
         |                                         ^~~~~~~~~~~~~~~~
>> include/linux/sched.h:1512:41: error: field 'thread' has incomplete type
    1512 |         struct thread_struct            thread;
         |                                         ^~~~~~
   In file included from include/vdso/processor.h:10,
                    from arch/arm64/include/asm/processor.h:36,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/vdso/processor.h:10:20: warning: conflicting types for 'cpu_relax'; have 'void(void)'
      10 | static inline void cpu_relax(void)
         |                    ^~~~~~~~~
>> arch/arm64/include/asm/vdso/processor.h:10:20: error: static declaration of 'cpu_relax' follows non-static declaration
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h:330:17: note: previous implicit declaration of 'cpu_relax' with type 'void(void)'
     330 |                 cpu_relax();                                            \
         |                 ^~~~~~~~~
   include/linux/seqlock.h:344:25: note: in expansion of macro '__read_seqcount_begin'
     344 |         unsigned _seq = __read_seqcount_begin(s);                       \
         |                         ^~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:359:9: note: in expansion of macro 'raw_read_seqcount_begin'
     359 |         raw_read_seqcount_begin(s);                                     \
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/seqlock.h:836:24: note: in expansion of macro 'read_seqcount_begin'
     836 |         unsigned ret = read_seqcount_begin(&sl->seqcount);
         |                        ^~~~~~~~~~~~~~~~~~~
   In file included from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/processor.h:70: warning: "TASK_SIZE_OF" redefined
      70 | #define TASK_SIZE_OF(tsk)       (test_tsk_thread_flag(tsk, TIF_32BIT) ? \
         | 
   In file included from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/sched.h:2248: note: this is the location of the previous definition
    2248 | #define TASK_SIZE_OF(tsk)       TASK_SIZE
         | 
   In file included from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> include/linux/mutex.h:218:13: warning: conflicting types for 'mutex_unlock'; have 'void(struct mutex *)'
     218 | extern void mutex_unlock(struct mutex *lock);
         |             ^~~~~~~~~~~~
   In file included from include/linux/hrtimer.h:20,
                    from include/linux/sched.h:19,
                    from include/linux/sched/task_stack.h:9,
                    from arch/arm64/include/asm/processor.h:31,
                    from include/linux/mutex.h:19,
                    from include/linux/kernfs.h:11,
                    from include/linux/sysfs.h:16,
                    from include/linux/kobject.h:20,
                    from include/linux/of.h:17,
                    from include/linux/irqdomain.h:35,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
   include/linux/seqlock.h:277:76: note: previous implicit declaration of 'mutex_unlock' with type 'void(struct mutex *)'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         |                                                                            ^~~~~
   include/linux/seqlock.h:151:33: note: in definition of macro '__SEQ_LOCK'
     151 | #define __SEQ_LOCK(expr)        expr
         |                                 ^~~~
   include/linux/seqlock.h:277:1: note: in expansion of macro 'SEQCOUNT_LOCKNAME'
     277 | SEQCOUNT_LOCKNAME(mutex,        struct mutex,    true,     s->lock,        mutex,    mutex_lock(s->lock))
         | ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
   make[2]: *** [scripts/Makefile.build:122: arch/arm64/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [Makefile:1284: prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [Makefile:226: __sub-make] Error 2
   make: Target 'prepare' not remade because of errors.


vim +/cpu_relax +10 arch/arm64/include/asm/vdso/processor.h

f511e079177a9b Vincenzo Frascino 2020-03-20   9  
f511e079177a9b Vincenzo Frascino 2020-03-20 @10  static inline void cpu_relax(void)
f511e079177a9b Vincenzo Frascino 2020-03-20  11  {
f511e079177a9b Vincenzo Frascino 2020-03-20  12  	asm volatile("yield" ::: "memory");
f511e079177a9b Vincenzo Frascino 2020-03-20  13  }
f511e079177a9b Vincenzo Frascino 2020-03-20  14  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

  parent reply	other threads:[~2022-05-13  2:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-09  6:17 [PATCH -next] arm64: add missing header dependencies Gaosheng Cui
2022-05-09  6:17 ` Gaosheng Cui
2022-05-10 10:40 ` Will Deacon
2022-05-10 10:40   ` Will Deacon
     [not found]   ` <3b692d9f-0f76-33b8-0c22-909a24377e33@huawei.com>
2022-05-11  8:30     ` Mark Rutland
2022-05-11  8:30       ` Mark Rutland
2022-05-13  2:57 ` kernel test robot [this message]
2022-05-13  2:57   ` 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=202205131035.qIYEFTpo-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=broonie@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=cuigaosheng1@huawei.com \
    --cc=daniel.kiss@arm.com \
    --cc=gongruiqi1@huawei.com \
    --cc=kbuild-all@lists.01.org \
    --cc=keescook@chromium.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=pcc@google.com \
    --cc=wangweiyang2@huawei.com \
    --cc=will@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 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.