From: kernel test robot <lkp@intel.com>
To: Eduard Zingerman <eddyz87@gmail.com>,
bpf@vger.kernel.org, ast@kernel.org, andrii@kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
daniel@iogearbox.net, martin.lau@linux.dev, kernel-team@fb.com,
yonghong.song@linux.dev, eddyz87@gmail.com
Subject: Re: [PATCH bpf-next 3/3] bpf: rename bpf_reg_state->off to bpf_reg_state->delta
Date: Thu, 12 Feb 2026 16:15:19 +0800 [thread overview]
Message-ID: <202602121620.Ygb7WrDQ-lkp@intel.com> (raw)
In-Reply-To: <20260211-ptrs-off-migration-v1-3-996c2a37b063@gmail.com>
Hi Eduard,
kernel test robot noticed the following build errors:
[auto build test ERROR on 4475cdac12c46fc26ee815de1b43cfe9f8375140]
url: https://github.com/intel-lab-lkp/linux/commits/Eduard-Zingerman/bpf-split-check_reg_sane_offset-in-two-parts/20260212-063425
base: 4475cdac12c46fc26ee815de1b43cfe9f8375140
patch link: https://lore.kernel.org/r/20260211-ptrs-off-migration-v1-3-996c2a37b063%40gmail.com
patch subject: [PATCH bpf-next 3/3] bpf: rename bpf_reg_state->off to bpf_reg_state->delta
config: x86_64-rhel-9.4-rust (https://download.01.org/0day-ci/archive/20260212/202602121620.Ygb7WrDQ-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260212/202602121620.Ygb7WrDQ-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/202602121620.Ygb7WrDQ-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/net/ethernet/netronome/nfp/bpf/verifier.c:101:14: error: no member named 'off' in 'struct bpf_reg_state'
101 | off = reg3->off + reg3->var_off.value;
| ~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/verifier.c:140:34: error: no member named 'off' in 'struct bpf_reg_state'
140 | off = reg->var_off.value + reg->off;
| ~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/verifier.c:150:54: error: no member named 'off' in 'struct bpf_reg_state'
150 | old_off = old_arg->reg.var_off.value + old_arg->reg.off;
| ~~~~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/verifier.c:361:22: error: no member named 'off' in 'struct bpf_reg_state'
361 | old_off = meta->ptr.off + meta->ptr.var_off.value;
| ~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/verifier.c:362:17: error: no member named 'off' in 'struct bpf_reg_state'
362 | new_off = reg->off + reg->var_off.value;
| ~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/verifier.c:431:51: error: no member named 'off' in 'struct bpf_reg_state'
431 | off = reg->var_off.value + meta->insn.off + reg->off;
| ~~~ ^
6 errors generated.
--
>> drivers/net/ethernet/netronome/nfp/bpf/jit.c:1734:58: error: no member named 'off' in 'struct bpf_reg_state'
1734 | lm_off += meta->arg2.reg.var_off.value + meta->arg2.reg.off;
| ~~~~~~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:2878:20: error: no member named 'off' in 'struct bpf_reg_state'
2878 | meta->ptr.off + meta->ptr.var_off.value);
| ~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:2989:20: error: no member named 'off' in 'struct bpf_reg_state'
2989 | meta->ptr.off + meta->ptr.var_off.value);
| ~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:4156:59: error: no member named 'off' in 'struct bpf_reg_state'
4156 | head_ld_off = head_ld_meta->insn.off + head_ld_meta->ptr.off;
| ~~~~~~~~~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:4157:59: error: no member named 'off' in 'struct bpf_reg_state'
4157 | head_st_off = head_st_meta->insn.off + head_st_meta->ptr.off;
| ~~~~~~~~~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:4158:39: error: no member named 'off' in 'struct bpf_reg_state'
4158 | ld_off = ld->off + head_ld_meta->ptr.off;
| ~~~~~~~~~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:4329:17: error: no member named 'off' in 'struct bpf_reg_state'
4329 | meta->ptr.off == range_ptr_off) {
| ~~~~~~~~~ ^
drivers/net/ethernet/netronome/nfp/bpf/jit.c:4364:35: error: no member named 'off' in 'struct bpf_reg_state'
4364 | range_ptr_off = range_node->ptr.off;
| ~~~~~~~~~~~~~~~ ^
8 errors generated.
vim +101 drivers/net/ethernet/netronome/nfp/bpf/verifier.c
8231f8444110c3 Jakub Kicinski 2017-12-14 82
527db74b71ee5a Jakub Kicinski 2018-10-16 83 static bool nfp_bpf_map_update_value_ok(struct bpf_verifier_env *env)
527db74b71ee5a Jakub Kicinski 2018-10-16 84 {
527db74b71ee5a Jakub Kicinski 2018-10-16 85 const struct bpf_reg_state *reg1 = cur_regs(env) + BPF_REG_1;
527db74b71ee5a Jakub Kicinski 2018-10-16 86 const struct bpf_reg_state *reg3 = cur_regs(env) + BPF_REG_3;
527db74b71ee5a Jakub Kicinski 2018-10-16 87 struct bpf_offloaded_map *offmap;
527db74b71ee5a Jakub Kicinski 2018-10-16 88 struct bpf_func_state *state;
527db74b71ee5a Jakub Kicinski 2018-10-16 89 struct nfp_bpf_map *nfp_map;
527db74b71ee5a Jakub Kicinski 2018-10-16 90 int off, i;
527db74b71ee5a Jakub Kicinski 2018-10-16 91
527db74b71ee5a Jakub Kicinski 2018-10-16 92 state = env->cur_state->frame[reg3->frameno];
527db74b71ee5a Jakub Kicinski 2018-10-16 93
527db74b71ee5a Jakub Kicinski 2018-10-16 94 /* We need to record each time update happens with non-zero words,
527db74b71ee5a Jakub Kicinski 2018-10-16 95 * in case such word is used in atomic operations.
527db74b71ee5a Jakub Kicinski 2018-10-16 96 * Implicitly depend on nfp_bpf_stack_arg_ok(reg3) being run before.
527db74b71ee5a Jakub Kicinski 2018-10-16 97 */
527db74b71ee5a Jakub Kicinski 2018-10-16 98
527db74b71ee5a Jakub Kicinski 2018-10-16 99 offmap = map_to_offmap(reg1->map_ptr);
527db74b71ee5a Jakub Kicinski 2018-10-16 100 nfp_map = offmap->dev_priv;
527db74b71ee5a Jakub Kicinski 2018-10-16 @101 off = reg3->off + reg3->var_off.value;
527db74b71ee5a Jakub Kicinski 2018-10-16 102
527db74b71ee5a Jakub Kicinski 2018-10-16 103 for (i = 0; i < offmap->map.value_size; i++) {
527db74b71ee5a Jakub Kicinski 2018-10-16 104 struct bpf_stack_state *stack_entry;
527db74b71ee5a Jakub Kicinski 2018-10-16 105 unsigned int soff;
527db74b71ee5a Jakub Kicinski 2018-10-16 106
527db74b71ee5a Jakub Kicinski 2018-10-16 107 soff = -(off + i) - 1;
527db74b71ee5a Jakub Kicinski 2018-10-16 108 stack_entry = &state->stack[soff / BPF_REG_SIZE];
527db74b71ee5a Jakub Kicinski 2018-10-16 109 if (stack_entry->slot_type[soff % BPF_REG_SIZE] == STACK_ZERO)
527db74b71ee5a Jakub Kicinski 2018-10-16 110 continue;
527db74b71ee5a Jakub Kicinski 2018-10-16 111
527db74b71ee5a Jakub Kicinski 2018-10-16 112 if (nfp_map->use_map[i / 4].type == NFP_MAP_USE_ATOMIC_CNT) {
527db74b71ee5a Jakub Kicinski 2018-10-16 113 pr_vlog(env, "value at offset %d/%d may be non-zero, bpf_map_update_elem() is required to initialize atomic counters to zero to avoid offload endian issues\n",
527db74b71ee5a Jakub Kicinski 2018-10-16 114 i, soff);
527db74b71ee5a Jakub Kicinski 2018-10-16 115 return false;
527db74b71ee5a Jakub Kicinski 2018-10-16 116 }
527db74b71ee5a Jakub Kicinski 2018-10-16 117 nfp_map->use_map[i / 4].non_zero_update = 1;
527db74b71ee5a Jakub Kicinski 2018-10-16 118 }
527db74b71ee5a Jakub Kicinski 2018-10-16 119
527db74b71ee5a Jakub Kicinski 2018-10-16 120 return true;
527db74b71ee5a Jakub Kicinski 2018-10-16 121 }
527db74b71ee5a Jakub Kicinski 2018-10-16 122
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2026-02-12 8:16 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-11 22:31 [PATCH bpf-next 0/3] bpf: consolidate pointer offset tracking in var_off Eduard Zingerman
2026-02-11 22:31 ` [PATCH bpf-next 1/3] bpf: split check_reg_sane_offset() in two parts Eduard Zingerman
2026-02-11 22:31 ` [PATCH bpf-next 2/3] bpf: use reg->var_off instead of reg->off for pointers Eduard Zingerman
2026-02-12 2:23 ` Alexei Starovoitov
2026-02-12 5:06 ` Eduard Zingerman
2026-02-11 22:31 ` [PATCH bpf-next 3/3] bpf: rename bpf_reg_state->off to bpf_reg_state->delta Eduard Zingerman
2026-02-11 23:08 ` bot+bpf-ci
2026-02-11 23:14 ` Eduard Zingerman
2026-02-12 3:06 ` kernel test robot
2026-02-12 8:15 ` kernel test robot
2026-02-12 8:15 ` kernel test robot [this message]
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=202602121620.Ygb7WrDQ-lkp@intel.com \
--to=lkp@intel.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=kernel-team@fb.com \
--cc=llvm@lists.linux.dev \
--cc=martin.lau@linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=yonghong.song@linux.dev \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox