Hi Gabriele, kernel test robot noticed the following build errors: [auto build test ERROR on ac9c34d1e45a4c25174ced4fc0cfc33ff3ed08c7] url: https://github.com/intel-lab-lkp/linux/commits/Gabriele-Monaco/sched-Add-prev_sum_exec_runtime-support-for-RT-DL-and-SCX-classes/20250226-150508 base: ac9c34d1e45a4c25174ced4fc0cfc33ff3ed08c7 patch link: https://lore.kernel.org/r/20250226070202.95062-3-gmonaco%40redhat.com patch subject: [PATCH v10 2/3] sched: Move task_mm_cid_work to mm work_struct config: arm-randconfig-001-20250227 (https://download.01.org/0day-ci/archive/20250227/202502271525.N9ZL15lR-lkp@xxxxxxxxx/config) compiler: arm-linux-gnueabi-gcc (GCC) 14.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250227/202502271525.N9ZL15lR-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202502271525.N9ZL15lR-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from include/linux/build_bug.h:5, from include/linux/bitfield.h:10, from arch/arm/include/asm/ptrace.h:13, from arch/arm/include/asm/processor.h:14, from include/linux/sched.h:13, from kernel/rseq.c:11: kernel/rseq.c: In function '__rseq_handle_notify_resume': >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~~~~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~~~~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~~~~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~~~~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:57:69: note: in expansion of macro '__trace_if_value' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~~~~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/asm-generic/rwonce.h:44:43: note: in expansion of macro '__unqual_scalar_typeof' 44 | #define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x)) | ^~~~~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:50:9: note: in expansion of macro '__READ_ONCE' 50 | __READ_ONCE(x); \ | ^~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/asm-generic/rwonce.h:50:9: note: in expansion of macro '__READ_ONCE' 50 | __READ_ONCE(x); \ | ^~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ include/linux/typecheck.h:12:25: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types] 12 | (void)(&__dummy == &__dummy2); \ | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:128:10: note: in expansion of macro 'typecheck' 128 | (typecheck(unsigned long, a) && \ | ^~~~~~~~~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ >> kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:542:9: note: in expansion of macro '_compiletime_assert' 542 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:9: note: in expansion of macro 'compiletime_assert' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~~~~~~ include/asm-generic/rwonce.h:36:28: note: in expansion of macro '__native_word' 36 | compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \ | ^~~~~~~~~~~~~ include/asm-generic/rwonce.h:49:9: note: in expansion of macro 'compiletime_assert_rwonce_type' 49 | compiletime_assert_rwonce_type(x); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/rseq.c:423:40: note: in expansion of macro 'READ_ONCE' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~ kernel/rseq.c:423:55: error: 'struct mm_struct' has no member named 'mm_cid_next_scan' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/compiler.h:57:52: note: in definition of macro '__trace_if_var' 57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) | ^~~~ kernel/rseq.c:423:9: note: in expansion of macro 'if' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~ include/linux/jiffies.h:138:33: note: in expansion of macro 'time_after' 138 | #define time_before(a,b) time_after(b,a) | ^~~~~~~~~~ kernel/rseq.c:423:23: note: in expansion of macro 'time_before' 423 | if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) | ^~~~~~~~~~~ include/linux/compiler.h:55:28: note: in expansion of macro '__trace_if_var' 55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) | ^~~~~~~~~~~~~~ include/linux/compiler_types.h:522:17: note: in expansion of macro 'if' 522 | if (!(condition)) \ | ^~ include/linux/compiler_types.h:530:9: note: in expansion of macro '__compiletime_assert' 530 | __compiletime_assert(condition, msg, prefix, suffix) vim +423 kernel/rseq.c 390 391 /* 392 * This resume handler must always be executed between any of: 393 * - preemption, 394 * - signal delivery, 395 * and return to user-space. 396 * 397 * This is how we can ensure that the entire rseq critical section 398 * will issue the commit instruction only if executed atomically with 399 * respect to other threads scheduled on the same CPU, and with respect 400 * to signal handlers. 401 */ 402 void __rseq_handle_notify_resume(struct ksignal *ksig, struct pt_regs *regs) 403 { 404 struct task_struct *t = current; 405 unsigned long now = jiffies; 406 int ret, sig; 407 408 if (unlikely(t->flags & PF_EXITING)) 409 return; 410 411 /* 412 * regs is NULL if and only if the caller is in a syscall path. Skip 413 * fixup and leave rseq_cs as is so that rseq_sycall() will detect and 414 * kill a misbehaving userspace on debug kernels. 415 */ 416 if (regs) { 417 ret = rseq_ip_fixup(regs); 418 if (unlikely(ret < 0)) 419 goto error; 420 } 421 if (unlikely(rseq_update_cpu_node_id(t))) 422 goto error; > 423 if (t->mm && !time_before(now, READ_ONCE(t->mm->mm_cid_next_scan))) 424 task_queue_mm_cid(t); 425 return; 426 427 error: 428 sig = ksig ? ksig->sig : 0; 429 force_sigsegv(sig); 430 } 431 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki