Hi Kunwu, kernel test robot noticed the following build errors:
[auto build test ERROR on rcu/rcu/dev] [also build test ERROR on linus/master v7.3-rc2 next-20260909] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Kunwu-Chan/srcutree-Skip-torture-to-big-transition-for-atomic-SRCU/20260910-121427 base: https://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux.git rcu/dev patch link: https://lore.kernel.org/r/20260910041427.3579817-1-kunwu.chan%40gmail.com patch subject: [PATCH] srcutree: Skip torture to-big transition for atomic SRCU config: s390-allnoconfig (https://download.01.org/0day-ci/archive/20260910/[email protected]/config) compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project d3db069999553568848400c84cbf815c03f5470f) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260910/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): >> kernel/rcu/srcutree.c:2080:61: error: use of undeclared identifier >> 'SRCU_READ_FLAVOR_ATOMIC' 2080 | if (SRCU_SIZING_IS_TORTURE() && ssp->srcu_reader_flavor != SRCU_READ_FLAVOR_ATOMIC) | ^~~~~~~~~~~~~~~~~~~~~~~ 1 error generated. vim +/SRCU_READ_FLAVOR_ATOMIC +2080 kernel/rcu/srcutree.c 2031 2032 void srcu_torture_stats_print(struct srcu_struct *ssp, char *tt, char *tf) 2033 { 2034 int cpu; 2035 int idx; 2036 unsigned long s0 = 0, s1 = 0; 2037 int ss_state = READ_ONCE(ssp->srcu_sup->srcu_size_state); 2038 int ss_state_idx = ss_state; 2039 2040 idx = ssp->srcu_ctrp - &ssp->sda->srcu_ctrs[0]; 2041 if (ss_state < 0 || ss_state >= ARRAY_SIZE(srcu_size_state_name)) 2042 ss_state_idx = ARRAY_SIZE(srcu_size_state_name) - 1; 2043 pr_alert("%s%s Tree SRCU g%ld state %d (%s)", 2044 tt, tf, rcu_seq_current(&ssp->srcu_sup->srcu_gp_seq), ss_state, 2045 srcu_size_state_name[ss_state_idx]); 2046 if (!ssp->sda) { 2047 // Called after cleanup_srcu_struct(), perhaps. 2048 pr_cont(" No per-CPU srcu_data structures (->sda == NULL).\n"); 2049 } else { 2050 pr_cont(" per-CPU(idx=%d):", idx); 2051 for_each_possible_cpu(cpu) { 2052 unsigned long l0, l1; 2053 unsigned long u0, u1; 2054 long c0, c1; 2055 struct srcu_data *sdp; 2056 2057 sdp = per_cpu_ptr(ssp->sda, cpu); 2058 u0 = data_race(atomic_long_read(&sdp->srcu_ctrs[!idx].srcu_unlocks)); 2059 u1 = data_race(atomic_long_read(&sdp->srcu_ctrs[idx].srcu_unlocks)); 2060 2061 /* 2062 * Make sure that a lock is always counted if the corresponding 2063 * unlock is counted. 2064 */ 2065 smp_rmb(); 2066 2067 l0 = data_race(atomic_long_read(&sdp->srcu_ctrs[!idx].srcu_locks)); 2068 l1 = data_race(atomic_long_read(&sdp->srcu_ctrs[idx].srcu_locks)); 2069 2070 c0 = l0 - u0; 2071 c1 = l1 - u1; 2072 pr_cont(" %d(%ld,%ld %c)", 2073 cpu, c0, c1, 2074 "C."[rcu_segcblist_empty(&sdp->srcu_cblist)]); 2075 s0 += c0; 2076 s1 += c1; 2077 } 2078 pr_cont(" T(%ld,%ld)\n", s0, s1); 2079 } > 2080 if (SRCU_SIZING_IS_TORTURE() && ssp->srcu_reader_flavor != > SRCU_READ_FLAVOR_ATOMIC) 2081 srcu_transition_to_big(ssp); 2082 } 2083 EXPORT_SYMBOL_GPL(srcu_torture_stats_print); 2084 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki

