llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [jfern:rcu/irq-exit-v2 7/7] kernel/rcu/tree.c:770:53: error: invalid operands to binary expression ('void' and 'int')
@ 2025-07-04  7:52 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-07-04  7:52 UTC (permalink / raw)
  To: Joel Fernandes; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux.git rcu/irq-exit-v2
head:   19450082dae4c12bdd2b7cee28961eb27227a8fd
commit: 19450082dae4c12bdd2b7cee28961eb27227a8fd [7/7] rcu: Wire up irq_work state machine
config: hexagon-allmodconfig (https://download.01.org/0day-ci/archive/20250704/202507041547.GoYephdf-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250704/202507041547.GoYephdf-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507041547.GoYephdf-lkp@intel.com/

All errors (new ones prefixed by >>):

         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:49:33: note: expanded from macro 'READ_ONCE'
      49 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:530:10: note: expanded from macro '__native_word'
     530 |          sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
         |                 ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:49:33: note: expanded from macro 'READ_ONCE'
      49 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:530:38: note: expanded from macro '__native_word'
     530 |          sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
         |                                             ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:49:33: note: expanded from macro 'READ_ONCE'
      49 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:48: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                                       ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:50:14: note: expanded from macro 'READ_ONCE'
      50 |         __READ_ONCE(x);                                                 \
         |                     ^
   include/asm-generic/rwonce.h:44:65: note: expanded from macro '__READ_ONCE'
      44 | #define __READ_ONCE(x)  (*(const volatile __unqual_scalar_typeof(x) *)&(x))
         |                                                                  ^
   include/linux/compiler_types.h:518:13: note: expanded from macro '__unqual_scalar_typeof'
     518 |                 _Generic((x),                                           \
         |                           ^
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:50:14: note: expanded from macro 'READ_ONCE'
      50 |         __READ_ONCE(x);                                                 \
         |                     ^
   include/asm-generic/rwonce.h:44:65: note: expanded from macro '__READ_ONCE'
      44 | #define __READ_ONCE(x)  (*(const volatile __unqual_scalar_typeof(x) *)&(x))
         |                                                                  ^
   include/linux/compiler_types.h:525:15: note: expanded from macro '__unqual_scalar_typeof'
     525 |                          default: (x)))
         |                                    ^
   kernel/rcu/tree.c:770:28: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                                ~  ^
   include/asm-generic/rwonce.h:50:14: note: expanded from macro 'READ_ONCE'
      50 |         __READ_ONCE(x);                                                 \
         |                     ^
   include/asm-generic/rwonce.h:44:72: note: expanded from macro '__READ_ONCE'
      44 | #define __READ_ONCE(x)  (*(const volatile __unqual_scalar_typeof(x) *)&(x))
         |                                                                         ^
>> kernel/rcu/tree.c:770:53: error: invalid operands to binary expression ('void' and 'int')
     770 |         if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
         |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~
   kernel/rcu/tree.c:771:17: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     771 |                 WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
         |                            ~  ^
   include/asm-generic/rwonce.h:60:33: note: expanded from macro 'WRITE_ONCE'
      60 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:529:10: note: expanded from macro '__native_word'
     529 |         (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
         |                 ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:771:17: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     771 |                 WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
         |                            ~  ^
   include/asm-generic/rwonce.h:60:33: note: expanded from macro 'WRITE_ONCE'
      60 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:529:39: note: expanded from macro '__native_word'
     529 |         (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
         |                                              ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:771:17: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     771 |                 WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
         |                            ~  ^
   include/asm-generic/rwonce.h:60:33: note: expanded from macro 'WRITE_ONCE'
      60 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:530:10: note: expanded from macro '__native_word'
     530 |          sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
         |                 ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:771:17: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     771 |                 WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
         |                            ~  ^
   include/asm-generic/rwonce.h:60:33: note: expanded from macro 'WRITE_ONCE'
      60 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:35: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                          ^
   include/linux/compiler_types.h:530:38: note: expanded from macro '__native_word'
     530 |          sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
         |                                             ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)
         |                              ^~~~~~~~~
   include/linux/compiler_types.h:548:9: note: expanded from macro '__compiletime_assert'
     548 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   kernel/rcu/tree.c:771:17: error: no member named 'rcu_defer_qs_iw_pending' in 'struct task_struct'
     771 |                 WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
         |                            ~  ^
   include/asm-generic/rwonce.h:60:33: note: expanded from macro 'WRITE_ONCE'
      60 |         compiletime_assert_rwonce_type(x);                              \
         |                                        ^
   include/asm-generic/rwonce.h:36:48: note: expanded from macro 'compiletime_assert_rwonce_type'
      36 |         compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long),  \
         |                                                       ^
   include/linux/compiler_types.h:568:22: note: expanded from macro 'compiletime_assert'
     568 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                             ^~~~~~~~~
   include/linux/compiler_types.h:556:23: note: expanded from macro '_compiletime_assert'
     556 |         __compiletime_assert(condition, msg, prefix, suffix)


vim +770 kernel/rcu/tree.c

   764	
   765	/**
   766	 * rcu_set_blocked - Set blocked flag in task's rcu_special union
   767	 */
   768	void rcu_set_blocked(struct task_struct *t, bool value)
   769	{
 > 770		if (value && READ_ONCE(t->rcu_defer_qs_iw_pending) == DEFER_QS_IDLE)
   771			WRITE_ONCE(t->rcu_defer_qs_iw_pending, DEFER_QS_REQUIRED);
   772	
   773		WRITE_ONCE(t->rcu_read_unlock_special.b.blocked, value);
   774	}
   775	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-07-04  7:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-04  7:52 [jfern:rcu/irq-exit-v2 7/7] kernel/rcu/tree.c:770:53: error: invalid operands to binary expression ('void' and 'int') kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).